:root{--color-primary:oklch(56.5% .22 255);--color-primary-dark:oklch(45% .22 255);--color-primary-light:oklch(90% .08 255);--color-text:oklch(23% 0 0);--color-text-body:oklch(30% 0 0);--color-text-strong:oklch(30% 0 0);--color-text-muted:oklch(45% 0 0);--color-text-light:oklch(60% 0 0);--color-bg:oklch(100% 0 0);--color-bg-subtle:oklch(97% 0 0);--color-bg-muted:oklch(94% 0 0);--color-bg-hover:oklch(96% 0 0);--color-border:oklch(90% 0 0);--color-border-light:oklch(82% 0 0);--color-highlight:oklch(96.8% .21 109);--color-success:oklch(55% .17 145);--color-btn-secondary-bg:oklch(94% 0 0);--color-btn-secondary-text:oklch(45% 0 0);--color-btn-secondary-bg-hover:oklch(88% 0 0);--color-btn-secondary-text-hover:oklch(30% 0 0);--font-size-xs:.833rem;--font-size-sm:1rem;--font-size-md:1.2rem;--font-size-lg:1.44rem;--font-size-xl:1.728rem;--font-size-2xl:2.074rem;--font-size-3xl:2.488rem;--line-height-tight:1.2;--line-height-normal:1.35;--line-height-relaxed:1.5;--line-height-loose:1.5;--space-xs:.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2rem;--space-xl:3rem;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-heading:"Roboto",sans-serif;--font-body:"Roboto",sans-serif;--font-mono:"Consolas","Monaco",monospace}H1,H2,H3,H4,H5,H6,.h1,.h2,.h3,.h4,.h5,.h6{font-family:var(--font-heading);font-weight:var(--font-weight-light);color:var(--color-text);line-height:var(--line-height-tight);margin-top:var(--space-sm);margin-bottom:var(--space-xs);text-wrap:balance}H1,.h1{font-size:var(--font-size-3xl)}H2,.h2{font-size:var(--font-size-2xl)}H3,.h3{font-size:var(--font-size-xl)}H4,.h4{font-size:var(--font-size-lg)}H5,.h5{font-size:var(--font-size-md)}H6,.h6{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal)}.small,small{font-size:var(--font-size-xs)}H2.subtitle,.h2.subtitle{font-weight:var(--font-weight-light);font-size:var(--font-size-xl);margin:var(--space-xs) 0 var(--space-md) 0}H3.subtitle,.h3.subtitle{font-weight:var(--font-weight-light);font-size:var(--font-size-lg);margin:var(--space-xs) 0 var(--space-sm) 0}body{color:var(--color-text-body)}p{line-height:var(--line-height-normal);margin-bottom:var(--space-sm)}.lead{font-size:var(--font-size-md);line-height:var(--line-height-normal);text-wrap:balance}.bold,b,strong{font-weight:400;color:var(--color-text-strong)}ul,ol{color:var(--color-text-strong)}ul.sparse LI{margin-bottom:1em}ul.sparse{margin-top:0}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline;color:var(--color-primary-dark)}h1 a:hover,h2 a:hover,h3 a:hover,a.btn:hover,a.nav-link:hover,a.navbar-brand:hover{text-decoration:none}a.no-style{color:inherit;text-decoration:none}a.no-style:hover{color:inherit;text-decoration:none}a.link-reveal{color:var(--color-primary);text-decoration:none;padding:.25rem .75rem;border-radius:.25rem;transition:background-color .15s ease,color .15s ease}a.link-reveal:hover{background-color:var(--color-primary);color:white;text-decoration:none}CODE{color:var(--color-text)}pre{background-color:var(--color-bg-subtle);font-size:90%;padding:20px;word-wrap:break-word}pre code,pre.code{font-size:90%}.form-control{border-color:var(--color-border-light)}.form-control,.form-select,select.form-select option,::placeholder{font-family:var(--font-body);font-weight:var(--font-weight-light);font-size:1rem}label:not(.form-check-label){font-weight:var(--font-weight-normal)}[class*="icheck-"]>label{font-weight:var(--font-weight-light)}.btn,.form-control,.form-select{border-radius:0}.btn-subtle{background-color:transparent;border-color:var(--color-border-light);color:var(--color-text-muted);transition:background-color .3s ease-in-out,border-color .3s ease-in-out}.btn-subtle:hover{background-color:var(--color-border-light);color:var(--color-text)}.btn-primary{color:var(--color-bg);background-color:var(--color-primary);border-color:var(--color-primary)}.btn-secondary{background-color:var(--color-btn-secondary-bg);border-color:transparent;color:var(--color-btn-secondary-text)}.btn-secondary:hover{background-color:var(--color-btn-secondary-bg-hover);border-color:transparent;color:var(--color-btn-secondary-text-hover)}.btn-xl{padding:.5rem 1.75rem;font-size:1.5rem;line-height:1.75}.bt{display:inline-block;font-weight:var(--font-weight-normal);color:var(--color-bg) !important;vertical-align:middle;cursor:pointer;background-color:var(--color-primary);border:2px solid var(--color-primary);padding:.375rem .75rem;font-size:1rem;line-height:1.5;border-radius:0;margin-bottom:.75rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.bt:hover{background-color:var(--color-primary-dark);border-color:var(--color-primary-dark)}.bt-square{display:flex;flex-direction:column;text-align:center;align-items:center;justify-content:center;padding:20px 20px;height:128px;width:128px}.bt-square i{font-size:36px;margin-bottom:0}.bt-rectangle{min-width:15rem}.bt-rectangle i{margin-right:.75rem}a.bt{text-decoration:none}.button-container{display:flex;justify-content:center;flex-direction:row;flex-wrap:wrap;gap:.75rem}.button-container.horizontal{align-items:center;flex-direction:row}.button-container.vertical{flex-direction:column;align-items:left}.button-container ul{list-style-type:none;margin:0;padding:0;overflow:hidden}.button-container.horizontal li{float:left;margin:15px}.button-container.vertical li{float:none;margin:15px auto}.result-list{max-width:800px;margin:0 auto}.result-item{display:flex;gap:2rem;align-items:flex-start;padding:1.5rem 0 1.5rem .5rem;border-left:3px solid transparent;transition:border-color .2s;text-decoration:none;color:inherit}.result-item:hover{border-left-color:var(--color-primary);text-decoration:none;color:inherit}.result-badge{width:80px;flex-shrink:0;text-align:right;padding-top:2px}.result-badge a,.result-badge span{display:inline-block;padding:3px 8px;font-size:.85rem;background:var(--color-btn-secondary-bg,#f0f0f0);color:var(--color-text,#333);text-decoration:none;position:relative;z-index:1}.result-badge a:hover{background:var(--color-btn-secondary-bg-hover,#e0e0e0)}.result-image{width:120px;height:120px;flex-shrink:0;background-size:cover;background-position:center;background-color:#f5f5f5}.result-content{flex:1;min-width:0;text-align:left}.result-date{display:block;font-size:13px;color:#999;margin-bottom:2px}.result-content h4{margin:0;color:var(--color-primary,#1a0dab)}.result-content h4 a{color:inherit;text-decoration:none}.result-item-search:hover h4 a{text-decoration:none}.result-content strong{display:block;margin:.25rem 0}.result-content p{margin:0}.result-item-search{cursor:pointer;position:relative}.result-item-search h4 a::after{content:"";position:absolute;inset:0}.result-list mark{background-color:var(--color-highlight,#ffeb3b);padding:0 2px;border-radius:2px}.result-content p.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.blog{max-width:700px;margin:0 auto;padding:3rem 1.5rem 2rem;text-align:center}.blog h1{margin-bottom:.5rem}.blog .lead{color:var(--color-text-muted,#666);font-size:1.125rem}.blog-posts{padding:0 1.5rem 4rem}.article{max-width:960px;margin:0 auto}.article>p:first-child{font-size:var(--font-size-md);color:var(--color-text)}.article h2{margin-top:2.5rem;margin-bottom:var(--space-sm)}.article h3{margin-top:1.5rem;margin-bottom:var(--space-xs)}.article p{line-height:var(--line-height-relaxed)}.article ul,.article ol{margin-bottom:var(--space-sm);padding-left:var(--space-lg)}.article li{margin-bottom:.25rem;line-height:var(--line-height-normal)}.article .table{margin:var(--space-md) 0 var(--space-lg) 0}.article .table th{font-weight:var(--font-weight-normal)}.article .table td{font-weight:var(--font-weight-light)}@media print{.article{max-width:100%}}.blog-list{position:relative}.blog-list A{color:var(--color-text);text-decoration:none}.glossary .title{font-weight:400}.glossary .title a:hover{color:var(--color-text-muted)}.glossary DT{font-weight:400}.glossary .row{padding:.5rem 0}.glossary .row:hover{background-color:var(--color-bg-hover)}.faq LI{margin-top:1rem;border:0}.faq LI H3{font-size:1.5rem}.faq .title{font-weight:400;font-size:1.1rem}.faq .title a:hover{color:var(--color-text-muted)}.faq DT{font-weight:400}.faq .row{padding:.5rem 0;margin-bottom:1rem}.faq .row:hover{background-color:var(--color-bg-hover)}.faq .bi{color:var(--color-text-light);font-size:26px;margin-right:-10px}.page-list{margin:3rem auto}.page-list-images .row{display:flex;justify-content:center;margin:2rem 0}.page-list-images .row [class^="col-"]{padding:1rem}.page-list-images .title{font-size:1.5rem;font-weight:400}.page-list-images .title a:hover{color:var(--color-text-muted)}.page-list-images .subtitle{font-size:1.25rem;font-weight:400;margin-top:-0.25rem}.page-list-images .release{font-size:.75rem;font-weight:300;color:var(--color-text-muted);margin-top:-0.25rem}.page-list-images .blurb{font-size:1rem;font-weight:300}.page-list-images .pic{width:100%;aspect-ratio:16/9;background-size:cover;background-position:center;background-repeat:no-repeat;margin-bottom:1rem}.page-list-logos .row{display:flex;justify-content:center;margin:2rem 0;align-items:flex-start}.page-list-logos .logo{width:100%;max-width:180px;max-height:100px;object-fit:contain;object-position:top left}@media(max-width:767.98px){.page-list-logos .logo{max-width:140px;max-height:70px;margin-bottom:1rem}}.page-list-logos .title{font-size:1.5rem;font-weight:400;margin:0 0 .25rem 0}.page-list-logos .title a:hover{color:var(--color-text-muted)}.page-list-logos .blurb{font-size:1rem;font-weight:300;margin:0;color:var(--color-text-muted)}.page-list.simple .title{font-weight:400;font-size:1.1rem}.page-list.simple .title a:hover{color:var(--color-text-muted)}.page-list.simple DT{font-weight:400}.page-list.simple .row{padding:.5rem 0;margin-bottom:1rem}.page-list.simple .row:hover{background-color:var(--color-bg-hover)}.page-list.simple .bi{color:var(--color-text-light);font-size:26px;margin-right:-10px}.list-group-flush{border-top:1px solid var(--color-border)}.list-group-flush.blank{border-top:0}.table-definition{border-collapse:separate;border-spacing:0 10px;width:100%;border:0}.table-definition td,.table-definition th{vertical-align:top}.platform-table{width:100%;border-collapse:collapse;margin:var(--space-md) 0}.platform-table th,.platform-table td{padding:var(--space-sm) var(--space-md);text-align:left;border-bottom:1px solid var(--color-border)}.platform-table th{font-weight:var(--font-weight-medium);color:var(--color-text);background:var(--color-bg-subtle)}.platform-table td{color:var(--color-text-muted)}.platform-table td strong{color:var(--color-text)}figure{position:relative;float:right;width:40%;padding:5px;margin:0 0 20px 20px;overflow:hidden;border:var(--color-border) 1px solid;border-width:1px 0 0 1px;box-shadow:5px 5px 5px rgba(0,0,0,0.1);clear:both}figure figcaption{font-size:.8em;color:var(--color-text-muted);margin:0;padding:0 5px}figure.screen{padding:0 40px}.diagram IMG{width:100%;height:auto}.icon{margin:0;text-align:center;vertical-align:middle;width:100%;height:200px;background-size:cover;background-position:center;background-repeat:no-repeat}.icon-16{height:16px;width:16px;margin:0 4px}.icon-32{height:32px;width:32px;margin:0 4px}I.wg-mono{display:inline-block;color:var(--color-bg);width:16px;height:16px;background-image:url("/cdn/images/wg-mono.svg");background-size:contain;background-repeat:no-repeat;transform:translateY(-2px);vertical-align:middle}I.raspi-mono{display:inline-block;color:var(--color-bg);width:20px;height:20px;background-image:url("/cdn/images/raspi-mono.svg");background-size:contain;background-repeat:no-repeat;transform:translateY(-2px);vertical-align:middle}.bluefriday{display:inline-block;background-color:var(--color-primary);color:var(--color-bg);font-family:var(--font-body);font-weight:var(--font-weight-light);padding:3px 10px;font-size:1.1rem}.bluefriday-inverse{background-color:var(--color-bg);color:var(--color-primary)}.carousel{width:100%;height:50vh;min-height:225px;max-height:450px;background-color:var(--color-border-light)}.carousel-inner{height:100%}.carousel-item{width:100%;height:100%;overflow:hidden}.carousel-item img{height:auto;width:100%;top:50%;position:relative;transform:translateY(-50%)}.dropdown-item{font-weight:300}.blockquote{margin:var(--space-md) 0;padding:var(--space-sm);border-left:5px solid var(--color-primary);background-color:var(--color-bg-muted);font-style:italic}.blockquote blockquote{font-size:var(--font-size-md)}.blockquote .blockquote-footer{font-size:var(--font-size-sm);margin:0 0 0 auto;text-align:right}.quote{font-size:1.1em;font-style:italic;margin-left:1.5em;margin-right:1.5em}.inset{float:right;margin:0 0 20px 40px}.callout-inset{background-color:var(--color-primary-light);padding:20px;margin:20px 0;text-align:center}.aside{float:right;margin:0 0 20px 20px;padding:0}.aside.bg{padding:20px;width:33%;background-color:var(--color-bg-muted)}.aside img{max-height:25rem}.clear{clear:both}.dymo{color:var(--color-text);background:var(--color-highlight);margin:0;padding:10px 20px;font-size:1.4rem;font-weight:400;line-height:2.5rem}p.dymo{display:block;width:fit-content;padding:.375rem 3rem;margin:var(--space-md) calc(-50vw + 50%) 0 auto;padding-right:calc(50vw - 50%)}.bg-light{background-color:var(--color-bg-muted) !important}.card{--bs-card-border-radius:0}a.card-link{text-decoration:none;border:1px solid var(--color-border);padding:24px !important}a.card-link:hover{border:2px solid var(--color-primary);padding:23px !important}a.card-link h3,a.card-link h4{color:var(--color-text)}.mw-25{max-width:25% !important}.mw-50{max-width:50% !important}.mw-75{max-width:75% !important}.mw-80{max-width:80% !important}.mw-90{max-width:90% !important}.mt-6{margin-top:3.5rem !important}.mt-7{margin-top:4rem !important}.mt-8{margin-top:5rem !important}.mb-6{margin-bottom:3.5rem !important}.mb-7{margin-bottom:4rem !important}.mb-8{margin-bottom:5rem !important}.my-6{margin-top:3.5rem !important;margin-bottom:3.5rem !important}.my-7{margin-top:4rem !important;margin-bottom:4rem !important}.my-8{margin-top:5rem !important;margin-bottom:5rem !important}.me-6{margin-right:4em !important}.ms-6{margin-left:4em !important}.me-8{margin-right:6em !important}.ms-8{margin-left:6em !important}.me-10{margin-right:8em !important}.ms-10{margin-left:8em !important}.big-panel{position:relative;border-radius:0;height:320px;background-color:var(--color-bg);background-position:center center;background-size:cover;background-repeat:no-repeat}.big-panel.covered{margin-bottom:0}.big-panel .tag{position:absolute;left:0;bottom:40px;color:var(--color-text);background:var(--color-highlight);margin:0;padding:8px 20px;font-size:1.4rem;font-weight:var(--font-weight-normal);line-height:2.5rem}.big-panel P,.big-panel H2,.big-panel .h2{color:var(--color-text);margin:0;font-weight:var(--font-weight-normal)}section{padding:4rem 0;margin-left:calc(-50vw + 50%);margin-right:calc(-50vw + 50%);padding-left:calc(50vw - 50%);padding-right:calc(50vw - 50%);background-color:var(--color-bg)}section h1,section h2,section h3{margin-top:0}section.alt{background-color:var(--color-bg-subtle)}section.banner{padding-top:0;padding-bottom:0}section.first{padding-top:0}section.alternate{background-color:var(--color-bg-subtle)}DIV.sparse{padding-top:2em;padding-bottom:2em}.content{margin-top:20px;margin-bottom:20px}.content .sparse LI,.content .sparse P{margin-bottom:1rem}.figure LI,.figure P{margin-bottom:0}.anchor{padding-top:110px;margin-top:-110px}.secondary .tag{background:var(--color-highlight);padding:8px 20px 8px 20px}.secondary .tag H3,.secondary .tag .h3{color:var(--color-text);margin:0;font-size:1.5rem;font-weight:var(--font-weight-normal)}.cloud-bg{background-image:url("/images/cloud-bg.svg");background-size:85% 85%;background-position:center;background-repeat:no-repeat}section.hero{text-align:center;padding:4rem 0}section.hero h1{font-size:3rem;font-weight:var(--font-weight-normal);margin-bottom:var(--space-sm)}section.hero .tagline{font-size:var(--font-size-xl);color:var(--color-text-muted);margin-bottom:var(--space-sm)}section.hero>p:not(.tagline):not(.denials){max-width:800px;margin:0 auto var(--space-lg);color:var(--color-text);font-size:var(--font-size-md);text-wrap:balance}section.hero .denials{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);letter-spacing:.02em;margin:0 auto var(--space-lg)}section.hero .video-container{max-width:800px;margin:0 auto var(--space-md)}section.hero .video-container iframe{width:100%;aspect-ratio:16 / 9;border:0;box-shadow:0 4px 20px rgba(0,0,0,0.15)}section.hero .cta{margin-top:var(--space-lg)}section.hero .cta a{margin-bottom:.75rem}section.hero .cta .btn{font-size:var(--font-size-md);padding:.75rem 2rem}section.hero.pricing-hero{padding:2.5rem 0 1.5rem}section.hero.pricing-hero .tagline{margin-bottom:0}section.hero+.article{margin-top:-2rem}section.value>h2,section.trust>h2,section.price>h2{margin-bottom:var(--space-md)}.pillars{display:flex;gap:var(--space-md);align-items:stretch}.pillars>div{flex:1;display:flex;flex-direction:column;padding:var(--space-md);text-align:center}.pillars>div p{flex-grow:1}.pillars .bi{font-size:6rem;color:var(--color-primary);margin-bottom:var(--space-sm);display:block}.pillars>div:nth-child(1) .bi{color:oklch(56.5% .15 145)}.pillars>div:nth-child(3) .bi{color:oklch(56.5% .18 70)}.pillars h3{margin-top:0;font-size:var(--font-size-lg)}.pillars p{margin-bottom:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.pillars.pillars-4{flex-wrap:wrap}.pillars.pillars-4>div{flex:1 1 calc(25% - var(--space-md));min-width:200px}.steps{display:flex;gap:var(--space-lg);margin:var(--space-lg) 0}.step{flex:1;text-align:center}.step-num{display:inline-block;width:5rem;height:5rem;line-height:5rem;font-size:var(--font-size-2xl);border-radius:50%;background:var(--color-primary);color:var(--color-bg);font-weight:bold;margin-bottom:var(--space-xs)}.step .bi{font-size:3rem;color:var(--color-primary);display:block;margin-bottom:var(--space-xs)}.step h3{margin:var(--space-xs) 0;font-size:var(--font-size-md)}.step p{margin:0;font-size:var(--font-size-sm);color:var(--color-text-muted)}.steps-inline{display:grid;grid-template-columns:auto auto auto;gap:var(--space-sm) var(--space-md);margin:var(--space-lg) auto;width:fit-content;align-items:center}.steps-inline .step{display:contents}.steps-inline .step-num{width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-md);margin-bottom:0}.steps-inline .step-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-light);color:var(--color-text);white-space:nowrap;text-align:left}.steps-inline .step-desc{font-size:var(--font-size-md);color:var(--color-text-muted);text-align:left}.steps-123 H4{margin:16px 0 0 0}.bi.step-icon{font-size:5rem;color:var(--color-primary);text-align:right;margin-right:20px}.feature-cards{display:flex;flex-direction:column;gap:var(--space-md);max-width:700px;margin:0 auto}.feature-card{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md);border-left:3px solid var(--color-border);transition:border-color .2s ease}.feature-card:hover{border-left-color:var(--color-primary)}.feature-card>i{font-size:2.5rem;color:var(--color-primary);flex-shrink:0;width:3rem;text-align:center}.feature-card .feature-content h3{margin:0 0 var(--space-xs) 0;font-size:var(--font-size-md)}.feature-card .feature-content p{margin:0;color:var(--color-text-muted)}.tech-details{max-width:800px;margin:var(--space-lg) auto 0}.tech-details h3{margin:var(--space-lg) 0 var(--space-sm) 0;font-size:var(--font-size-lg)}.tech-details h3:first-child{margin-top:0}.tech-details p{margin:0 0 var(--space-sm) 0;color:var(--color-text-muted);line-height:var(--line-height-relaxed)}.tech-details ol,.tech-details ul{margin:var(--space-sm) 0;padding-left:var(--space-lg);color:var(--color-text-muted)}.tech-details li{margin-bottom:var(--space-xs);line-height:var(--line-height-normal)}.tech-details code{background:var(--color-bg-muted);padding:.1em .4em;border-radius:3px;font-size:.9em}.check-list{list-style:none;padding:0;max-width:700px;margin:0 auto}.check-list li{position:relative;padding-left:2rem;margin-bottom:var(--space-sm);line-height:var(--line-height-normal)}.check-list li::before{content:"\F26A";font-family:"bootstrap-icons";position:absolute;left:0;color:var(--color-primary);font-size:1.2rem}.check-list li strong{color:var(--color-text)}.offset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg)}.offset-item{display:grid;grid-template-rows:auto 1fr;gap:0}.offset-icon{justify-self:start;margin-bottom:calc(-1 * var(--space-sm));margin-left:var(--space-sm);z-index:1}.offset-icon i{font-size:2.5rem;color:var(--color-primary);background:var(--color-bg);padding:var(--space-xs)}.offset-content{background:var(--color-bg-subtle);padding:var(--space-lg) var(--space-md) var(--space-md);text-align:left}.offset-content h3{margin:0 0 var(--space-xs) 0;font-size:var(--font-size-md)}.offset-content p{margin:0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.alternating-rows{display:flex;flex-direction:column;gap:var(--space-lg)}.alternating-rows>div{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-lg);align-items:center}.alternating-rows>div:nth-child(even){grid-template-columns:2fr 1fr}.alternating-rows>div:nth-child(even) .icon-col{order:2}.alternating-rows>div:nth-child(even) .content{order:1;text-align:right}.alternating-rows .icon-col{display:flex;justify-content:center;align-items:center}.alternating-rows .bi{font-size:4rem;color:var(--color-primary)}.alternating-rows .content{text-align:left}.alternating-rows h3{margin:0 0 var(--space-xs) 0;font-size:var(--font-size-lg)}.alternating-rows p{margin:0;color:var(--color-text-muted)}.comparison{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-lg)}.comparison>div{padding:var(--space-md);text-align:center}.comparison>div:first-child{background:var(--color-primary-light)}.comparison>div:last-child{background:var(--color-bg-muted)}.comparison h3{margin:0 0 var(--space-sm) 0;font-size:var(--font-size-md)}.comparison p{margin:0;color:var(--color-text-muted)}.comparison ul{margin:0;padding:0}.comparison li{display:flex;align-items:center;gap:var(--space-sm);margin-bottom:var(--space-xs);line-height:var(--line-height-normal);color:var(--color-text-muted)}.comparison li .bi{flex-shrink:0;font-size:1.25rem}.comparison li .bi.text-success{color:var(--color-success)}.comparison li .bi.text-muted{color:var(--color-text-muted)}section.price .row{display:flex;flex-wrap:wrap}section.price .row>[class*="col-"]{display:flex}section.price .card{border:0;display:flex;flex-direction:column;width:100%}section.price .card .card-body{flex-grow:1;display:flex;flex-direction:column}section.price .card .card-body>p:last-child{margin-top:auto;margin-bottom:0}section.price .card ul.compact{flex-grow:1}section.price .card.personal .icon{background-image:url('../../cdn/images/student-lab-dorm-vpn.webp');background-position:center bottom;height:200px}section.price .card.pro .icon{background-image:url('../../cdn/images/team-remote-work-mesh-vpn.webp');height:200px}section.price .card.enterprise .icon{background-image:url('../../cdn/images/service-provider-customer-network-mesh-vpn.webp');height:200px}.card .icon{position:relative}.card .icon .dymo.trial{position:absolute;bottom:1rem;right:0;font-size:1rem;padding:.5rem 1.5rem;line-height:var(--line-height-tight)}section.cta-final{text-align:center;padding:4rem 0}section.cta-final h2{margin-bottom:var(--space-md)}.cta-buttons{display:flex;justify-content:center;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}.cta-buttons a{margin-bottom:.5rem}.trust .pillar{padding:var(--space-md)}.trust-diagram{display:block;width:calc(66% + 96px);height:96px;background-color:var(--color-primary-light);background-image:url('../../cdn/images/cloud-mesh.webp');background-size:cover;background-position:center;margin:var(--space-md) auto 0 auto}.trust-icon-heading{display:flex;align-items:center;gap:var(--space-sm)}.trust-icon{height:120px;fill:var(--color-primary)}.feature-matrix{width:100%;border-collapse:separate;border-spacing:0;margin-bottom:var(--space-md)}.feature-matrix.table{--bs-table-bg:transparent;--bs-table-striped-bg:transparent;--bs-table-hover-bg:transparent;--bs-table-border-color:transparent}.feature-matrix.table>:not(caption)>*>*{background-color:transparent;box-shadow:none;border:0;padding:.75rem 1rem}.feature-matrix th,.feature-matrix td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);text-align:left;vertical-align:middle}.feature-matrix thead th{border-bottom:2px solid var(--color-border);vertical-align:top;padding-top:1.5rem;padding-bottom:1.5rem;background-color:var(--color-bg)}.feature-matrix thead th:first-child{width:33.33%;vertical-align:bottom;padding-bottom:1rem;background-color:transparent}.feature-matrix .matrix-label{font-size:var(--font-size-sm);color:var(--color-text-light);font-weight:var(--font-weight-normal)}.feature-matrix .matrix-footer td:first-child{font-size:var(--font-size-sm);color:var(--color-text-muted);padding-top:var(--space-md);vertical-align:top}.feature-matrix .plan-col{width:33.33%;min-width:160px;text-align:center}.feature-matrix .plan-col:not(.highlighted){border-left:1px solid var(--color-border);border-right:1px solid var(--color-border)}.feature-matrix thead th.plan-col:not(.highlighted){border-top:1px solid var(--color-border)}.feature-matrix .cta-row td.plan-col:not(.highlighted){border-bottom:1px solid var(--color-border)}.feature-matrix .highlighted{border-left:2px solid var(--color-primary);border-right:2px solid var(--color-primary)}.feature-matrix thead th.plan-col.highlighted{border-top:2px solid var(--color-primary)}.feature-matrix .cta-row td.highlighted{border-bottom:2px solid var(--color-primary);background-color:var(--color-bg)}.feature-matrix .plan-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text);margin-bottom:.25rem}.feature-matrix .plan-price{font-size:2.5rem;font-weight:var(--font-weight-normal);color:var(--color-text);line-height:1;margin-bottom:.25rem}.feature-matrix .plan-period{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-muted)}.feature-matrix .plan-tagline{font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);color:var(--color-text-muted)}.feature-matrix thead th.plan-col{position:relative;padding:1.5rem 1rem 2rem;text-align:center}.feature-matrix .table-section td.highlighted{position:relative}.feature-matrix .table-section .dymo.trial{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:var(--font-size-md);padding:.25rem 1.5rem;line-height:1.4;white-space:nowrap;z-index:1}.feature-matrix tbody td{color:var(--color-text-muted)}.feature-matrix tbody tr:not(.table-section):not(.cta-row) td:first-child{padding-left:3rem}.feature-matrix tbody td:not(:first-child){text-align:center;font-size:var(--font-size-md)}.feature-matrix .check::before{content:"\F26A";font-family:"bootstrap-icons";vertical-align:middle}.feature-matrix .check{font-size:var(--font-size-lg);font-weight:var(--font-weight-normal);line-height:1;color:var(--color-text-light)}.feature-matrix .check.highlighted{color:var(--color-primary)}.feature-matrix .dash{color:var(--color-text-light)}.feature-matrix .table-section td{background-color:oklch(94% 0 0);border-bottom:1px solid var(--color-border);padding-top:.625rem;padding-bottom:.625rem;font-weight:var(--font-weight-medium);color:var(--color-text)}.feature-matrix .table-section td:first-child{position:relative;padding-left:3rem}.feature-matrix .table-section td:first-child i{position:absolute;left:1.5rem;top:50%;transform:translate(-50%,-50%);color:var(--color-text-light)}.feature-matrix .table-section td.plan-col:not(.highlighted){border-left:1px solid var(--color-border);border-right:1px solid var(--color-border)}.feature-matrix .cta-row td{border-bottom:0;padding-top:1.5rem;padding-bottom:1.5rem}.feature-matrix .cta-row td:not(.highlighted){background-color:var(--color-bg)}.feature-matrix .cta-row td:first-child{font-size:var(--font-size-sm);color:var(--color-text-muted);vertical-align:middle;padding-left:2rem;background-color:transparent}.pricing-footnote{font-size:var(--font-size-xs);color:var(--color-text-light);text-align:right;margin-top:var(--space-sm)}section.billing h2{margin-bottom:var(--space-sm)}section.billing h3{margin-top:var(--space-md);margin-bottom:var(--space-sm)}.billing-formula{margin-top:var(--space-lg);text-align:center}.billing-formula h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-muted);margin-bottom:var(--space-xs)}.billing-formula pre{display:inline-block;text-align:left}section.billing pre{margin-top:0;background-color:var(--color-bg-subtle);border:0;border-radius:0;padding:1rem 1.25rem;white-space:pre-wrap;word-wrap:break-word}section.billing pre code{font-family:"SF Mono",Monaco,"Cascadia Code",monospace;font-size:var(--font-size-xs);color:var(--color-text);line-height:1.5}section.faq h2{margin-bottom:var(--space-lg)}.faq-section{margin-bottom:var(--space-lg)}.faq-section h3{font-size:var(--font-size-lg);font-weight:var(--font-weight-medium);color:var(--color-text);border-bottom:2px solid var(--color-primary);padding-bottom:var(--space-xs);margin-bottom:var(--space-md);display:inline-block}.faq-item{margin-bottom:var(--space-md);padding-left:1rem;border-left:3px solid var(--color-border);transition:border-color .2s ease}.faq-item:hover{border-left-color:var(--color-primary)}.faq-item h4{font-size:var(--font-size-md);font-weight:var(--font-weight-medium);color:var(--color-text);margin-bottom:var(--space-xs)}.faq-item p{color:var(--color-text-muted);margin-bottom:0;font-size:var(--font-size-sm);line-height:var(--line-height-relaxed)}section.tech-doc{max-width:800px;margin:0 auto;padding:var(--space-xl) var(--space-md)}section.tech-doc h2{font-size:var(--font-size-xl);margin-bottom:var(--space-md)}section.tech-doc h3{font-size:var(--font-size-lg);margin-top:var(--space-lg);margin-bottom:var(--space-sm)}section.tech-doc h3:first-of-type{margin-top:var(--space-md)}section.tech-doc p{color:var(--color-text-muted);line-height:var(--line-height-relaxed);margin-bottom:var(--space-sm)}section.tech-doc ul,section.tech-doc ol{color:var(--color-text-muted);margin-bottom:var(--space-md);padding-left:var(--space-lg)}section.tech-doc li{margin-bottom:var(--space-xs);line-height:var(--line-height-normal)}section.tech-doc code{background:var(--color-bg-muted);padding:.1em .4em;border-radius:3px;font-size:.9em}section.tech-doc .comparison{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);margin:var(--space-md) 0}section.tech-doc .comparison>div{padding:var(--space-md);background:var(--color-bg-subtle)}section.tech-doc .comparison h3{margin-top:0;margin-bottom:var(--space-sm);font-size:var(--font-size-md)}section.tech-doc .comparison ul{margin:0;padding-left:var(--space-md)}section.contact{padding-top:2rem}section.contact h1{margin-bottom:var(--space-xl)}.contact-intro{max-width:800px;margin:0 auto var(--space-lg);text-align:center}.contact-intro .lead{max-width:600px;margin:0 auto}.contact-banner{display:block;width:100%;height:200px;background-image:url('/cdn/images/toronto-skyline.webp');background-size:cover;background-position:center;margin-bottom:var(--space-lg)}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md);max-width:800px;margin:0 auto}.contact-card{display:flex;flex-direction:row;align-items:flex-start;gap:1.5rem;padding:2rem 1.5rem;margin-bottom:2rem;border-left:3px solid var(--color-border);transition:border-color .2s ease}.contact-card:hover{border-left-color:var(--color-primary)}.contact-card>i{font-size:2rem;color:var(--color-text-light);flex-shrink:0;width:2.5rem;text-align:center;padding-top:.25rem}.contact-card .contact-content h3{font-family:var(--font-heading);font-size:var(--font-size-lg);font-weight:var(--font-weight-light);color:var(--color-text);margin-top:0;margin-bottom:var(--space-xs)}.contact-card p{color:var(--color-text-muted);margin-bottom:var(--space-xs);line-height:var(--line-height-normal)}.contact-card p:last-child{margin-bottom:0}@media(max-width:768px){.blog{padding:2rem 1rem 1.5rem}.blog-posts{padding:0 1rem 3rem}.pillars{flex-direction:column}.trust-diagram{width:100%;margin-top:0}.trust .pillar{padding:var(--space-sm)}.pillars>div{padding:var(--space-sm);margin-bottom:0}.pillars>div:last-child{margin-bottom:0}.pillars .bi{font-size:4rem}.steps{flex-direction:column}.offset-grid{grid-template-columns:1fr}.alternating-rows>div{grid-template-columns:1fr;text-align:center}.alternating-rows>div:nth-child(even){grid-template-columns:1fr}.alternating-rows>div:nth-child(even) .content{text-align:center}.alternating-rows .icon-col{order:0 !important}.alternating-rows .content{order:1 !important;text-align:center}.comparison{grid-template-columns:1fr}section{padding:1.5rem 1rem}section.hero{padding:1.5rem 1rem}section.hero h1{font-size:2.5rem;margin-bottom:.5rem}section.hero .tagline{font-size:var(--font-size-md);margin-bottom:.5rem}section.hero>p:not(.tagline):not(.denials){margin-top:1rem;margin-bottom:1.5rem}section.hero .video-container{margin-bottom:1rem}section.hero .cta{margin-top:1rem}section.how{padding-bottom:2rem}.dymo{font-size:1rem;padding:8px 10px;line-height:var(--line-height-normal)}p.dymo{padding:8px 1.5rem;padding-right:calc(50vw - 50%)}section.price .row{row-gap:2rem}section.cta-final{padding:2rem 1rem}.feature-card{padding:var(--space-sm)}.feature-card>i{font-size:2rem}.check-list{padding:0 var(--space-sm)}.feature-matrix th,.feature-matrix td{padding:.5rem;font-size:var(--font-size-sm)}.feature-matrix .plan-col{min-width:100px}.feature-matrix .plan-name{font-size:var(--font-size-md)}.feature-matrix .plan-price{font-size:var(--font-size-xl)}.feature-matrix .plan-tagline{font-size:var(--font-size-xs)}.feature-matrix .cta-row .btn{padding:.375rem .75rem;font-size:var(--font-size-sm)}.faq-section h3{font-size:var(--font-size-md)}.faq-item h4{font-size:var(--font-size-sm)}section.tech-doc{padding:var(--space-lg) var(--space-sm)}section.tech-doc .comparison{grid-template-columns:1fr}.platform-table,.platform-table thead,.platform-table tbody,.platform-table tr,.platform-table th,.platform-table td{display:block}.platform-table thead{display:none}.platform-table tr{margin-bottom:var(--space-md);border:1px solid var(--color-border)}.platform-table td{border-bottom:0;padding:var(--space-xs) var(--space-sm)}.platform-table td:first-child{background:var(--color-bg-subtle);padding:var(--space-sm)}.contact-grid{grid-template-columns:1fr}}@media(max-width:576px){.result-item{flex-direction:column;gap:.5rem;padding-left:.5rem}.result-badge{width:auto;text-align:left}.result-image{width:100%;height:180px}}
