:root{--color-primary: #0d1929;--color-primary-dark: #060d15;--color-accent: #cea647;--color-accent-dark: #b8922f;--color-accent-ink: #8c6d1f;--color-secondary: #ffffff;--color-text: #161616;--color-text-muted: #161616;--color-heading: #75724f;--color-bg: #ffffff;--color-bg-alt: #faf9f6;--color-border: #ddd3bc;--outline-w: 1px;--color-outline: color-mix(in srgb, var(--color-primary) 30%, transparent);--glow-sm: var(--shadow-sm);--glow-md: var(--shadow-md);--font-sans: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: "Barlow Condensed", "Poppins", system-ui, sans-serif;--fw-display: 600;--fd-scale: .84;--fd-track: .035em;--fd-case: uppercase;--fd-fit: 4.1;--fd-hero-min: 1.625rem;--radius-sm: 3px;--radius-md: 4px;--radius-lg: 5px;--btn-radius: 4px;--accent-bar: 1;--use-gradients: 1;--text-xs: .75rem;--text-sm: .8125rem;--text-meta: .875rem;--text-card: 1rem;--text-body: clamp(1rem, .94rem + .25vw, 1.0625rem);--text-lead: clamp(1.0625rem, .98rem + .4vw, 1.1875rem);--display-xs: calc(1rem * var(--fd-scale, 1));--display-sm: calc(1.125rem * var(--fd-scale, 1));--title-xs: calc(1.375rem * var(--fd-scale, 1));--title-card: calc(clamp(1.375rem, 1.1rem + .7vw, 1.5625rem) * var(--fd-scale, 1));--title-minor: calc(clamp(1.75rem, 1.2rem + 1.6vw, 2.25rem) * var(--fd-scale, 1));--title-major: calc(clamp(2rem, 1.2rem + 2.6vw, 3rem) * var(--fd-scale, 1));--title-hero: calc(clamp(2.6rem, 5vw, 4.6rem) * var(--fd-scale, 1));--display-figure: calc(clamp(4.5rem, 8vw, 7.5rem) * var(--fd-scale, 1));--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 3rem;--space-6: 4.5rem;--space-7: 6rem;--container-max: 1440px;--container-heading: 1100px;--container-narrow: 760px;--shadow-sm: 0 1px 4px rgba(13, 25, 41, .06);--shadow-md: 0 6px 20px rgba(13, 25, 41, .09);--shadow-lg: 0 18px 44px rgba(13, 25, 41, .13);--shadow-accent: 0 10px 28px color-mix(in srgb, var(--color-accent) 32%, transparent);--gradient-primary: linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);--gradient-accent: linear-gradient(90deg, var(--color-accent) 0%, var(--color-accent-dark) 100%);--color-accent-tint: color-mix(in srgb, var(--color-accent) 12%, transparent);--color-primary-tint: color-mix(in srgb, var(--color-primary) 7%, transparent);--ring-focus: 0 0 0 3px color-mix(in srgb, var(--color-accent) 35%, transparent);--ease-out: cubic-bezier(.16, 1, .3, 1)}[data-theme=minimal]{--radius-sm: 2px;--radius-md: 3px;--radius-lg: 4px;--btn-radius: 3px;--accent-bar: 0;--use-gradients: 0;--gradient-primary: var(--color-primary-dark);--gradient-accent: var(--color-accent);--shadow-sm: none;--shadow-md: 0 2px 8px rgba(15, 23, 42, .06);--shadow-lg: 0 10px 28px rgba(15, 23, 42, .08);--shadow-accent: 0 6px 16px color-mix(in srgb, var(--color-accent) 22%, transparent)}[data-theme=bold]{--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--btn-radius: 999px;--shadow-lg: 0 24px 60px color-mix(in srgb, var(--color-primary-dark) 26%, transparent)}[data-theme=soft]{--radius-sm: 10px;--radius-md: 16px;--radius-lg: 28px;--btn-radius: 999px;--shadow-sm: 0 2px 10px rgba(15, 23, 42, .05);--shadow-md: 0 10px 30px rgba(15, 23, 42, .08);--shadow-lg: 0 24px 50px rgba(15, 23, 42, .1)}[data-theme=editorial]{--font-display: "Georgia", "Times New Roman", serif;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 6px;--btn-radius: 4px;--accent-bar: 1;--use-gradients: 0;--gradient-primary: var(--color-primary-dark)}[data-theme=contractor]{--radius-sm: 0px;--radius-md: 2px;--radius-lg: 2px;--btn-radius: 2px;--accent-bar: 1;--shadow-md: 0 4px 0 color-mix(in srgb, var(--color-primary-dark) 18%, transparent)}[data-theme=professional]{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--btn-radius: 6px;--use-gradients: 0;--gradient-primary: var(--color-primary-dark);--shadow-md: 0 4px 14px rgba(15, 23, 42, .08)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;interpolate-size:allow-keywords}body{margin:0;font-family:var(--font-sans);font-size:var(--text-body);line-height:1.65;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;overflow-x:hidden}img,svg,video{display:block;max-width:100%;height:auto}h2,h3,h4{font-family:var(--font-display);font-weight:var(--fw-display);line-height:1.08;margin:0 0 var(--space-2);color:var(--color-primary-dark);letter-spacing:var(--fd-track, .03em);text-transform:var(--fd-case, uppercase)}h1{font-family:var(--font-sans);font-weight:400;font-size:var(--text-lead);line-height:1.5;letter-spacing:1px;text-transform:none;margin:0 0 var(--space-2);color:var(--color-primary-dark)}h2{font-size:var(--title-major)}h3{font-size:var(--title-major);font-weight:var(--fw-display);color:var(--color-heading);line-height:1.1}h4{font-size:var(--title-xs);font-weight:500}p{margin:0 0 var(--space-2)}a{color:var(--color-primary);text-decoration:none}a:hover{text-decoration:underline}.lead{font-size:var(--text-lead);color:var(--color-text-muted);line-height:1.6}.prose a,a.link{color:var(--color-primary);font-weight:600;text-decoration:none;background-image:linear-gradient(var(--color-accent),var(--color-accent));background-size:0% 2px;background-position:0 100%;background-repeat:no-repeat;transition:background-size .3s var(--ease-out)}.prose a:hover,a.link:hover{background-size:100% 2px;text-decoration:none}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-4)}.container--narrow{max-width:var(--container-narrow)}.container--heading{max-width:var(--container-heading)}@media (max-width: 600px){.container{padding:0 var(--space-3)}}.section{padding:var(--space-7) 0}.section--alt{background:var(--color-bg-alt)}.section--dark{background:var(--gradient-primary);color:#fff}.section--dark h1,.section--dark h2,.section--dark h3{color:#fff}.section--dark p{color:#ffffffe0}@media (max-width: 600px){.section{padding:var(--space-6) 0}}.eyebrow{display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-sans);font-size:var(--text-body);font-weight:400;letter-spacing:1px;text-transform:uppercase;color:var(--color-primary);margin-bottom:var(--space-2)}.eyebrow:before{content:"";width:1.6em;height:2px;background:var(--gradient-accent);border-radius:2px}.section--dark .eyebrow{color:var(--color-accent)}@media (max-width: 600px){.eyebrow{font-size:var(--text-card)}.eyebrow:before{display:none}}.accent{position:relative;padding-bottom:var(--space-2)}.accent:after{content:"";position:absolute;left:0;bottom:0;width:56px;height:4px;background:var(--gradient-accent);border-radius:4px;opacity:var(--accent-bar)}.text-center.accent:after,.accent.text-center:after{left:50%;transform:translate(-50%)}.text-center{text-align:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.85rem 1.6rem;font-family:var(--font-sans);font-weight:500;font-size:var(--text-card);letter-spacing:0;border-radius:var(--btn-radius);border:2px solid transparent;cursor:pointer;text-decoration:none;transition:transform .18s var(--ease-out),box-shadow .18s var(--ease-out),background .18s ease}.btn:hover{transform:translateY(-2px);text-decoration:none}.btn--primary{background:var(--color-primary);color:#fff;box-shadow:var(--shadow-md)}.btn--primary:hover{background:var(--color-primary-dark);box-shadow:var(--shadow-lg)}.btn--accent{background:var(--color-accent);color:var(--color-primary-dark);box-shadow:var(--shadow-md)}.btn--accent:hover{box-shadow:var(--shadow-accent)}.btn--white{background:#fff;color:var(--color-primary-dark);box-shadow:var(--shadow-md)}.btn--white:hover{box-shadow:var(--shadow-lg)}.btn--outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn--outline:hover{background:var(--color-primary-tint)}.btn--ghost-white{background:transparent;color:#fff;border-color:#ffffffb3}.btn--ghost-white:hover{background:#ffffff1f}.btn--lg{padding:1.05rem 2rem;font-size:var(--text-body)}.grid{display:grid;gap:var(--space-3)}.grid--2{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid--3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.card{position:relative;background:var(--color-bg);padding:var(--space-4);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .25s var(--ease-out),box-shadow .25s var(--ease-out)}.card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-accent);opacity:var(--accent-bar);transform:scaleX(0);transform-origin:left;transition:transform .3s var(--ease-out)}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.card:hover:before{transform:scaleX(1)}@media (prefers-reduced-motion: no-preference){@supports (animation-timeline: view()){.reveal{animation:reveal-rise linear both;animation-timeline:view();animation-range:entry 0% entry 20%}}}@keyframes reveal-rise{0%{opacity:.6;transform:translateY(12px)}to{opacity:1;transform:none}}.prose{font-size:var(--text-body);line-height:1.75;color:var(--color-text)}.prose>*+*{margin-top:var(--space-2)}.prose h2{font-size:var(--title-minor);margin-top:var(--space-5);margin-bottom:var(--space-1)}.prose h3{font-size:var(--title-card);margin-top:var(--space-4);margin-bottom:var(--space-1);color:var(--color-primary)}.prose p,.prose li{font-size:var(--text-body)}.prose ul,.prose ol{padding-left:1.4rem}.prose li{margin-top:.4rem}.prose li::marker{color:var(--color-accent-ink)}.prose strong{color:var(--color-primary-dark);font-weight:700}.prose img{display:block;width:100%;height:auto;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin:var(--space-4) 0}.prose blockquote{margin:var(--space-3) 0;padding:var(--space-3) var(--space-4);position:relative;background:var(--color-accent-tint);border-radius:var(--radius-md);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--color-accent) 45%,transparent);font-style:normal}.prose blockquote p{margin:0}.prose blockquote strong:first-child{display:block;font-family:var(--font-display);text-transform:var(--fd-case, uppercase);color:var(--color-primary-dark);margin-bottom:.3rem;font-weight:var(--fw-display)}.prose hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-4) 0}.prose table{width:100%;border-collapse:collapse;margin:var(--space-3) 0;font-size:var(--text-card);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm)}.prose thead th{background:var(--gradient-primary);color:#fff;text-align:left;font-family:var(--font-display);text-transform:var(--fd-case, uppercase);font-weight:500;letter-spacing:var(--fd-track, .01em)}.prose th,.prose td{padding:.7rem .9rem;border:1px solid var(--color-border);vertical-align:top;line-height:1.5}.prose tbody tr:nth-child(2n){background:var(--color-bg-alt)}.prose tbody td:first-child{font-weight:600;color:var(--color-primary-dark)}@media (max-width: 820px){.prose table,.prose tbody,.prose tr,.prose td{display:block;width:100%}.prose table{border-radius:0;overflow:visible;box-shadow:none;border:none}.prose thead{display:none}.prose tbody tr{margin:0 0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm);background:var(--color-bg)}.prose tbody tr:nth-child(2n){background:var(--color-bg)}.prose td{border:none;border-top:1px solid var(--color-border);padding:.65rem .9rem}.prose tbody td:first-child{border-top:none;background:var(--gradient-primary);color:#fff;font-family:var(--font-sans);font-weight:600;font-size:var(--display-sm);letter-spacing:var(--fd-track, .02em)}.prose tbody td:first-child:before{display:none}.prose td[data-label]:before{content:attr(data-label);display:block;font-size:var(--text-sm);font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--color-accent-ink);margin-bottom:.15rem}}.prose .video{position:relative;aspect-ratio:16 / 9;margin:var(--space-4) 0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);background:#000}.prose .video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.prose iframe{max-width:100%}input,select,textarea{font-family:inherit}:where(input,select,textarea):focus-visible{outline:none;box-shadow:var(--ring-focus);border-color:var(--color-primary)}:where(a,button):focus-visible{outline:none;box-shadow:var(--ring-focus);border-radius:var(--radius-sm)}.skip-link{position:absolute;top:-48px;left:0;background:var(--color-primary);color:#fff;padding:var(--space-1) var(--space-2);z-index:100;border-radius:0 0 var(--radius-sm) 0}.skip-link:focus{top:0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}.reviews-widget,.aside__reviews{min-width:0;max-width:100%;overflow-x:clip}.reviews-widget{padding:4px 18px 22px;margin-inline:-18px}.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}.bgrid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(1rem,2vw,1.5rem)}.bgrid>*{grid-column:span var(--span, 4);min-width:0}@media (max-width: 1000px){.bgrid>*{grid-column:span var(--span-t, 6)}}@media (max-width: 600px){.bgrid{grid-template-columns:minmax(0,1fr)}.bgrid>*{grid-column:auto}}.section-header{text-align:center;max-width:100%;margin:0 auto var(--space-5)}.section-header .eyebrow{justify-content:center}.section-header .lead{margin:var(--space-2) auto 0;max-width:100%}h1,h2,h3,h4,.lead,.sp-sublead,[class*=head]>p,[class*=-near],[class*=__cta]>p,p[class*=__cta],.text-center p,p.text-center{text-wrap:balance}p,li,dd,figcaption,[class*=__note],[class*=__note] p{text-wrap:pretty}.hero-zoom{transform-origin:center center;animation:hero-zoom-out 30s cubic-bezier(.3,.2,.3,1) both}@keyframes hero-zoom-out{0%{transform:scale(1.12)}to{transform:scale(1)}}@media (prefers-reduced-motion: reduce){.hero-zoom{animation:none}}
