@layer vendor,tokens,reset,atoms,molecules,utilities;@layer tokens{:root{--p-warm-50: oklch(.99 .002 50);--p-warm-100: oklch(.97 .005 50);--p-warm-200: oklch(.92 .008 50);--p-ink-900: oklch(.12 .005 240);--p-ink-800: oklch(.2 .008 240);--p-ink-600: oklch(.38 .012 240);--p-ink-400: oklch(.55 .01 240);--p-ink-200: oklch(.75 .006 240);--p-brand-400: oklch(.56 .24 22);--p-brand-500: oklch(.47 .24 22);--p-brand-600: oklch(.4 .22 22);--p-black-900: oklch(.1 .005 0);--p-black-800: oklch(.16 .005 0);--p-black-700: oklch(.22 .005 0);--s-background: oklch(.99 .002 50);--s-foreground: oklch(.12 .005 240);--s-card: oklch(.97 .005 50);--s-card-foreground: oklch(.2 .008 240);--s-popover: oklch(.99 .002 50);--s-popover-foreground: oklch(.12 .005 240);--s-primary: oklch(.47 .24 22);--s-primary-foreground: oklch(.99 .002 50);--s-secondary: oklch(.17 .025 22);--s-secondary-foreground: oklch(.99 .002 50);--s-muted: oklch(.92 .008 50);--s-muted-foreground: oklch(.38 .012 240);--s-border: oklch(.82 .006 240);--s-input: oklch(.55 .01 240);--s-ring: oklch(.47 .24 22);--s-success: oklch(.55 .18 145);--s-warning: oklch(.64 .18 75);--s-destructive: oklch(.47 .24 22);--s-shadow-h: 20;--c-btn-primary-bg: var(--s-primary);--c-btn-primary-fg: var(--s-primary-foreground);--c-input-border: var(--s-input);--c-focus-ring: var(--s-ring);--font-heading: "Poppins", "Poppins-Fallback", system-ui, sans-serif;--font-body: "Nunito", "Nunito-Fallback", system-ui, sans-serif;--text-display: clamp(3rem, calc(2.57rem + 2.14vw) , 4.5rem);--text-h1: clamp(2.25rem, calc(2.04rem + 1.07vw) , 3rem);--text-h2: clamp(1.75rem, calc(1.61rem + .71vw) , 2.25rem);--text-h3: clamp(1.5rem, calc(1.43rem + .36vw) , 1.75rem);--text-h4: clamp(1.25rem, calc(1.21rem + .18vw) , 1.375rem);--text-body: clamp(1rem, calc(.96rem + .18vw) , 1.125rem);--text-caption: clamp(.75rem, calc(.71rem + .18vw) , .875rem);--lh-display: 1.1;--lh-h1-h2: 1.2;--lh-h3-h4: 1.3;--lh-body: 1.55;--lh-caption: 1.38;--tracking-display: -.03em;--tracking-h1-h2: -.015em;--tracking-h3-h4: 0em;--tracking-body: 0em;--tracking-allcaps: .1em;--fw-display: 700;--fw-h1-h2: 600;--fw-h3-h4: 500;--fw-body: 400;--fw-allcaps: 600;--fw-dark-bg: 500;--space-sub: .25rem;--space-1: .5rem;--space-2: 1rem;--space-3: 1.5rem;--space-4: 2rem;--space-5: 2.5rem;--space-6: 3rem;--space-7: 3.5rem;--space-8: 4rem;--space-10: 5rem;--space-12: 6rem;--space-16: 8rem;--space-fluid-s: clamp(1rem, 1.5vw + .648rem, 2rem);--space-fluid-m: clamp(1.5rem, 3.755vw + .619rem, 4rem);--space-fluid-l: clamp(3rem, 7.5vw + 1.238rem, 8rem);--sticky-header-height: 5rem;--sticky-header-height-sm: 3.75rem;scroll-padding-top:calc(var(--sticky-header-height) + 1rem);--radius-xs: .125rem;--radius-s: .25rem;--radius-m: .5rem;--radius-l: .75rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--shadow-none: none;--shadow-sm: 0 1px 1px oklch(.2 .04 var(--s-shadow-h) / .05), 0 2px 2px oklch(.2 .04 var(--s-shadow-h) / .03);--shadow-md: 0 2px 4px oklch(.2 .04 var(--s-shadow-h) / .06), 0 6px 12px oklch(.2 .04 var(--s-shadow-h) / .04), 0 12px 24px oklch(.2 .04 var(--s-shadow-h) / .02);--shadow-lg: 0 4px 8px oklch(.2 .04 var(--s-shadow-h) / .08), 0 12px 24px oklch(.2 .04 var(--s-shadow-h) / .06), 0 24px 48px oklch(.2 .04 var(--s-shadow-h) / .03);--shadow-focus: 0 0 0 2px var(--s-background), 0 0 0 4px var(--s-ring);--shadow-clay: 0 8px 32px oklch(.2 .04 var(--s-shadow-h) / .1), inset 0 1px 0 oklch(.99 0 0 / .65);--ease-standard: cubic-bezier(.4, 0, .2, 1);--ease-decelerate: cubic-bezier(.1, .9, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--ease-anticipate: cubic-bezier(.36, 0, .66, -.56);--z-underground: -10;--z-base: 0;--z-above: 10;--z-sticky: 100;--z-fixed: 200;--z-overlay: 400;--z-modal: 405;--z-popover: 500;--z-tooltip: 600;--z-toast: 700;--max-width: 90rem;--page-margin: clamp(1rem, 4vw, 6rem);--entrance-y: 24px;--entrance-duration: .45s;--entrance-opacity: 0}@media(prefers-reduced-motion:reduce){:root{--entrance-y: 0px;--entrance-duration: 1ms;--entrance-opacity: 1}}}@font-face{font-family:Poppins-Fallback;src:local("Arial");size-adjust:105%;ascent-override:90%;descent-override:22%;line-gap-override:0%}@font-face{font-family:Nunito-Fallback;src:local("Arial");size-adjust:98%;ascent-override:87%;descent-override:21%;line-gap-override:0%}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{overflow-x:clip;overflow-y:auto;scrollbar-gutter:stable;scroll-behavior:smooth;scroll-padding-top:calc(var(--sticky-header-height) + 1rem);font-size:100%;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{background-color:var(--s-background);color:var(--s-foreground);font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-body);letter-spacing:var(--tracking-body);font-weight:var(--fw-body);overflow-x:clip;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--s-foreground);text-wrap:balance;overflow-wrap:break-word}h1{font-size:var(--text-h1);font-weight:var(--fw-h1-h2);line-height:var(--lh-h1-h2);letter-spacing:var(--tracking-h1-h2)}h2{font-size:var(--text-h2);font-weight:var(--fw-h1-h2);line-height:var(--lh-h1-h2);letter-spacing:var(--tracking-h1-h2)}h3{font-size:var(--text-h3);font-weight:var(--fw-h3-h4);line-height:var(--lh-h3-h4);letter-spacing:var(--tracking-h3-h4)}h4{font-size:var(--text-h4);font-weight:var(--fw-h3-h4);line-height:var(--lh-h3-h4);letter-spacing:var(--tracking-h3-h4)}p{font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-body);color:var(--s-muted-foreground);max-width:min(68ch,100%);text-wrap:pretty;overflow-wrap:break-word}li{font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-body)}a{color:var(--s-primary);text-underline-offset:3px;transition:color .2s var(--ease-standard),text-decoration-color .2s var(--ease-standard)}a:hover{color:var(--p-brand-400)}img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}input,button,textarea,select{font:inherit}input[type=text],input[type=email],input[type=tel],input[type=search],input[type=url],select,textarea{font-size:16px!important}button{cursor:pointer;border:none;background:transparent}ul,ol{list-style:none}table{border-collapse:collapse;width:100%}hr{border:none;border-top:1px solid var(--s-border);margin-block:var(--space-4)}.skip-to-main{position:absolute;top:-100px;left:1rem;background-color:var(--s-primary);color:var(--s-primary-foreground);padding:.75rem 1.5rem;border-radius:var(--radius-s);z-index:var(--z-modal);font-family:var(--font-body);font-weight:var(--fw-allcaps);font-size:var(--text-body);text-decoration:none;transition:top .2s var(--ease-standard);white-space:nowrap}.skip-to-main:focus{top:1rem;outline:none;box-shadow:var(--shadow-focus)}:focus-visible{outline:none;box-shadow:var(--shadow-focus);border-radius:var(--radius-s)}:focus:not(:focus-visible){outline:none;box-shadow:none}.animate-entrance{opacity:var(--entrance-opacity);transform:translateY(var(--entrance-y));transition:opacity var(--entrance-duration) var(--ease-decelerate),transform var(--entrance-duration) var(--ease-decelerate)}.animate-entrance.is-visible{opacity:1;transform:translateY(0)}.stagger-card{opacity:var(--entrance-opacity);transform:translateY(16px);transition:opacity .4s var(--ease-decelerate),transform .4s var(--ease-decelerate);transition-delay:calc(min(var(--stagger-index, 1),6)*80ms)}.stagger-card.is-visible{opacity:1;transform:translateY(0)}.card-elevation{position:relative;box-shadow:var(--shadow-sm);transition:transform .3s var(--ease-spring)}.card-elevation:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:var(--shadow-lg);opacity:0;transition:opacity .3s var(--ease-standard);pointer-events:none;z-index:var(--z-underground)}@media(hover:hover){.card-elevation:hover{transform:translateY(-6px)}.card-elevation:hover:after{opacity:1}}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--page-margin)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.caption{font-family:var(--font-body);font-size:var(--text-caption);line-height:var(--lh-caption);letter-spacing:var(--tracking-allcaps);text-transform:uppercase;font-weight:var(--fw-allcaps);color:var(--s-muted-foreground)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.875rem 2rem;background-color:var(--c-btn-primary-bg);color:var(--c-btn-primary-fg);font-family:var(--font-heading);font-size:var(--text-body);font-weight:var(--fw-h1-h2);line-height:1;text-decoration:none;border:none;border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;min-height:44px;position:relative;transition:transform .25s var(--ease-spring),background-color .2s var(--ease-standard)}.btn-primary:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:0 8px 24px #b01f4f59,0 4px 8px #b01f4f33;opacity:0;transition:opacity .25s var(--ease-standard);pointer-events:none}@media(hover:hover){.btn-primary:hover{transform:translateY(-3px) scale(1.02);background-color:var(--p-brand-400)}.btn-primary:hover:after{opacity:1}}.btn-primary:active{transform:translateY(0) scale(.98)}.btn-primary:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.875rem 2rem;background-color:transparent;color:var(--s-secondary);font-family:var(--font-heading);font-size:var(--text-body);font-weight:var(--fw-h1-h2);line-height:1;text-decoration:none;border:2px solid var(--s-secondary);border-radius:var(--radius-full);cursor:pointer;white-space:nowrap;min-height:44px;transition:background-color .2s var(--ease-standard),color .2s var(--ease-standard),transform .25s var(--ease-spring)}@media(hover:hover){.btn-secondary:hover{background-color:var(--s-secondary);color:var(--s-secondary-foreground);transform:translateY(-2px)}}.btn-secondary:focus-visible{outline:none;box-shadow:var(--shadow-focus)}.glass-panel-dark{background:#fdfbfa17;backdrop-filter:blur(20px) saturate(160%);-webkit-backdrop-filter:blur(20px) saturate(160%);border:1px solid oklch(.99 0 0 / .18);border-radius:var(--radius-l)}.clay-card{background:var(--s-card);border-radius:var(--radius-l);box-shadow:var(--shadow-clay)}.section-eyebrow{display:inline-block;font-family:var(--font-body);font-size:var(--text-caption);font-weight:var(--fw-allcaps);letter-spacing:var(--tracking-allcaps);text-transform:uppercase;color:var(--s-primary);margin-bottom:var(--space-2)}a,button,[role=button]{-webkit-tap-highlight-color:transparent}[data-scroll-area]{overflow-x:auto;-webkit-overflow-scrolling:touch}.site-header{position:fixed;top:0;left:0;width:100%;z-index:var(--z-sticky);background-color:#fbf8f5f5;backdrop-filter:blur(12px) saturate(140%);-webkit-backdrop-filter:blur(12px) saturate(140%);border-bottom:1px solid var(--s-border);transition:background-color .3s var(--ease-standard),box-shadow .3s var(--ease-standard)}.site-header.is-scrolled{background-color:#fbf8f5fa;box-shadow:var(--shadow-md)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding-block:0}.header-logo{display:flex;align-items:stretch;height:120px}.header-logo img{height:100%;width:auto;object-fit:contain;display:block}@media(max-width:900px){.header-logo{height:44px;overflow:visible}.header-logo img{height:90px;width:auto;position:relative;top:50%;transform:translateY(calc(-50% + 3px))}.header-inner{padding-block:var(--space-3)}}.header-nav ul{display:flex;align-items:center;gap:var(--space-5)}.nav-link{font-family:var(--font-body);font-size:var(--text-body);font-weight:500;color:var(--s-foreground);text-decoration:none;letter-spacing:.01em;transition:color .2s var(--ease-standard);padding-block:.25rem;position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:var(--s-primary);transition:width .25s var(--ease-spring)}@media(hover:hover){.nav-link:hover{color:var(--s-primary)}.nav-link:hover:after{width:100%}}.header-actions{display:flex;align-items:center;gap:var(--space-3)}.header-phone{font-family:var(--font-body);font-weight:600;font-size:var(--text-body);color:var(--s-secondary);text-decoration:none;transition:color .2s var(--ease-standard);white-space:nowrap}@media(hover:hover){.header-phone:hover{color:var(--s-primary)}}.header-cta{font-size:.875rem;padding:.625rem 1.25rem}.hamburger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;background:transparent;border:none;cursor:pointer;border-radius:var(--radius-m);padding:var(--space-2)}.hamburger-line{display:block;width:22px;height:2px;background-color:var(--s-foreground);border-radius:2px;transition:transform .25s var(--ease-standard),opacity .25s var(--ease-standard)}.mobile-drawer{position:fixed;inset:0;z-index:var(--z-modal);background-color:var(--s-background);padding:var(--space-6) var(--page-margin);display:flex;flex-direction:column;gap:var(--space-4);overflow-y:auto}.mobile-drawer[hidden]{display:none}.drawer-close{align-self:flex-end;width:44px;height:44px;border-radius:var(--radius-m);display:flex;align-items:center;justify-content:center;font-size:1.25rem;color:var(--s-foreground);background:var(--s-muted);border:none;cursor:pointer}.mobile-nav-list{display:flex;flex-direction:column;gap:var(--space-3)}.mobile-nav-link{font-family:var(--font-heading);font-size:var(--text-h3);font-weight:var(--fw-h1-h2);color:var(--s-foreground);text-decoration:none;padding-block:var(--space-2);display:block;border-bottom:1px solid var(--s-border);transition:color .2s var(--ease-standard)}@media(hover:hover){.mobile-nav-link:hover{color:var(--s-primary)}}.mobile-nav-cta{margin-top:var(--space-2);display:block;text-align:center}.mobile-phone-link{font-family:var(--font-body);font-size:var(--text-h4);font-weight:600;color:var(--s-secondary);text-decoration:none;text-align:center}@media(max-width:900px){.header-nav,.header-phone{display:none}.hamburger{display:flex}.header-cta{display:none}}main{padding-top:var(--sticky-header-height)}.site-footer{background-color:var(--s-secondary);color:var(--s-secondary-foreground);padding-top:clamp(3rem,6vw,5rem)}.footer-inner{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-6);padding-bottom:clamp(3rem,6vw,5rem)}.footer-brand{display:flex;flex-direction:column;gap:var(--space-3)}.footer-brand img{opacity:.95;max-width:180px;background:#fdfbfa;border-radius:var(--radius-m);padding:.5rem}.footer-tagline{font-family:var(--font-body);font-size:var(--text-caption);line-height:1.65;color:#a9c1d6;max-width:36ch}.footer-phone,.footer-email{font-family:var(--font-body);font-weight:600;color:var(--s-secondary-foreground);text-decoration:none;font-size:var(--text-body);transition:color .2s var(--ease-standard)}@media(hover:hover){.footer-phone:hover,.footer-email:hover{color:var(--p-brand-400)}}.footer-nav-heading{font-family:var(--font-body);font-size:var(--text-caption);font-weight:var(--fw-allcaps);letter-spacing:var(--tracking-allcaps);text-transform:uppercase;color:#94b2cc;margin-bottom:var(--space-3)}.footer-nav-group ul{display:flex;flex-direction:column;gap:var(--space-2)}.footer-nav-group a,.footer-nav-group li{font-family:var(--font-body);font-size:var(--text-body);color:#a9c1d6;text-decoration:none;transition:color .2s var(--ease-standard)}@media(hover:hover){.footer-nav-group a:hover{color:var(--s-secondary-foreground)}}.footer-bottom{border-top:1px solid oklch(.4 .05 245);padding-block:var(--space-4)}.footer-bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.footer-legal,.footer-credit{font-size:var(--text-caption);color:#7b92a6;max-width:none}.footer-credit a{color:var(--p-brand-400);font-weight:600;text-decoration:none}@media(hover:hover){.footer-credit a:hover{color:var(--s-primary-foreground)}}@media(max-width:900px){.footer-inner{grid-template-columns:1fr 1fr;gap:var(--space-8)}.footer-brand{grid-column:1 / -1}}@media(max-width:600px){.footer-inner{grid-template-columns:1fr;gap:var(--space-6)}.footer-bottom-inner{flex-direction:column;align-items:flex-start}}
