@charset "UTF-8";:root{--navy-950: #101b2a;--navy-900: #16263b;--navy-800: #1f3652;--blue-700: #234f85;--blue-600: #2f64a3;--blue-500: #5b8fc9;--blue-100: #dde9f6;--blue-50: #eef4fb;--sky: #93bae4;--teal-600: #0f6f66;--teal-100: #dcf1ee;--amber-400: #93bae4;--amber-500: #5b8fc9;--amber-600: #3f77b5;--green-600: #1f7a52;--green-100: #e3f4ec;--red-600: #b9382a;--ink: #101b2a;--ink-soft: #3e4d63;--ink-muted: #55657a;--line: #d5dde8;--line-strong: #aebccd;--bg: #eef1f6;--surface: #fff;--radius-sm: 4px;--radius: 6px;--radius-lg: 10px;--shadow-sm: 0 1px 0 rgb(16 27 42 / 6%);--shadow: 0 10px 28px -14px rgb(16 27 42 / 32%);--shadow-lg: 0 24px 50px -22px rgb(16 27 42 / 50%);--ease: cubic-bezier(.2, .7, .2, 1);--focus: #2f64a3;--font-body: "Instrument Sans", system-ui, "Segoe UI", sans-serif;--font-display: Archivo, "Instrument Sans", system-ui, sans-serif;--header-h: 72px;--tone-a: #234f85;--tone-b: #5b8fc9;--tone-soft: #dde9f6;--tone-scan: #93bae4}[data-tone=teal]{--tone-a: #1f6a9a;--tone-b: #4f9ccd;--tone-soft: #dcecf7;--tone-scan: #8cc4e6}[data-tone=violet]{--tone-a: #3a4a96;--tone-b: #7488cc;--tone-soft: #e5e9f7;--tone-scan: #a9b6ec}[data-tone=navy]{--tone-a: #16263b;--tone-b: #3f6591;--tone-soft: #e1e8f1;--tone-scan: #9fb8d6}[data-tone=coral]{--tone-a: #4a6a8f;--tone-b: #86a6c8;--tone-soft: #e8eef5;--tone-scan: #b7cbe0}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 16px)}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:800;font-stretch:86%;line-height:1.04;letter-spacing:-.015em;text-wrap:balance}p{margin:0;text-wrap:pretty}a{color:inherit}img,svg{display:block;max-width:100%}ul{margin:0;padding:0;list-style:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}::selection{background:var(--sky)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:3px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.container{width:min(100% - 40px,1200px);margin-inline:auto}.section{padding-block:clamp(56px,8vw,112px)}.section--tint{background:#e3e9ed}.section--dark{background:var(--navy-950);color:#fff}.eyebrow{margin-bottom:6px;color:var(--ink-muted);font-size:.85rem;font-weight:600}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:clamp(28px,4vw,48px)}.section-head h2{max-width:18ch;font-size:clamp(2.2rem,4.4vw,3.6rem)}.section-head p{max-width:52ch;margin-top:14px;color:var(--ink-soft);font-size:1.08rem}.section--dark .section-head p{color:#ffffffc2}.section-head--center{flex-direction:column;align-items:flex-start;text-align:left}.skeleton{display:block;border-radius:var(--radius-sm);background:linear-gradient(100deg,var(--line) 30%,color-mix(in srgb,var(--line) 40%,#fff) 50%,var(--line) 70%) 0 0/250% 100%;animation:shimmer 1.4s linear infinite}.skeleton--text{height:1em;border-radius:6px}.skeleton--pill{height:44px;border-radius:999px}.skeleton--on-dark{background-image:linear-gradient(100deg,#ffffff1f 30%,#ffffff42,#ffffff1f 70%)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border:1.5px solid transparent;border-radius:var(--radius-sm);background:transparent;font-size:.98rem;font-weight:700;line-height:1;text-decoration:none;white-space:nowrap;transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s}.btn:disabled{border-color:var(--line);background:var(--line);color:var(--ink-soft);box-shadow:none;cursor:not-allowed}.btn--lg{min-height:56px;padding:0 30px;font-size:1.05rem}.btn--block{width:100%}.btn--primary{background:var(--amber-400);color:var(--navy-950)}.btn--primary:hover{background:#a9caee;box-shadow:0 0 0 4px #93bae457}.btn--blue{background:var(--blue-600);color:#fff}.btn--blue:hover{background:var(--blue-700)}.btn--outline{border-color:var(--line-strong);background:var(--surface);color:var(--ink)}.btn--outline:hover{border-color:var(--ink)}.btn--ghost-light{border-color:#fff6;color:#fff}.btn--ghost-light:hover{background:#fff;color:var(--navy-950)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--radius-sm);background:var(--blue-100);color:var(--blue-700);font-size:.8rem;font-weight:700}.badge--amber{background:var(--amber-400);color:var(--navy-950)}.badge--green{background:var(--green-100);color:var(--green-600)}.stars{display:inline-flex;gap:2px;color:var(--amber-500)}.price{font-family:var(--font-display);font-stretch:90%;font-weight:800;letter-spacing:-.01em}.price s{color:var(--ink-muted);font-weight:600;font-size:.8em;margin-right:6px}.page-hero{position:relative;overflow:hidden;background:var(--navy-950);color:#fff}.page-hero:after{content:"";position:absolute;inset:auto 0 0;height:18px;opacity:.55;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='18' viewBox='0 0 160 18' fill='none' stroke='%238fd0ee' stroke-width='1.5'%3E%3Cpath d='M0 9H24V3H38V9H52V15H66V9H160'/%3E%3C/svg%3E") repeat-x left center/160px 18px;pointer-events:none}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@keyframes float{to{translate:0 -10px}}main>:not(router-outlet){display:block;animation:fade .35s ease backwards}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;animation-timeline:auto!important;transition-duration:.01ms!important}}app-blog-post .article-content :is(p,ul,ol,blockquote,figure,h2,h3,h4)+:is(p,ul,ol,blockquote,figure,h2,h3,h4){margin-top:1.3em}app-blog-post .article-content>*+*{margin-top:1.3em}app-blog-post .article-content .html-fragment>*+*{margin-top:1.3em}app-blog-post .article-content :is(h2,h3,h4){margin-top:2.2em;scroll-margin-top:calc(var(--header-h) + 20px);color:var(--ink)}app-blog-post .article-content :is(ul,ol){padding-left:1.4em}app-blog-post .article-content ul{list-style:disc}app-blog-post .article-content ol{list-style:decimal}app-blog-post .article-content blockquote{margin-inline:0;padding:8px 0 8px 28px;border-left:5px solid var(--amber-400);color:var(--ink)}app-blog-post .article-content img{max-width:100%;height:auto;border-radius:var(--radius)}
