.header[data-astro-cid-37fxchfa]{position:sticky;top:0;z-index:100;background-color:var(--white);border-bottom:1px solid var(--stone-200);box-shadow:0 1px 3px #0000000a}.header__inner[data-astro-cid-37fxchfa]{display:flex;align-items:center;justify-content:space-between;height:70px}.header__logo[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:6px;text-decoration:none}.header__logo-mark[data-astro-cid-37fxchfa],.header__logo-ltd[data-astro-cid-37fxchfa]{font-family:var(--font-display);font-size:3rem;font-weight:800;color:var(--purple);letter-spacing:-.03em}.header__nav[data-astro-cid-37fxchfa]{display:flex;gap:var(--sp-8);align-items:center}.header__link[data-astro-cid-37fxchfa]{color:var(--stone-600);font-family:var(--font-display);font-weight:500;font-size:var(--text-sm);text-decoration:none;padding:var(--sp-1) 0;position:relative;transition:color .25s ease}.header__link[data-astro-cid-37fxchfa]:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background-color:var(--amber);transition:width .3s cubic-bezier(.22,1,.36,1)}.header__link[data-astro-cid-37fxchfa]:hover{color:var(--ink)}.header__link[data-astro-cid-37fxchfa]:hover:after{width:100%}.header__link--active[data-astro-cid-37fxchfa]{color:var(--ink)}.header__link--active[data-astro-cid-37fxchfa]:after{width:100%}.header__cta[data-astro-cid-37fxchfa]{margin-left:var(--sp-4);padding:var(--sp-3) var(--sp-6);font-size:var(--text-xs)}.header__toggle[data-astro-cid-37fxchfa]{display:none;flex-direction:column;gap:6px;background:none;border:none;cursor:pointer;padding:var(--sp-2);width:36px;height:36px;align-items:center;justify-content:center}.header__toggle-bar[data-astro-cid-37fxchfa]{display:block;width:22px;height:2px;background-color:var(--ink);border-radius:2px;transition:transform .3s ease,opacity .3s ease}.header__toggle--active[data-astro-cid-37fxchfa] .header__toggle-bar[data-astro-cid-37fxchfa]:nth-child(1){transform:translateY(8px) rotate(45deg)}.header__toggle--active[data-astro-cid-37fxchfa] .header__toggle-bar[data-astro-cid-37fxchfa]:nth-child(2){opacity:0}.header__toggle--active[data-astro-cid-37fxchfa] .header__toggle-bar[data-astro-cid-37fxchfa]:nth-child(3){transform:translateY(-8px) rotate(-45deg)}@media(max-width:768px){.header__toggle[data-astro-cid-37fxchfa]{display:flex}.header__nav[data-astro-cid-37fxchfa]{display:none;position:absolute;top:70px;left:0;right:0;flex-direction:column;gap:0;background-color:var(--white);border-bottom:1px solid var(--stone-200);box-shadow:var(--shadow-md);padding:var(--sp-4) 0}.header__nav--open[data-astro-cid-37fxchfa]{display:flex;animation:fadeIn .2s ease}.header__link[data-astro-cid-37fxchfa]{padding:var(--sp-4) var(--sp-6);width:100%}.header__link[data-astro-cid-37fxchfa]:after{display:none}.header__cta[data-astro-cid-37fxchfa]{margin:var(--sp-4) var(--sp-6) var(--sp-2);text-align:center;justify-content:center}}.footer[data-astro-cid-37fxchfa]{background-color:var(--surface-warm);color:var(--stone-600);padding:var(--sp-16) 0 var(--sp-8);position:relative;overflow:hidden}.footer[data-astro-cid-37fxchfa]:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--purple),var(--teal),var(--purple))}.footer__inner[data-astro-cid-37fxchfa]{display:grid;grid-template-columns:2fr 1fr 1.5fr;gap:var(--sp-12);margin-bottom:var(--sp-12)}.footer__logo[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:6px;margin-bottom:var(--sp-4)}.footer__logo-mark[data-astro-cid-37fxchfa],.footer__logo-ltd[data-astro-cid-37fxchfa]{font-family:var(--font-display);font-size:1.4rem;font-weight:800;color:var(--purple);letter-spacing:-.03em}.footer__brand[data-astro-cid-37fxchfa] p[data-astro-cid-37fxchfa]{font-size:var(--text-sm);line-height:1.7;max-width:320px}.footer__col[data-astro-cid-37fxchfa]{display:flex;flex-direction:column;gap:var(--sp-3)}.footer__col[data-astro-cid-37fxchfa] h4[data-astro-cid-37fxchfa]{font-family:var(--font-display);color:var(--ink);font-size:var(--text-sm);font-weight:600;margin-bottom:var(--sp-2);text-transform:uppercase;letter-spacing:.05em}.footer__col[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{color:var(--stone-600);font-size:var(--text-sm);transition:color .2s ease}.footer__col[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--amber)}.footer__contact-link[data-astro-cid-37fxchfa]{display:flex;align-items:center;gap:var(--sp-2)}.footer__contact-link[data-astro-cid-37fxchfa] svg[data-astro-cid-37fxchfa]{color:var(--stone-500);flex-shrink:0}.footer__bottom[data-astro-cid-37fxchfa]{border-top:1px solid var(--stone-300);padding-top:var(--sp-8);display:flex;justify-content:space-between;align-items:center;font-size:var(--text-xs);color:var(--stone-500)}.footer__tagline[data-astro-cid-37fxchfa]{font-family:var(--font-mono);letter-spacing:.05em;text-transform:uppercase}@media(max-width:768px){.footer__inner[data-astro-cid-37fxchfa]{grid-template-columns:1fr;gap:var(--sp-10)}.footer__bottom[data-astro-cid-37fxchfa]{flex-direction:column;gap:var(--sp-3);text-align:center}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--ink: #1a1714;--ink-light: #2a2520;--ink-lighter: #3d3630;--surface: #f5f0eb;--surface-warm: #ebe4db;--surface-cool: #e8edf2;--purple: #5b3a8c;--purple-bright: #7b52b8;--purple-glow: rgba(91, 58, 140, .15);--purple-deep: #472d6e;--amber: var(--purple);--amber-bright: var(--purple-bright);--amber-glow: var(--purple-glow);--amber-deep: var(--purple-deep);--teal: #2ec4b6;--teal-bright: #3dd8c8;--teal-glow: rgba(46, 196, 182, .12);--teal-deep: #1a9e92;--white: #ffffff;--cream: #faf8f5;--stone-200: #e5dfd8;--stone-300: #d4cbc1;--stone-400: #b5a99a;--stone-500: #8c7e6f;--stone-600: #6b5f52;--stone-700: #4a4038;--font-display: "Outfit", sans-serif;--font-body: "Bricolage Grotesque", sans-serif;--font-mono: "JetBrains Mono", monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1.05rem;--text-lg: 1.2rem;--text-xl: 1.4rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--text-4xl: 3rem;--text-5xl: 3.75rem;--sp-1: .25rem;--sp-2: .5rem;--sp-3: .75rem;--sp-4: 1rem;--sp-5: 1.25rem;--sp-6: 1.5rem;--sp-8: 2rem;--sp-10: 2.5rem;--sp-12: 3rem;--sp-16: 4rem;--sp-20: 5rem;--sp-24: 6rem;--sp-32: 8rem;--max-w: 1140px;--radius: 6px;--radius-lg: 12px;--radius-xl: 20px;--shadow-soft: 0 2px 8px rgba(26, 23, 20, .06);--shadow-md: 0 4px 20px rgba(26, 23, 20, .1);--shadow-lg: 0 8px 40px rgba(26, 23, 20, .12);--shadow-amber: 0 4px 30px rgba(91, 58, 140, .2);--shadow-teal: 0 4px 30px rgba(46, 196, 182, .2)}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-32px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes drawLine{0%{width:0}to{width:60px}}.animate-up{animation:fadeUp .7s cubic-bezier(.22,1,.36,1) both}.animate-in{animation:fadeIn .6s ease both}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.delay-6{animation-delay:.6s}.delay-7{animation-delay:.7s}.delay-8{animation-delay:.8s}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--text-base);line-height:1.65;color:var(--stone-700);background-color:var(--cream);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img{max-width:100%;height:auto;display:block}a{color:var(--amber);text-decoration:none;transition:color .25s ease}a:hover{color:var(--amber-deep)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--ink);line-height:1.15;font-weight:700;letter-spacing:-.02em}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-xl)}ul{list-style:none}::selection{background-color:var(--purple);color:var(--white)}.container{width:100%;max-width:var(--max-w);margin:0 auto;padding:0 var(--sp-6)}.section{padding:var(--sp-24) 0;position:relative}.section--dark{background-color:var(--ink);color:var(--stone-300)}.section--dark h2,.section--dark h3,.section--dark h4{color:var(--white)}.section--warm{background-color:var(--surface)}.section--cool{background-color:var(--surface-cool)}.text-center{text-align:center}.section-line{display:block;width:60px;height:3px;background:linear-gradient(90deg,var(--purple),var(--teal));border-radius:3px;margin-bottom:var(--sp-6);animation:drawLine .8s cubic-bezier(.22,1,.36,1) both}.section-line--center{margin-left:auto;margin-right:auto}.subtitle{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.15em;color:var(--amber);font-weight:500;margin-bottom:var(--sp-3);display:block}.btn{display:inline-flex;align-items:center;gap:var(--sp-2);padding:var(--sp-4) var(--sp-8);border-radius:var(--radius);font-family:var(--font-display);font-weight:600;font-size:var(--text-sm);letter-spacing:.01em;cursor:pointer;border:2px solid transparent;transition:all .3s cubic-bezier(.22,1,.36,1);text-decoration:none;position:relative;overflow:hidden}.btn--amber{background-color:var(--amber);color:var(--white);border-color:var(--amber)}.btn--amber:hover{background-color:var(--amber-deep);border-color:var(--amber-deep);color:var(--white);box-shadow:var(--shadow-amber);transform:translateY(-2px)}.btn--teal{background-color:var(--teal);color:var(--ink);border-color:var(--teal)}.btn--teal:hover{background-color:var(--teal-deep);border-color:var(--teal-deep);color:var(--white);box-shadow:var(--shadow-teal);transform:translateY(-2px)}.btn--outline-light{background-color:transparent;border-color:#ffffff4d;color:var(--white)}.btn--outline-light:hover{background-color:var(--white);border-color:var(--white);color:var(--ink);transform:translateY(-2px)}.btn--outline-dark{background-color:transparent;border-color:var(--stone-300);color:var(--ink)}.btn--outline-dark:hover{border-color:var(--ink);background-color:var(--ink);color:var(--white);transform:translateY(-2px)}.btn--ghost{background:none;border:none;color:var(--amber);padding:var(--sp-2) 0;font-weight:600}.btn--ghost:hover{color:var(--amber-deep)}.btn--ghost:after{content:" →";transition:transform .2s ease;display:inline-block}.btn--ghost:hover:after{transform:translate(4px)}.contact-bar{display:flex;flex-wrap:wrap;gap:var(--sp-8);align-items:center;justify-content:center}.contact-bar__item{display:flex;align-items:center;gap:var(--sp-3);font-size:var(--text-lg);font-weight:500}.contact-bar__item a{color:inherit;border-bottom:2px solid transparent;transition:border-color .2s ease}.contact-bar__item a:hover{border-bottom-color:var(--amber);color:inherit}.contact-bar__icon{width:22px;height:22px;flex-shrink:0;color:var(--amber)}.contact-form{display:grid;gap:var(--sp-5);max-width:600px;margin:0 auto}.contact-form__group{display:flex;flex-direction:column;gap:var(--sp-2)}.contact-form__label{font-family:var(--font-display);font-weight:600;font-size:var(--text-sm);color:var(--ink)}.contact-form__input,.contact-form__textarea{padding:var(--sp-4);border:2px solid var(--stone-200);border-radius:var(--radius);font-family:var(--font-body);font-size:var(--text-base);background-color:var(--white);transition:border-color .25s ease,box-shadow .25s ease;width:100%;color:var(--ink)}.contact-form__input:focus,.contact-form__textarea:focus{outline:none;border-color:var(--amber);box-shadow:0 0 0 4px var(--amber-glow)}.contact-form__textarea{resize:vertical;min-height:140px}.contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-5)}@media(max-width:500px){.contact-form__row{grid-template-columns:1fr}}.bg-crosshatch{position:relative}.bg-crosshatch:before{content:"";position:absolute;inset:0;opacity:.035;background-image:repeating-linear-gradient(45deg,transparent,transparent 10px,var(--ink) 10px,var(--ink) 11px),repeating-linear-gradient(-45deg,transparent,transparent 10px,var(--ink) 10px,var(--ink) 11px);pointer-events:none;z-index:0}.bg-crosshatch>*{position:relative;z-index:1}.bg-dots{position:relative}.bg-dots:before{content:"";position:absolute;inset:0;opacity:.06;background-image:radial-gradient(var(--ink) 1px,transparent 1px);background-size:20px 20px;pointer-events:none;z-index:0}.bg-dots>*{position:relative;z-index:1}@media(max-width:768px){h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-lg)}.section{padding:var(--sp-16) 0}}
