.skip-link[data-astro-cid-37fxchfa]{position:absolute;top:-40px;left:0;background:var(--color-accent);color:#fff;padding:var(--space-2) var(--space-4);z-index:100;transition:top var(--transition-fast)}.skip-link[data-astro-cid-37fxchfa]:focus{top:0}.site-header[data-astro-cid-37fxchfa]{position:sticky;top:0;z-index:50;background-color:var(--color-base);border-bottom:1px solid var(--color-border)}.nav[data-astro-cid-37fxchfa]{display:flex;align-items:center;justify-content:space-between;height:64px;gap:var(--space-6)}.nav-logo[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:var(--space-2);font-weight:var(--font-bold);font-size:var(--text-xl);color:var(--color-contrast)}.nav-logo[data-astro-cid-37fxchfa]:hover{color:var(--color-contrast)}.logo-icon[data-astro-cid-37fxchfa]{width:28px;height:28px;color:var(--color-contrast)}:root[data-theme=dark] .logo-icon[data-astro-cid-37fxchfa]{filter:invert(1)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .logo-icon[data-astro-cid-37fxchfa]{filter:invert(1)}}.nav-links[data-astro-cid-37fxchfa]{display:none;gap:var(--space-6)}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{color:var(--color-contrast-subtle);font-size:var(--text-sm);font-weight:var(--font-medium)}.nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--color-contrast)}.nav-actions[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:var(--space-3)}.nav-cta[data-astro-cid-37fxchfa]{display:none}.theme-toggle[data-astro-cid-37fxchfa]{background:transparent;padding:var(--space-2);color:var(--color-contrast-subtle);min-height:var(--min-touch-target);min-width:var(--min-touch-target)}.theme-toggle[data-astro-cid-37fxchfa]:hover{color:var(--color-contrast);background:var(--color-base-subtle)}.icon-sun[data-astro-cid-37fxchfa]{display:none}.icon-moon[data-astro-cid-37fxchfa]{display:block}:root[data-theme=dark] .icon-sun[data-astro-cid-37fxchfa]{display:block}:root[data-theme=dark] .icon-moon[data-astro-cid-37fxchfa]{display:none}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .icon-sun[data-astro-cid-37fxchfa]{display:block}:root:not([data-theme=light]) .icon-moon[data-astro-cid-37fxchfa]{display:none}}.mobile-menu-toggle[data-astro-cid-37fxchfa]{display:flex;background:transparent;padding:var(--space-2);min-height:var(--min-touch-target);min-width:var(--min-touch-target)}.hamburger[data-astro-cid-37fxchfa]{width:20px;height:2px;background-color:var(--color-contrast);position:relative}.hamburger[data-astro-cid-37fxchfa]:before,.hamburger[data-astro-cid-37fxchfa]:after{content:"";position:absolute;width:100%;height:2px;background-color:var(--color-contrast);left:0}.hamburger[data-astro-cid-37fxchfa]:before{top:-6px}.hamburger[data-astro-cid-37fxchfa]:after{top:6px}.mobile-menu-toggle[data-astro-cid-37fxchfa][aria-expanded=true] .hamburger[data-astro-cid-37fxchfa]{background-color:transparent}.mobile-menu-toggle[data-astro-cid-37fxchfa][aria-expanded=true] .hamburger[data-astro-cid-37fxchfa]:before{transform:rotate(45deg);top:0}.mobile-menu-toggle[data-astro-cid-37fxchfa][aria-expanded=true] .hamburger[data-astro-cid-37fxchfa]:after{transform:rotate(-45deg);top:0}.mobile-nav[data-astro-cid-37fxchfa]{display:none;position:absolute;top:100%;left:0;right:0;background:var(--color-base);border-bottom:1px solid var(--color-border);padding:var(--space-4) 0;box-shadow:var(--shadow-md)}.mobile-nav[data-astro-cid-37fxchfa].is-open{display:block}.mobile-nav-links[data-astro-cid-37fxchfa]{display:flex;flex-direction:column;padding:0 var(--space-4);gap:var(--space-1)}.mobile-nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{padding:var(--space-3) var(--space-4);color:var(--color-contrast-subtle);font-size:var(--text-base);font-weight:var(--font-medium);border-radius:var(--border-radius);min-height:var(--min-touch-target);display:flex;align-items:center}.mobile-nav-links[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{background:var(--color-base-subtle);color:var(--color-contrast)}.mobile-nav-cta[data-astro-cid-37fxchfa]{margin-top:var(--space-3);justify-content:center}body.mobile-nav-open{overflow:hidden}@media(min-width:768px){.nav-links[data-astro-cid-37fxchfa]{display:flex}.nav-cta[data-astro-cid-37fxchfa]{display:inline-flex}.mobile-menu-toggle[data-astro-cid-37fxchfa]{display:none}.mobile-nav[data-astro-cid-37fxchfa]{display:none!important}}.site-footer[data-astro-cid-37fxchfa]{background-color:var(--color-base-subtle);border-top:1px solid var(--color-border);padding:var(--space-12) 0 var(--space-8)}.footer-content[data-astro-cid-37fxchfa]{display:grid;gap:var(--space-8)}.footer-brand[data-astro-cid-37fxchfa]{max-width:280px}.footer-logo[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:var(--space-2)}.footer-tagline[data-astro-cid-37fxchfa]{color:var(--color-contrast-muted);font-size:var(--text-sm);margin-top:var(--space-2);margin-bottom:0}.footer-links[data-astro-cid-37fxchfa]{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-8)}.footer-column[data-astro-cid-37fxchfa] h4[data-astro-cid-37fxchfa]{font-size:var(--text-sm);font-weight:var(--font-semibold);margin-bottom:var(--space-3)}.footer-column[data-astro-cid-37fxchfa] ul[data-astro-cid-37fxchfa]{list-style:none;padding:0}.footer-column[data-astro-cid-37fxchfa] li[data-astro-cid-37fxchfa]{margin-bottom:var(--space-2)}.footer-column[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{color:var(--color-contrast-muted);font-size:var(--text-sm)}.footer-column[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--color-contrast)}.footer-bottom[data-astro-cid-37fxchfa]{display:flex;flex-wrap:wrap;gap:var(--space-4);padding-top:var(--space-6);border-top:1px solid var(--color-border);font-size:var(--text-sm);color:var(--color-contrast-muted)}.footer-copyright[data-astro-cid-37fxchfa]{margin-bottom:0}.footer-legal[data-astro-cid-37fxchfa]{display:flex;gap:var(--space-4)}.footer-legal[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{color:var(--color-contrast-muted)}.footer-license[data-astro-cid-37fxchfa]{width:100%;margin-bottom:0}@media(min-width:768px){.footer-content[data-astro-cid-37fxchfa]{grid-template-columns:1fr 2fr}.footer-license[data-astro-cid-37fxchfa]{width:auto;margin-left:auto}}:root{--color-base: #ffffff;--color-base-subtle: #f8fafc;--color-base-muted: #f1f5f9;--color-contrast: #0f172a;--color-contrast-subtle: #334155;--color-contrast-muted: #64748b;--color-accent: #0ea5e9;--color-accent-hover: #0284c7;--color-accent-subtle: #e0f2fe;--color-success: #22c55e;--color-warning: #f59e0b;--color-error: #ef4444;--color-border: #e2e8f0;--color-border-subtle: #f1f5f9;--font-sans: "Archivo", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "SF Mono", Consolas, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--max-width-prose: 65ch;--max-width-content: 72rem;--max-width-wide: 90rem;--container-padding: var(--space-4);--min-touch-target: 44px;--border-radius-sm: .25rem;--border-radius: .5rem;--border-radius-lg: .75rem;--border-radius-full: 9999px;--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--ease-out-smooth: cubic-bezier(.25, .46, .45, .94);--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-instant: .1s;--duration-fast: .15s;--duration-base: .2s;--duration-slow: .3s;--duration-entrance: .4s;--duration-page: .6s;--stagger-1: 0ms;--stagger-2: .1s;--stagger-3: .2s;--stagger-4: .3s;--lift-sm: -2px;--lift-md: -4px;--scale-hover: 1.05;--scale-press: .98;--shadow-lifted: 0 8px 25px -5px rgb(0 0 0 / .15), 0 4px 10px -5px rgb(0 0 0 / .1)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-base: #0f172a;--color-base-subtle: #1e293b;--color-base-muted: #334155;--color-contrast: #f8fafc;--color-contrast-subtle: #cbd5e1;--color-contrast-muted: #94a3b8;--color-accent: #38bdf8;--color-accent-hover: #7dd3fc;--color-accent-subtle: #0c4a6e;--color-border: #334155;--color-border-subtle: #1e293b;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow: 0 1px 3px 0 rgb(0 0 0 / .4), 0 1px 2px -1px rgb(0 0 0 / .4);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .4);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .4);--shadow-lifted: 0 8px 25px -5px rgb(0 0 0 / .5), 0 4px 10px -5px rgb(0 0 0 / .4)}}:root[data-theme=dark]{--color-base: #0f172a;--color-base-subtle: #1e293b;--color-base-muted: #334155;--color-contrast: #f8fafc;--color-contrast-subtle: #cbd5e1;--color-contrast-muted: #94a3b8;--color-accent: #38bdf8;--color-accent-hover: #7dd3fc;--color-accent-subtle: #0c4a6e;--color-border: #334155;--color-border-subtle: #1e293b;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .3);--shadow: 0 1px 3px 0 rgb(0 0 0 / .4), 0 1px 2px -1px rgb(0 0 0 / .4);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .4), 0 2px 4px -2px rgb(0 0 0 / .4);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .4), 0 4px 6px -4px rgb(0 0 0 / .4);--shadow-lifted: 0 8px 25px -5px rgb(0 0 0 / .5), 0 4px 10px -5px rgb(0 0 0 / .4)}@media(min-width:640px){:root{--container-padding: var(--space-6)}}@media(min-width:768px){:root{--container-padding: var(--space-8)}}@media(min-width:1024px){:root{--container-padding: var(--space-12)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes ripple{0%{opacity:.5;transform:scale(0)}to{opacity:0;transform:scale(2.5)}}@keyframes drawCheck{to{stroke-dashoffset:0}}@keyframes focusPulse{0%,to{box-shadow:0 0 0 3px var(--color-accent-subtle)}50%{box-shadow:0 0 0 5px var(--color-accent-subtle)}}.hero-headline{animation:fadeUp var(--duration-entrance) var(--ease-out-expo) var(--stagger-1) both}.hero-subhead{animation:fadeUp var(--duration-entrance) var(--ease-out-expo) var(--stagger-2) both}.hero-cta{animation:fadeUp var(--duration-entrance) var(--ease-out-expo) var(--stagger-4) both}.button,button{position:relative;overflow:hidden;transition:transform var(--duration-base) var(--ease-out-smooth),box-shadow var(--duration-base) var(--ease-out-smooth)}.button:hover,button:hover{transform:translateY(var(--lift-sm)) scale(1.02);box-shadow:var(--shadow-lifted)}.button:active,button:active{transform:translateY(1px) scale(var(--scale-press));transition-duration:var(--duration-instant)}.button-ripple{position:absolute;border-radius:50%;background:currentColor;opacity:.3;pointer-events:none;animation:ripple var(--duration-page) var(--ease-out-expo) forwards}.prop-card,.service-card{transition:transform var(--duration-base) var(--ease-out-smooth),box-shadow var(--duration-base) var(--ease-out-smooth),border-color var(--duration-fast)}.prop-card:hover,.service-card:hover{transform:translateY(var(--lift-md));box-shadow:var(--shadow-lifted)}.prop-card:hover .prop-icon,.service-card:hover .service-icon{transform:scale(1.1)}.prop-icon,.service-icon{transition:transform var(--duration-base) var(--ease-spring)}.nav-links a{position:relative}.nav-links a:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--color-accent);transition:width var(--duration-base) var(--ease-out-smooth)}.nav-links a:hover:after{width:100%}.hamburger,.hamburger:before,.hamburger:after{transition:transform var(--duration-slow) var(--ease-out-smooth),opacity var(--duration-fast)}.mobile-menu-toggle[aria-expanded=true] .hamburger{background-color:transparent}.mobile-menu-toggle[aria-expanded=true] .hamburger:before{transform:translateY(6px) rotate(45deg)}.mobile-menu-toggle[aria-expanded=true] .hamburger:after{transform:translateY(-6px) rotate(-45deg)}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity var(--duration-entrance) var(--ease-out-expo),transform var(--duration-entrance) var(--ease-out-expo)}.animate-on-scroll.is-visible{opacity:1;transform:translateY(0)}.stagger-grid .prop-card,.stagger-grid .diff-item{opacity:0;transform:translateY(30px);transition:opacity var(--duration-entrance) var(--ease-out-expo),transform var(--duration-entrance) var(--ease-out-expo)}.stagger-grid .prop-card:nth-child(1),.stagger-grid .diff-item:nth-child(1){transition-delay:var(--stagger-1)}.stagger-grid .prop-card:nth-child(2),.stagger-grid .diff-item:nth-child(2){transition-delay:var(--stagger-2)}.stagger-grid .prop-card:nth-child(3),.stagger-grid .diff-item:nth-child(3){transition-delay:var(--stagger-3)}.stagger-grid .prop-card:nth-child(4),.stagger-grid .diff-item:nth-child(4){transition-delay:var(--stagger-4)}.stagger-grid.is-visible .prop-card,.stagger-grid.is-visible .diff-item{opacity:1;transform:translateY(0)}.hero{--parallax-offset: 0px}.hero:before{transform:translateY(var(--parallax-offset));will-change:transform}input,textarea,select{transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}input:focus,textarea:focus,select:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-subtle)}.form-success{animation:scaleIn var(--duration-entrance) var(--ease-out-expo)}.success-icon svg{stroke-dasharray:60;stroke-dashoffset:60;animation:drawCheck var(--duration-slow) ease var(--stagger-3) forwards}.prop-link,.footer-column a{position:relative;display:inline-block}.prop-link:after,.footer-column a:after{content:"";position:absolute;bottom:-1px;left:0;width:0;height:1px;background-color:currentColor;transition:width var(--duration-base) var(--ease-out-smooth)}.prop-link:hover:after,.footer-column a:hover:after{width:100%}.theme-toggle svg{transition:transform var(--duration-base) var(--ease-spring)}.theme-toggle:hover svg{transform:rotate(15deg)}.cta-box{transition:transform var(--duration-slow) var(--ease-out-smooth),box-shadow var(--duration-slow) var(--ease-out-smooth)}.cta-box:hover{transform:translateY(var(--lift-sm));box-shadow:var(--shadow-lg)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-on-scroll,.stagger-grid .prop-card,.stagger-grid .diff-item{opacity:1!important;transform:none!important}.button:hover,button:hover,.prop-card:hover,.service-card:hover,.cta-box:hover{transform:none!important}.button-ripple{display:none!important}.hero:before{transform:none!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-contrast);background-color:var(--color-base);transition:background-color var(--transition-base),color var(--transition-base)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-semibold);line-height:var(--leading-tight);color:var(--color-contrast)}h1{font-size:var(--text-4xl);letter-spacing:-.02em}h2{font-size:var(--text-3xl);letter-spacing:-.01em}h3{font-size:var(--text-2xl)}h4{font-size:var(--text-xl)}h5{font-size:var(--text-lg)}h6{font-size:var(--text-base);font-weight:var(--font-medium)}p{margin-bottom:var(--space-4)}.prose{max-width:var(--max-width-prose)}.prose>*+*{margin-top:var(--space-4)}.prose h2{margin-top:var(--space-12);margin-bottom:var(--space-4)}.prose h3{margin-top:var(--space-8);margin-bottom:var(--space-3)}a{color:var(--color-accent);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-hover)}a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--border-radius-sm)}code,pre,kbd,samp{font-family:var(--font-mono);font-size:.9em}code{background-color:var(--color-base-muted);padding:.125em .375em;border-radius:var(--border-radius-sm)}pre{background-color:var(--color-base-subtle);border:1px solid var(--color-border);border-radius:var(--border-radius);padding:var(--space-4);overflow-x:auto}pre code{background:none;padding:0}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--min-touch-target);padding:var(--space-3) var(--space-5);font-family:var(--font-sans);font-size:var(--text-sm);font-weight:var(--font-medium);line-height:1;border:none;border-radius:var(--border-radius);cursor:pointer;transition:background-color var(--transition-fast),border-color var(--transition-fast)}button:focus-visible,.button:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.button-primary,a.button-primary{background-color:var(--color-accent);color:#fff}.button-primary:hover,a.button-primary:hover{background-color:var(--color-accent-hover);color:#fff}.button-secondary{background-color:transparent;color:var(--color-contrast);border:1px solid var(--color-border)}.button-secondary:hover{background-color:var(--color-base-subtle);border-color:var(--color-contrast-muted)}.container{width:100%;max-width:var(--max-width-content);margin-left:auto;margin-right:auto;padding-left:var(--container-padding);padding-right:var(--container-padding)}.container-wide{max-width:var(--max-width-wide)}.section{padding-top:var(--space-16);padding-bottom:var(--space-16)}@media(min-width:768px){.section{padding-top:var(--space-24);padding-bottom:var(--space-24)}}.grid{display:grid;gap:var(--space-6)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}@media(max-width:767px){.grid-cols-2,.grid-cols-3{grid-template-columns:1fr}}.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}::selection{background-color:var(--color-accent);color:#fff}img,svg{display:block;max-width:100%;height:auto}ul,ol{padding-left:var(--space-6)}li{margin-bottom:var(--space-2)}hr{border:none;border-top:1px solid var(--color-border);margin:var(--space-8) 0}
