:root{--paper: #f2f5f5;--paper-alt: #e8eeee;--card: #ffffff;--ink: #0f2226;--ink-soft: #41585f;--brand: #0f4c5c;--brand-deep: #0a363f;--brand-soft: #6b8f97;--brand-soft-ink: #567a82;--accent: #e8a33d;--accent-deep: #c87f1f;--line: #c7d6d6;--line-strong: #9cb4b8;--radius: 4px;--radius-lg: 8px;--maxw: 1140px;--header-h: 78px;--shadow-sm: 0 1px 2px rgba(10, 54, 63, .06);--shadow-md: 0 10px 30px -18px rgba(10, 54, 63, .45);--ease: cubic-bezier(.22, .61, .36, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 18px)}html,body{overflow-x:clip}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,sans-serif;font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;position:relative;overflow-wrap:break-word}body.nav-locked{overflow:hidden}h1,h2,h3,h4{font-family:Space Grotesk,sans-serif;color:var(--ink);margin:0;line-height:1.22;letter-spacing:-.01em;text-wrap:balance}p{text-wrap:pretty}a{color:inherit}img,svg{max-width:100%}.mono{font-family:IBM Plex Mono,monospace}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px;position:relative}@media(max-width:640px){.wrap{padding:0 20px}}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:2px}.on-dark a:focus-visible,.on-dark button:focus-visible,.on-dark input:focus-visible,.on-dark select:focus-visible,.on-dark textarea:focus-visible{outline-color:var(--accent)}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.reveal{opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease);will-change:opacity,transform}.reveal.is-in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}.grain{position:fixed;inset:0;z-index:200;pointer-events:none;opacity:.035;mix-blend-mode:multiply}.grid-bg{background-image:radial-gradient(circle,rgba(15,76,92,.16) 1px,transparent 1px);background-size:26px 26px}.crop-mark{position:absolute;width:22px;height:22px;pointer-events:none}.crop-mark:before,.crop-mark:after{content:"";position:absolute;background:var(--brand-soft)}.crop-mark:before{width:100%;height:1.5px;top:0;left:0}.crop-mark:after{width:1.5px;height:100%;top:0;left:0}.cm-tl{top:18px;left:18px}.cm-tr{top:18px;right:18px;transform:scaleX(-1)}@media(max-width:760px){.crop-mark{display:none}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:12px 24px;border-radius:var(--radius);font-family:Inter,sans-serif;font-weight:600;font-size:14.5px;line-height:1.25;text-decoration:none;text-align:center;border:1.5px solid transparent;cursor:pointer;transition:transform .18s var(--ease),box-shadow .18s var(--ease),background .18s var(--ease),border-color .18s var(--ease),color .18s var(--ease)}.btn-primary{background:var(--accent);color:#241705;box-shadow:3px 3px 0 var(--brand-deep)}.btn-primary:hover{background:#f0b158;transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--brand-deep)}.btn-primary:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--brand-deep)}.btn-ghost{background:transparent;color:var(--brand);border-color:var(--line-strong)}.btn-ghost:hover{border-color:var(--brand);background:#0f4c5c0f}.btn-ghost:active{transform:translateY(1px)}@media(max-width:420px){.btn{width:100%}}app-hero,app-services,app-bookings,app-included,app-process,app-about,app-contact{display:block}section{padding:104px 0;position:relative}section[id]{scroll-margin-top:calc(var(--header-h) + 18px)}@media(max-width:900px){section{padding:84px 0}}@media(max-width:640px){section{padding:64px 0}}.section-label{display:flex;align-items:center;gap:14px;margin-bottom:20px}.section-label .num{font-family:IBM Plex Mono,monospace;font-size:12.5px;line-height:1.4;color:var(--paper);background:var(--brand);padding:3px 8px;border-radius:2px;flex-shrink:0}.section-label span.txt{font-family:IBM Plex Mono,monospace;font-size:13px;color:var(--brand-soft-ink)}.section-label:after{content:"";flex:1;min-width:24px;height:1px;background:repeating-linear-gradient(90deg,var(--line-strong) 0 6px,transparent 6px 11px)}.services-intro{max-width:62ch;margin-bottom:52px}.services-intro h2{font-size:clamp(27px,3.6vw,40px);font-weight:600;line-height:1.16}.services-intro p{margin-top:16px;margin-bottom:0;color:var(--ink-soft);font-size:17px}@media(max-width:640px){.services-intro{margin-bottom:36px}.services-intro p{font-size:16px}}
