/* ============================================================
   GLOBAL VARIABLES - Zero6 brand kit v1.0 tokens
   Source: Zero6-Creative-Design-System/tokens/*.css
   ============================================================ */
:root{
  /* Base palette */
  --z6-orange:#DC6215;
  --z6-orange-deep:#B54A0E;
  --z6-amber:#F5A15E;
  --z6-ink:#0E0E0E;
  --z6-white:#FFFFFF;
  --z6-silver:#F0F1EF;
  --z6-charcoal:#161616;
  --z6-charcoal-raised:#1C1C1C;

  /* Semantic surfaces */
  --surface-dark:var(--z6-ink);
  --surface-light:var(--z6-white);
  --surface-tint:var(--z6-silver);
  --surface-card-dark:var(--z6-charcoal);
  --surface-card-raised:var(--z6-charcoal-raised);

  /* Semantic text */
  --text-on-dark:var(--z6-white);
  --text-on-dark-muted:rgba(255,255,255,.64);
  --text-on-dark-faint:rgba(255,255,255,.56);
  --text-on-light:var(--z6-ink);
  --text-on-light-muted:rgba(14,14,14,.64);
  --text-on-light-faint:rgba(14,14,14,.40);

  /* Accent */
  --accent:var(--z6-orange);
  --accent-hover:var(--z6-orange-deep);
  /* Brand kit: text sitting ON the accent is Ink, not white (also the AA-passing pairing) */
  --accent-on-accent:var(--z6-ink);

  /* Borders */
  --border-on-dark:rgba(255,255,255,.10);
  --border-on-light:rgba(14,14,14,.12);

  /* Glow / shadow */
  --glow-orange:0 0 0 1px rgba(220,98,21,.35),0 0 32px rgba(220,98,21,.22);
  --shadow-card-dark:0 1px 0 rgba(255,255,255,.04) inset,0 12px 32px rgba(0,0,0,.45);
  --shadow-card-light:0 1px 2px rgba(14,14,14,.06),0 8px 24px rgba(14,14,14,.08);

  /* Spacing scale */
  --space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;
  --space-6:32px;--space-7:48px;--space-8:64px;--space-9:96px;--space-10:128px;

  /* Radii - sharp corners per brand kit */
  --radius-sm:2px;--radius-md:4px;--radius-pill:999px;

  /* Layout */
  --content-max:1280px;
  --container-pad:24px;
  --header-h:72px;

  /* Type */
  --font:'Montserrat',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;
  --fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--fw-extrabold:800;
  --lh-tight:1.08;--lh-heading:1.18;--lh-body:1.65;
  --ls-tight:-.02em;--ls-label:.1em;
}
@media(min-width:900px){:root{--container-pad:64px;--header-h:80px}}

/* ============================================================
   RESET & GLOBAL STYLES
   ============================================================ */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font);
  font-weight:var(--fw-regular);
  font-size:16px;
  line-height:var(--lh-body);
  color:var(--text-on-dark);
  background:var(--surface-dark);
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  overflow-x:hidden;
}
img,svg{max-width:100%;height:auto;display:block}
a{color:inherit}
button{font:inherit;color:inherit}
h1,h2,h3,h4,p,ul,ol,figure{margin:0}
ul{padding:0;list-style:none}

/* ============================================================
   TYPOGRAPHY
   ExtraBold 800 display, SemiBold 600 subheads/buttons,
   Regular 400 body, Medium 500 uppercase labels (+10% tracking)
   ============================================================ */
.z6-display{font-weight:var(--fw-extrabold);font-size:clamp(2.35rem,6.2vw,4.25rem);line-height:var(--lh-tight);letter-spacing:var(--ls-tight)}
.z6-h1{font-weight:var(--fw-extrabold);font-size:clamp(2rem,5vw,3.25rem);line-height:var(--lh-heading);letter-spacing:var(--ls-tight)}
.z6-h2{font-weight:var(--fw-extrabold);font-size:clamp(1.6rem,3.6vw,2.5rem);line-height:var(--lh-heading);letter-spacing:var(--ls-tight)}
.z6-h3{font-weight:var(--fw-extrabold);font-size:clamp(1.15rem,2vw,1.5rem);line-height:var(--lh-heading);letter-spacing:-.01em}
.z6-h4{font-weight:var(--fw-semibold);font-size:1.0625rem;line-height:1.35}
.z6-body{font-size:1rem;line-height:var(--lh-body)}
.z6-body-lg{font-size:clamp(1rem,1.4vw,1.1875rem);line-height:var(--lh-body)}
.z6-small{font-size:.9375rem;line-height:1.6}
.z6-label{
  font-weight:var(--fw-medium);font-size:.8125rem;letter-spacing:var(--ls-label);
  text-transform:uppercase;line-height:1.4;
}
.measure{max-width:64ch}
.measure-narrow{max-width:52ch}

/* ============================================================
   LAYOUT UTILITIES
   ============================================================ */
.container{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:var(--container-pad)}
.section{padding-block:clamp(56px,9vw,var(--space-9))}
.section--dark{background:var(--surface-dark);color:var(--text-on-dark)}
.section--charcoal{background:var(--surface-card-dark);color:var(--text-on-dark)}
.section--light{background:var(--surface-light);color:var(--text-on-light)}
.section--tint{background:var(--surface-tint);color:var(--text-on-light)}
.section{position:relative;overflow:hidden}
.stack>*+*{margin-top:var(--space-4)}
.stack-lg>*+*{margin-top:var(--space-6)}

.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--accent)}
.eyebrow::before{content:"";width:22px;height:1px;background:var(--accent);flex:none}
.section--light .eyebrow,.section--tint .eyebrow{color:var(--accent-hover)}

/* ============================================================
   ACCESSIBILITY - skip link & focus states
   ============================================================ */
.skip-link{
  position:absolute;left:var(--space-4);top:-100px;z-index:200;
  background:var(--accent);color:var(--accent-on-accent);
  padding:var(--space-3) var(--space-5);border-radius:var(--radius-sm);
  font-weight:var(--fw-semibold);text-decoration:none;transition:top .18s ease;
}
.skip-link:focus{top:var(--space-4)}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:var(--radius-sm)}
.section--light :focus-visible,.section--tint :focus-visible{outline-color:var(--accent-hover)}
.visually-hidden{
  position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;
}

/* ============================================================
   BUTTONS
   Hover = colour change only. No scale/bounce. Min 44px target.
   ============================================================ */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);
  min-height:48px;padding:var(--space-3) var(--space-6);
  font-weight:var(--fw-semibold);font-size:.9375rem;letter-spacing:.01em;
  text-decoration:none;cursor:pointer;
  border:1px solid transparent;border-radius:var(--radius-sm);
  transition:background-color .18s ease,border-color .18s ease,color .18s ease;
}
.btn__arrow{transition:transform .18s ease}
.btn:hover .btn__arrow{transform:translateX(3px)}

.btn--primary{background:var(--accent);color:var(--accent-on-accent);border-color:var(--accent)}
.btn--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--z6-white)}
.btn--primary:active{background:var(--accent-hover);color:var(--z6-white)}

.btn--ghost{background:transparent;color:var(--text-on-dark);border-color:var(--border-on-dark)}
.btn--ghost:hover{border-color:var(--accent);color:var(--accent)}

.btn--ghost-light{background:transparent;color:var(--text-on-light);border-color:var(--border-on-light)}
.btn--ghost-light:hover{border-color:var(--accent-hover);color:var(--accent-hover)}

.btn--block{width:100%}
@media(min-width:600px){.btn--block{width:auto}}

.btn-row{display:flex;flex-wrap:wrap;gap:var(--space-3)}
@media(max-width:599px){.btn-row{flex-direction:column}.btn-row .btn{width:100%}}

/* Text link with orange underline */
.link-arrow{
  display:inline-flex;align-items:center;gap:var(--space-2);
  color:var(--accent);text-decoration:none;font-weight:var(--fw-semibold);
  font-size:.9375rem;padding-block:var(--space-3);min-height:44px;
  border-bottom:1px solid transparent;transition:border-color .18s ease,color .18s ease;
}
.link-arrow:hover{border-bottom-color:var(--accent)}
.section--light .link-arrow,.section--tint .link-arrow{color:var(--accent-hover)}
.section--light .link-arrow:hover,.section--tint .link-arrow:hover{border-bottom-color:var(--accent-hover)}

/* ============================================================
   NAVIGATION - slim sticky header, darkens on scroll
   ============================================================ */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(14,14,14,.72);
  backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid transparent;
  transition:background-color .22s ease,border-color .22s ease;
}
.site-header.is-scrolled{background:rgba(14,14,14,.96);border-bottom-color:var(--border-on-dark)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);min-height:var(--header-h)}

/* LOGO: text lockup. Replace this <a> block with the real logo master
     (assets/zero6-creative-logo-dark-1000px.png) once an SVG version exists.
     Brand rule: never redraw or recolour the real mark. -->  */
.logo{display:inline-flex;align-items:center;gap:10px;text-decoration:none;flex:none;padding-block:var(--space-2)}
/* The 06 mark. Decorative — each .logo link carries its own aria-label.
   Real brand asset, cropped from zero6-creative-icon-06-dark-1000px.png.
   Declared once here so both header and footer share a single copy. */
.logo__mark{
  flex:none;display:block;width:34px;height:30px;
  background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIYAAAB4CAYAAAA34Yr4AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAADdISURBVHhe7Z1/jHXdVdcfaFK0DFBsKrcEE0sPPzRabsEEKVdr06IjCEUyQqWAk8baJkxpNLWdkmq0nT+Q1DJSoEBGqC2Gqe1bTTuSmqgMxaqlQyhodbTFUjIkrUgcbQXEl4zfz1p77bPOvvve+fHc533fGtfzrHvvOWfttfc+63vWWnuffc7c29raetT5rtTT9f95M1x/zGaz+v2g2SouxPZ8Pv+VnZ2dq/39/avDw8Or4+Pjq5OTk6vT09PKbB8dHV0dHBxc7e7uXi0Wi6thGJ4Suh6ptv+/yhkDdk7jRyu4abbKRPzGqIAAY5+fn189/PDDd+KLiwsDzeHhkYFFQHnBI9Wf++UteGs0xE3anGVvUobj+pjwdWXgUu5mwndlr+QeXuFdgOHs7Kxr5E0wQMHb4H2i7rY9jxXeXcyv9ncWV3vb8Nx4Zz5Yu1sGRIM45Jx1cel7MZ/9424Z9X0xzN7o+hdXu6nsMOvbPPa5zfTRE7pfhtC7vb1tnqFnyAfJeCKAKC/yovBUjwXmnOwuhqvLwx3xtvHDB9tXZ3sLAWP2u6vKHO0uXP5A38Y6r7vzq/kw+2qAM5EXY/yzfem2Ml7uQnywLfCZzadlMlOffcA9gbuwKRUBCNx8z2gtX15emiGR54onlyDXIJ+A+Z1zD7wOZXq6WkaOsgLI12+yn3dhDDY3g8lIe7Ori92tq0vx+e7sane+ddVrH/u4ys2wJrul79nV8fbW1bzYbyJfyhzuqMz+UOS9zOFiS6CgzCibywZT3j5a5XdlSCHjhzFgz0jBAQTkuKpx/Sr3y+gojTJdLUU7ZeSXAry9vT0zOoAijPTqCuY48pvs722Zeu3K359XAwOQw8WsXMWNkWVAhYNvPdcV70By+TN9b8+2Xm7nJMnDKmQe6aLUAegod7ozu1o4KmqZLW3nssG0wz7u90SFDoy87kqOHKAkii+2BmyAaANAwbtcl8MAIoHwv9xvn2/L1MeVfyFvEcbCyCcyGF6kbY8ZT/tODEgydALSgYDEmfMyYzm2BaS/fo5HkmyADyDtDlsf4Fwhk+tq6419S4K3ZWiYD69YFzbwDhiN0YhVmijqvyvro2hyEuCeCPAIOVOQ8tu32R/ew/oxzB7f9mtzPJiRt+ezf3VRrvx6FYt15b9EnVi68mnbASGk8S7H27OrofS7th95vrV9olwlA4m69glTnJxSJpfrMcevFVrHEGFglZcIQOgKfb0JF4rGPQgOon27uzsl8Y326dva6tvHymWiLwBqGGa/137PZo+L/ffLbvCte6dKBN1gDgoMtjefXdFW2t1e+YxQ8C4hDxMOBKTneBl0exnqoEwAqXoX8ZGAJDFKmIxxqqvHyFThnsAqtoIirroMhMyEDDyECRaKutbxWmrl1cHJduIg2ru/v2cg9bYBDuUjsLbPTk+U2XtYEzg+F3Do+wm5v+32bRi9nghisGJkXfmjwfy8BDAwuELLp5GgXkouygAkEtSQ9zJehzbwSB/tAUl5xR/MZdqyPeb4tUItWyERSV8GQjAGCDcdxO9VHMRvGeAvkisQCshXYlTCb3TGjGduB9RebZmDFou5gbV6DIBxIbDo+/zM8o6fRh5whC6FgU8bf9+e0dde+Ri7GOzL1OvaTpMvZY41DJ0ASUyCyrFcJuRtaKoQ4mFqDCF7BUgSGssUbtuamePXCmW2AiKGkz1QkGdkLxGNaDlIxngtxkbfbYagMeMJaAASbYPQbe3seBKIY4DsAu9BXQLGpYHj/OpC4FjM5x83HYNCyX3mHRhtPsy+3IemDBvdwHHlm4lL2wLY2ri3xxyHDU0LKGRsS1BLH6KMMfXo+7gd6YhtpGMllu3QtrVlZG4kCJuwaJWnwLi4XBMSRSMyB2FMrt6bAuE6BlQYXPV/Jfqpy9pc2t3Wv6u8CC8RXuPyXCMZfQOO+Xz4MSs/DJ/VnoOb82CJ4GiwERQxolCDvF01hNiI4nk2oogQom9GFDvD1j/xImNfKKcfK4FkCWpbRpy96ypGrgj3BTJDnPyeYQCLKYNKAyqXqxcCEOtGL/fLAK1MZn2BNSW1P9oTtL29sPwCb/GwgHF5rnZdnGnf8ZWSz0+nzDSs3Jyph+nq1mB1RCGK9hh4KaffjCgubFLKy3SBZGW0R9/ySM/pAWl72PqBSR2Je+1tGbkbCUO4/J4xMiii8syQQsaHbzotjnHJU/ACgCiYbfbfxMusmsxq20XeARAs1xAwLvEiAsfJ0aHCk5fDC0b5HrfHMfL2MHsHQ9OaPOrbhqbD1iupd2yXviWvjXsHlqBO5zj6QCplxTY0TWEK3tdIp5QYyxTO7VzHyF5bAJJhf6pnkJuAAgOtMybHMPyRjIEsXkX1vV2u/DNyO2SAL9X+D8bteULRONLoM3pV5pdpR+hp27etnOgczyFAXJ6dGAOSQ41kkPG6baTy2deBBCYRPK1zCW5guBos1Y8825agNt4FIClB3fYiIa/vUmac4xjLdIGUuG3rKkbWC6y4oRIKe7OJ5BSmoG2EysU+GwU05YIxKsDKyeNtCP0y+hlgWp7MGpn9gIkybb9gaEdtuAAc5jUAh9qt3zsKN8gIEE8CFDHPsYqR9aHp9Mr3oamd7LHuIu83u/zKt/kHyVO2HZrC1KEfApL0EkJSHWWk88faMrnsTRn5NQX9pGG89mRzJSIDRXnjUoarG5m2HIybR6eM+pAJF5rouSEH0RaMvy5c4WVCFg7DhJ693R33FgCD8CJwnJ9YQv1c5Mf5jf4QFn12j0IhBMMaMEaDfbl6aHXFVe/1a4RXEtRs5MOY4xBHG60OfQeQkIsyGUgojTLGko+weFOmXFXQHoS4mtsTjGHrkDSVN2UinbyXrXLxt5n0atsDR3xtOQgZG46qjb36Dw764NAH/+8d6XgA4/JUQ3KB4+ighJRh9ukCx+9R/z5L/JntcNaHpkx5jzHf7lGk2U03kstTod1+VwgJeYwd905qmVIu2hojnQCFAWnV0PSWgAimbFGyfADuhRBcd2lClYMhyvZAcXlxaVdsyKnApGyw1b3C+PCkjR25oOXRD2HGQ421QzITXaWsDP+U02N5SAECYFyeHBpIdpSkYhjyHrwGwLCwUsGxPDTFYDaiQHVp31if3TV92bkBqXgXcRma/jRtyf2ibv1YPceh+pfKiKO+2zJli5LpAQgAjCfWmSveComi8sw9IAGUiPFQW6Y2JEg/2adQ8x8wMIyX0fZbom1QlI3ymSH2+0RcyT0sB/Hfexph5fLm3ks58ooLQgleQ8B4WAA5PdyvoxQDA4lxAQXlfGg6vTV+3JlLMPlS3yRBFQOO/c7QlDJs5zmOBkj/KNcxlsv9ux1TviiJnWNjWnfMtozz7l4joF6iCSgwrAmIchmSMeqJ/RifmUyudOpqk0m20Uc9DJ111fpcRdEDh7uF45jnSAUUBRyXlxdXjEZyWStvZRVSNCIJYFyeHBg4dksiarIBCvH2fPaLFwc7MpiMDDDEvbmEXIclqM2V37vZZfagnH7HXdMAhQGpM9IxLnXdldFhH3knhLvNRoExmh0URQPWyWPcAEXI53L6st94k1WJ6jpGf0liX0sdYx/GeqJuhsIjOAC8QHbmCXRmTii0mA/vOiekWDgRMASQk8O9NLcRd2HLXVOMXEBxLs7rJWAM66A1IP163H7HwHbvRN/bs62vpe4oY/JWJoamy3McDqTm/JY23g+jxz7i6rXfUnzBhE8yAleqrtDnto2AZJj/nmXhPESU4FimNBpSudfddNJrHVNX5C9w7hwMsX1iHq0Ao4Dj8PCg6zWgw73dMc84PrDvMdeYPQ65Q/IKM/LoLbjyLYSIs25AMR2ajkCK2+9tGbY1NP2dFXMcT/UiXiY4yt4Po2eiEOrNcIa3CNlgqHe1Yyg7KArZqBSijjZUtMxxuBdWekw7BN6n57oiQYXIUc4tByrgsJtn/ZBi8sPwt/EaDgx5RH0fH+ya1wAcrPK+PNy9YgmdA2OQwQYMpgso+pzaou2jctc0X/k1hOg4MnHx8Hscmk5zkd4cBxx13S+jy5XGhqg1dMktvi83hMIQXiHLwpQPXVk+yvTCTjB1kUMgg+5IPPkGTJGDrALK+fkZ4PjOXGcGhwOyeIwCjJNjn6gLeStDuyV/tK+LBK+BxxA4LsQaln4RS/nPBQq8xXkBxrk4D00zKLSjjigyKMYRhbexgqK0IYAUoKCM3363SrxMLTftw/0wOkfl+i0AvKc92WT20dmW26EpBlsoSWvlqQxaBQr0YHTV/0vIryN0AZpVYaiEva+IenNn4WMBoQLDwKFRk4DXykOEjkhAAQbMus3DXeUVh0o4MVphJqWs6aWeWq9YI4qX+4LekjzKwNclqACpnd3s3n7fICCC0VsrgHqGaxNICkK9kLMEotJoqOddYAx800kvOAi9tBcv0+o0r9U5YRB3VX09RniNc7tphu4s69tKLjVUNXAc6fto7wpPcQET9wso7PkOyUJZj+Uj2u8jivHKBxzt0HSs14D0PZO7puICpDdGHcFRbpOM3kklbRhhXsKEmsZA7ZxFCTk/E7Lh2vitK/ilPfdP2EDGKOm/CQcBuNZzwYxYkFvqsMhGKdVrcMv9jEU6H3BDjgwdMFWegGF5Bd7CgLG4Otuby2Cz9yJrbUuAZNtGFJE8Ymhxu6wvykyBNM0renMcD8JbwOj2D5GM+trWeG3SSaMR5wrPcjCGMNmaeHklUM/tZ1CE/sxRPjMnIssEAY6e58DbtbogvEYszonvg3Q3dSI715VecgyA4d6CIapCgwy+vz2MQ9NUlm272WUhxAHB0JQrXwnq16DbyqRy/Lbb7wGkwu3K8OCoa9OMbv8Q9ULDchhxWZ80GuUA1KqQ0wsheKY4HvK5nHub9R0PeX2Ynl4YjES4V+6UXKMC4+zq7MSB2srSjjPCSQZGeeyPEJJnN2s5sY8oJNfcfmdoSoloRwbF9nz4hAGpACKtD60r04KjrgfB6PcPUWtsrkCFgG+KBkUBuA0jYYAs6/LLo5weiLzM7TsbHiR09TxT6zUoA+0z5c/qLYHCV3ApnCjZzPph6FijExuVFGCQeGJ0hZAzjmf9MNs2x6G8IpJNeOn2e5Uvk2UKIXVoKnnK5kcMvMztz9NtmXr8Q9QaMIwdTAHGcAo5b85y8CTklIajthdyCCFWoajqT426LVMWHRDeqQ2HkRDnMhAguAQUKZzsy2tGX0N39hgXR4DCcwxCCHra9rMdd03jysfIjCh05X8OJzGXifavnuMwI3kZcdTzIJl6amVtjG5HGMhAvZCDQUI2lEMAppXthZxNcOhrAU6/erJ824LgFE647Z7bxG+7b2LJpxLPAgzWUJjjoc50BXPlz4fZN/WGpjvD1ttqv4t81GFzHEpkMyh6d03v4lXvwtRlJC/wwfZKI2ZzzBvkBaAVIef5HMuK4etCzibdYg0RK4bcuR8mL3Emt2IxMCu2uOUeJx/53Z1tvwVfwgjAON3fkcH8XLQ6KXuyR15RhqYyMABhRFEKTMqUoekbIkFtgPQTUYfxpJ4Hy9RntM0JaE5m1wtwMps4HkPaLMdvge3H145yiuwmGSJ8LYFc+YSqXJI9ZGFOAsa5EtBhmD3L2q8r/6LcK2HGk+Eqcxisz6Ss92Ha54Md1a3E1AHh7De7/ERbGbHJU06/u+tDGyABoKjnkWDqNGrDAyc2Jp1qR8p36wUiZ4jjMNQbjdQwskFPkTna0M5rEBZz+2CIdRmEkgAGS/sW8/kvcOxEeYXdeo+hqpgZTztl0pX18Vsjio/b/AbJo4zrQ9OBu6Z/2YtMQYGOydC0gGJ5HYfLR12PBFOvUet+AcZ8PryKY7Uz5bvNRer8RTkOQzwvmuVc5/y7TbbIbZr9RC7nGaenJ8vA0DZT4RNgiBfz4ec9hJyUqXDn04NdYv4T8JpZl/dFdSrEWAgpBrYQ0gxNc93b89mHbJIM2QIMQolCyAnnyMnLPWrAaJPEkjd8Pse8Q95A7fu2JTdd1lFOOi46OFzWGZWG3K25WWfZcnQIL5brPuutvZCshR0DhT9whMfY39NVTwipN88Ors4VRnaUIKK7bT/bcfudW+gBjPV3TeV5bWha8orqMQblMNtXx8pTeD8XdUr2c628ONf7oDjqMuollFkoEjtd8W9tgRFrQHPDoVYn7j10htyd+BpwQISOXDfhr5WjHTZkbYBhC4FJOBmJlDByIA/iNl4Ghd9+H0MIXG6/P5m2INPmIktD0wqMwso5OG5gExtQthfc2bU7xw/ag1CH0bXAKIICxr+9KTBa4wAMOpTl7sS25nI1OFbV3crRji4w8kJgMZNbNXnMBhbLUF9hN9VizYSYvGJ3Pvstk1e5FhR5aBqjkMoFJP6KpGDlKwESARCQcNeXNrn+ab82weg1ugUwfvFRB8Y1vKruVo52rPQYJZScy2Moqfwf6Fxqt7aPySvwFpZb+JqM1XdNVd8we2PkFeEt+GZFFkNUOPZPwcJT7P4wkuUxAgnDYkZI6F1q230y+ow2AYysGFplnE13ouV1dWemHdcB40CjEPR5m6dG5t2Zdu8Eb4Gx5P6Pd5QTlHOFTM0rxDHl3d41ZX2ows7v1+jlBUo8T3mnBfkJ90gMJIChgmT0JOahBDI8iMD7Ea9v2se7MrqMbgGMX7oeGC77qQ2M4yuGqxgTasOBQsgLL7gNb97CgeG337fs6bo4ZyZfykxWhhdD5zmOTFTLrKeA8sMAh1nQiTcpvwGIAU0ehASYpDbqvR9Gh9EtgPG++wkloTPkHgSvqzsz7VgFjHPlFts6hq62vWzbTbUjv/3u6zLmK997wbaGpr9qcmFYgQJDy1P8eYrUMmJ+GzMuLp+ARx7lLxGmAMkUIP6ylMsDgZMbexFeUptvy9YOaC0w1MEQFDB+biUw0lUF9Y3jukLuQfDquqdytGMxn/+GAcMW64zAONjbraBovYWFEKbIeZZEwCAp5NVIHkK8f1HGjeMhxHKQMKiAsTy72Wd9mBjELzwJ8yOEmgCHc4QXRjDz+wKH1QvdwmO89zpg0Bioa5yiKzdi07yy7lZOXWLBTkxwAYy4X4JLhiagECuE/KlzZkEZiZi32NZVuuD2+z8w+aZ//I4Xs8WVDdtDy14DhWq56ziIX/Ig30guEnkIej3/wHss/Eaf2k+5aM9Nuda1CWBg9Ky0Z5zQlRuxaV5Vtx+fGu305NiAEaDAY+ymu78hG/KEkIfxFuQWsF2daQVXKsNvf0PvdGjKCISVXQLfE+bDsCuwPRMghhFhfdTfPdYHTbRcZHfY+s0cXrwuco+5jVxunndM2250C2D88/sCxh0RfBvu1l0nuMY2+v2hS8sxAhjH5QGkto0mj3fhhlpZjwGzNnPVCq75bPbU8VlTv5KNCSmARaBy3rk6EzOlfry3YzOe5Am0VVrXgsSOi3inOI8VkLe04GAm9bZJqesW3QIY/+a65BPjQ6uu2pB7UNyruzfzGS9n8+Tz1B5kZn0n5XMIcd66d3bks6C+gmvXDMqVb/Kco1xG2/np9z6PocVCgQCDvI1cBBiAwt3axTC8xc4odXRYHxw178FQ18CRQssIDpef9qvPphe6BTDe/6kBjGl/MjAgW9aHt4hFOmJercSxtn1sH+hKfvhU3oJ5C0YjAgZGo6ccz2X4nV9XAAgqAFYyIHF27+KgwaiAhJDA1DuAUwX639gGlvfgk6fUeuDAu3mON/ZtFZtOiGc484lcA4xrp8RDth9K/HhuxKbZ6m6AHsCIuu1RxfAWAgfv4FK8fyll85WP/GI+/KxNeOEtyiMEvljH+5n7Q1lyhvZ1BfEbxmhnzEukuQmTM69R5I0zQAS0QwHEh6O/pkr139uX2dojVt7xyQBH6AccR4AZ2dLeVRy6bgOMa6fE13kMjoXcg2Kvuw8MyJcYFG/BMFXMowMca9vG9rGtyziqi3XwGnvr5jhqCJFRi2EYheDmd4atD2wPW9+90IhC/Dz9foX2/QuO7S98xrMmkg1IHCDuQfBWo/eYMvsggePDJLqUG8HhfxUJudzulk0PdAtg3GeO4bpyIzbNUBsacyixJ/nxFnyLeWxgGGb2ro2sh3bu6CTGYh0DhpgEsRpF/Ql5tv0dXNO1m/lNeiOx3e4zFTHj+UHAFFe9TYmbzgDIwsKLEtwvsnZ0Q4uB4xOmQ1zbpLLKjX4bmVWew3RAtwDGz6wDRoQK6NHMMXrAYD9tZdu9BcA4u9pPk1lTXRrOKuF0b+GJ57m8hVz5x1p5+m33QnII0TdGkZHfhzw4sHPUZT+eiZ4wV8FfJQqAhIHNGym8lJnOT6IgvHEwxCd/kiJAUdvFaEryKpT6W/qSyncX6mShEBQw/uWnQvLZ9xgsTmYk4mHEvIVyi2EYvpoy+eqnjXUhcF2XcVCX9tk5aeRZpsfUuBvOuX0H101ZHzTJiG2FnL9aPUjVT6jymU48lSQnOkyP9mEOhrJjOQ9JTLxZmdKH3BcvKxqB4UYfgeENC8EbAaPIPjaA4W0FEDZvYaAoYUTh5GCyEj63SyCKN+oAipODK54tWQyzV5h8A4rtYfbQha7e6i3EYwjh/CFXzk3D7FvH+qDKmMz6JDlI9h72G3DYImXKeD25LOHJypUyVk7ezWZska39TmWhZWC4EVXPRFDAeOfNgTG9ah9NYFC3rwMt3kKg8D9FMfxD5DMoaN+45tMX6wCMdbfg2zf2lRBiL4Z38nPIRJNGLd8mfo34+THxpA+T4ZvtHgcpaX06oIu6Ahy8AVBh5X0S7pZVe35ukm/I2/CIpQ9hxdafqQ2XgVGN6CciBAWMd90UGIcdYEQOEif1QbDVXYBxCRBgPIVxJJ28v2t8lGGiQ9v2SkclnRcFGGcajciQX2fyDSj8dc94C31z9YoZXSCLLlZbEYIY4jIpBiPPrCc5ApNPRzrOzTl5pL+BzlWsD9SaBwAcowfwERD3bZSQfiZybTlKTkOKz2/4y150vPQHcFgZKIARRo+ru+8xpqvEH8seYwREAob44vzMXrGEbC5L28xbnGdvcdh4i6k8E0eWWxRQcFVy5/RQehwEftyAo2NumHGK3PbpuE2IMc0uADGZZedRHAYLZh/ENHh4jhEc8gJ1ImvKkLzNE+OurNWt9p5mrwHfBBhVuAgKGG+twLhcD4xsnFZnnNgHwW3dU1bbxbyoLfqVy7LNS1RyGCnewtZNZHl+s4rbrn4Z5HzXb6vzm/htcw5s7wgEMIYzLmCo7Mf8OIkhs6Y+2ykP8oNRb8tQeI4MDur152qRG22oD/MaMUoJeUBpXqPIZf0NMPx9mnS+4zHeQfKWDZ6BkWUfe8BwbwG3YIb5zeIcX5PBYmD48Opwb/mJPGNtEwbs7qkBY2ogN7QbO/bjTYzbWc/KCSTolP66tqJhfdAshrQvmXgBvmVsgeqlyEzKiADTKE89TKot12F0e2D4yf5UBAbT4erHTyK3VI6HpAIYYt7ap4TuExxbyi24HyLXf75HGMnAmIICAHBVc6VqVPEbGnr+LRnzrygZPND2r7Gf44DFwTHqQF9dW5HOb7A+rN3MnFZQUK+MfYyxzWtM5SnBMDq398LfCvRddjxkoZXAEGVBndA3MZS1YZ/JAozpaqeQfWwBY/QW5D4B+FxOI4THc4fV1nziLQSMY3vB/FQ2Yj6uHqMtA8OZq5LJKQHghwZ0WMuWif06bcT/JwOSmBJ3LuCQB2Dksyp3oDwJrwPDyxEiduazD0loSV51fXEA0YEx2N98pzVZrgCjnMQEDI5nQQHj7QAjTjgnf/dGwMg6H11g8LdYkZmUUZs86Tx1YAgUjEhYg4Fs6y2257P/ZiMRnfwMjDAMk1HyCn+hnF6RncjVbPCAzWh/iPJZH8YDHExK6QyryJQh1fctU2MXr2FVJFm+JT8CSbL65iEp5l2yzgQMN/oaYLxzCRi7j3VgjKAo7wH9DmRyGZp8wvQ3o5ECDNZfDMPsacuyPEnmaz0rKMQYAiNy1XMFV+K83JCD8DAH8jYjODy0eKJYruzSFivHt8oRIibyHiJeaccTQxF+Anh4jZ1h9oGQNZp4DHE2YlYmYLz5LsBwndNb3w+Kp3WPoKANPhrxtoY8v+fD8C38hSN/Cs2Zl7+iayKr/imp+z4bhlrSOQKDXIKTXU6plbsL68PK05MYQYzGVi6i4eh8Nvu8pXKChrzGc1uvcdgboYjaJJQbdQCLYyFjwPCJID+Ba4DxY+uB4WWgRx8Y0Z8RGN2Xwai5rPMcw8ixPdRcw0iS5be/A2MKDB5LXPdH6m7L+jA99CY8R76yj3qjCL4ln3MNvi1ElAt2IquvHE4u9X2yMz7ZZmTAMANOgQFlwS4wco6RZFtgtItlHhSPdU+BwTQ/q8I5nqe0OZv2ApUEDO6TzIfZn0A22gvofYjqM5cGDMsxSNwCFNPzcD+sD9NHWGnnKgCkPNe3IjMpI9JI53daIClE/Ocsy28IMAMMH0FxF3fwBUjl+GpgmMxYqYDxRk5wGJuT/9gCRq7b+3NR+hSvQoDaMvZqRxumOjCOBRS64W0twNBvDV1/1RYDCxTOc7si7WSKov89ntbp9cIRflcxpJHNW8d5Dw8R7SgiZHvzFAedu6+Q9D5UdRpzj2f2kxKw4xUY4Q3WeIy/vwSMHEqS7AiMMMwjCwxCI6CIPvVmO/k9nw/f6/nFmHjul5FLKxthxJbuFWCse3Aoyq7naR0t66MZjroR21FEyPLVjjgIEe1QFwJEnpOMwPDXR/rxDjDciB2PkYDhE12PWWDQnwSM3k0z+sefurKn0ACHgHFxctQ8nljk9Zs1lxkY3GdY5S3GNt2CGx3BEIt8ayhhit1DxM9LoOZ2IRshIkBEiOjlGQDLb8e7HHkGN9o4ZrQSGKJcoYDx/dx5DVkmutYDQwAqOh8JYOCWo+5oY/SJleEcy/VDrODK+QWzncov5lmWb+37I+cHPIE2AoOM32rUcWSCQ/9dOeuC9ZFChAPDQ4Rf3S0wFCL+NSAKg/N7e9iazGw6h3dxOfiIPnEAmgLDx/s0EAolkIDxdwgzo+z1wAi5RxUY4ngLYXbdJsvi4ACGhqss54srN2S1QX5hjw1Y4skchoAx+dOZtcxyu+7CWac++F+NGCGCpNRlpsBYzLa+jJxkNHj8mc9Rp7Fk41Z8yPIqh9CzBIwwYieUvNaBMV6J64Ax6nyEgNGp21htjrcQtsDg6TP+pnt4jGniGXJbGtLOFUZGYJRnVv8aOqLfIb8RLjqDoTqBhceQEfEgnmckYIht/WmTOxBecltdp/KmAEbRafmI6jfiD9WGseEKDNGoBGAMrzFgFLmbA2PUyfHa+Q1zr24YDyhQ2wtVAxgxGmBEQuIZ90kOY2LLdLosxKODE2DYRJPXZ316AP1CbzBEYmh5RrmNj1ewNjTAsHwohx3J5cmrrLPmIxUYsx4wzu1ErgHGqwBGnPCbAiPr5Hh0fNO8XHf0x/5e2h/GA1ZglHbw+EAGBn+fBB0AJ/SaTqbBEzB4tUEeFYTsJnkcytIGea1h9lsVGAYOe8fGsyVQ28FvA0aEnWuAAdgyMPA01G10C2B8z92B4fMIHI+Ob5qX6/a2st4zjmdgDMNsdg4gEjDqUHWiV/Gdu6kChv11ZQHjpLnbGbKb5dDvtlBS+b4MDIaaAsbzaGC0w9oivhMwxO4x/Jg9neUGXA+MYT68vAXGyvUYNW+Z6jSZSec3x7VuA8bYH14AG8ezrLzIs1tg7O3E24uLXJHlQaMMDDzGCIxpOzbHo35IwHhPBxjPlECRc35AwDi3CS6dtK/iWFaifX8SA4cshucNwFkuZN0LjcDI90rg5ZNw/xx18+hCBsaJ/ZGaab38lgf80ZjcCmDU92OEXJH1N/TxlLuAIXBYKAnDFdnNc9FfgJGNCEAKMJ4sgSLnbMDQsTrnsQYYkxwjgFGO2RNaZmzzBg4MJWs/xLGshMbiljMwGNFkuZBF52icCrbn2Ehn6QRshqN+gBB1kygfCyhxbJS9d48FwRcGCgcGzISX9Sfkil4W6YbHcF5glGehKOcjm+U4pw4MjDsCYxyVWBsK85t9HMvAAFTWryybRiUBDIbAFRiM8THceTEghs8vmc/MSXcP4MNWrs5WDkJnAAi9zEI+Ui+ZD69GvQCDsGb1luMwtKs2MusZoGDWczGf/2+TNTnvDyeKd4mzittedkI4Edd5jKJz8xznVH3TPyafsscII7qMsz6YDHuC3VtBrsjyHKu1NcvrX32koMjG3IgRBmuBkf8sRTDE0rgABt/Eb+lfkpPH+TjhI7yFh51y27t7Eu6fvd7h1eGlnPuLfyGecs/AKLOezzbZIkcZHgw6i1nPCgxmPuNFK9N2bI51Pgs4zAvsslJsNDa35HW0nndYrVEuMvtZjoexAcn2bOubra1JFgYIkYvArB5zPSIZ8e2MGrpGTEqgyEccGC5PJ6Asxz7+tknIUIZtCZjM9ARshiEATfvNSxXOf1UJuWjjsUAewCC/sFlPGcLaWHQiuxhmrzk/VLi16XAPI9z6PhXHkDW3Y5NMO2jPznz2cXtEIYytUCEv8JHoVzDEjb2bhBzzhDt4oREYdlPQj3unshGvCxHIBGPwXtiBSEBDZ8gKhP+OY+0JuH/2OvFotN/r48Flm8N4hhpl7UI22tjOYdifvpIOO170QjxNxnsx7EmyBAzuru6x1K7ofRAcHoOparzAWTEgow6fYPPjlfXvWCGnegx9e8ixjlU5flN+GnK2FB63RmDAHiJGA5Jkqo563JSJZNg3E8PD2Ou8CwtjzhROIkQhy1DSZOlw50TclamRhNn6UPtx7vVFP1RnAEiyRxd4yUg8BZB8u522IQ/tawjLm3RaYHCHMw9be+26Hw5vsT3M3s/6TYznwIgwYo319hauIacae/WIRMPfn5qEHOndHrb+pgRcGPIQ4Sc0mMZBWRkni78HkkFkISLJVVl943myXq7m6mFK59sTcheGYmIr6uIZkhxGAowQf92IVy0xj2H5hTjfbre2lX4wVOUGWgsMbmf7mgwWwnh/em27K1O/uftdf6otvAWhQTnDn7Y6aWthiIS4DTnMf0hySXYScopen2I3dqFeiJic1KxQIBplPcHUFfjunix6zWsUeYCBN6pyakjvpNyGIfvryyWEwLQphqlQra8wfyiP/IL3bwGMU3lMdFWZ8hsPc0Z+kYCBoWIBsLFAoqv6zSqwAXCMdfOPRwbwFgEKvld5C/b1Qo7lFwkY+nBZHSN8hGyEnCKDiGXzr8Jgo7EvVoYIrvgIJxgdg6yaz+A7hyl0c1XnHKZ/gm7GEN/RZr6jnnZkxdUH8Q5xHmzOcxiT10SXNmmL2+2f5KVsBgoxT6iTufsIAQNwcrVtN9VmPguZ2nd7pn7v1z7tlEfCcNnQi9nW4zkebYWpdzGbfQOADQDRLlaam7JG1vOLJKt+5Duw/lE2MFYYm+/4W2LAi++e7GgIhZ5h9rg4nuUBkk+MhfwUHFD/JK1naBhmn4Nu9xaum4k63tyX25vbw2ouXofg3uLE/npifcdnyHLpiHjS3f6CYgEGz6vKAH+UuF09RjEC4JDn+AkpsPK9Nq9jAGVlxQcaCjMkzqAAhDyiYA2LdhaGYp4j5AkNAtGXuHiW3aqzqFlW4eklIZuEFZ8Ud+PkxiTRqhHHGCKK7BqvAaF7TFpHcJCfKAz9U2SQn5woJnZgO8nlWLmaoB1eNSB9GRRsF53vQKZti0Yo2xe0V4mnAUNeI94ILKGJvMV3CyMl8RTzHKnpkTgLZ8Jt2wnmChRweBDZvBN6Un+sT3DtV97n8vNh9jweR6yeYtt1AwrAWHuP7sKQhtQvsoQ42iJ5Jq/saJI11i7WXUTbKUNfyrXgOkMY0sk8xktUYwsYdRQRSossHSIJxRDhYUqu8ZaePN/cV8ngCEDFaIVwZsKFRh1lh4htwHpMjqBytDEAil7a38uNYOgIb4FsAQXfPJ7YykN4EV61xJ+3CmD4+66cuE/hcTqDQ1eirnSebeWlKh6+xHyb7gBG3odrnz2NxcZ2L4b8pQLCQYGRASOU22msfTyOmA1dks43lQJVlt/yeN8eISdkY8o8ZMcCtk/JjgwURgsDAoI47oVsU15AXsPkRiAxZc6xkK1lyj5mIZlMq+DASPodRgZsyGBcgezD4ncDBDzUvjyShw1fjOxgCHZPEaCAav3lUkCPhZDkLXgfRts/GOJpNHtbH8A49DDicwcjCRxPC3DE1eoAce8BQDD4jkC2GIZXCwBPKq9cWih/+eCevAt/pchvzo1XfDAufvLYY2pjtJM3EVsyXMCEjiO8SynTyrNWtRNyvjjLph9WxkNEY+xVSSgntOYlksXgGK0rX/TzBaDcMwEO9zhep4+GMHqs8A4OMESeEm0MHQAqwh6U66Z62spkF0knoHBOd1NDlrOpb+UuA38TzcKIAWPX/oqQKRcha4pFgIUrmiuvGhYjmaG0T0bDi/hQN3OZDwmPs33PvwufqPzeIFBYLZDXGW2FlNO8yYbOUaeVM0PXB6aqvHguniadW2PISfKTQtAkRFSAjA/rtPIYw0czo7EwYjsiKOKVKAeoAhBR3xIXvZkzIKibZHI+DLb+EhrrLG0VURc31MJbnMtbxB/5h6p86SfvD/cwMgJj8lL5wvoweYaEJIbH6aqtxir7llhAOAUMjcyp+EhDUiWDr56ctqZeAfJJBi6AVcpz9fcSVH5DPHyU5UvIeasdnMqnjUKRKDr7aGKV14B4R4bJVnD4lR9XcC6TywE2AMRwFg/SGt1/LzNyDohDCx1VZ9Of2O+LnQsoCrPWUznNG6xYyOvK51tu/tvxFvwh3gDFGSGBpfWmcdQfHIT3CIBgpDA2QKlg6TBgwEPwTg1eqBJhwIjfTV224FejIMtHqh7PRWrZpoza9oXMueR626SzyucN2yEKr+GGPq0GU0b/x5cUlG1OfhhtzCHG1dm5jBUrjYHYhxyzkRibugEKxg8+0Tb78Q4AdzGf/yblgqb6nSEA3YJiVcIZZY6463qiXMu8hY9IWMCCC44HiiXcLRuEB9GV+AMHBSQY3YHiYAkgcIwJK+5RkMxOAAGht6kDUPASNvKYbGRynTEHGsvZt/ZEgnqqOr0N5i1+ZBRP9eQN21HIE0sHRXgNRgIcG+VN1Gg2DJ/h+Ua5ojGAeY7z7i18eKKgEPsFwD8zX8x/e7G9MI8AaJSEvpc5CyvXUNaZj8daVsBgYC3Mi19DrC1n7+Fiity8hQPjVN7CDCsmnsfbbVR6Wt7Y1FRik9EEBlNo+DoZ4g3iHxd/r4AwJ+YvgaFQ1m36RQxL8RTZwGHk7WHr75kQ1JRjqjxmUIPxTjV/SfJWJm/UnSLmDXDxAQwHB2+kmc4Q6sPkIRnvIc9PvAxXOuUph0cJ3VE2tu3sjWpuRpRNerK+8HjkFNH2AAWLdtp8ycqVb2698zYdA4aYdRhMHGGEYJJJwKLEz1/ymvSM+uzInWmiqxB/9YCcAq8TbQlQKPz8QhGzuseylovcI4RYKCtlSoL6TC8gSvVZubxRdxbiSo3YbydXBscLCABv53grD+nYr+BZogyeg98kpAClO5xEh/dhypmafbksxYPwTrQRT5FBwYiE1x30QAFDTIvz/q1zgSOAwWMDO7Ot1+MxahgAHLpiMVKdzIKyvrXsssGtfN0uJC/xyjzplUFBKJL38eQRKuVDB9/8lceacJZyDIFrDalMKtvdWUr42k03sid8nHS+TU7UykMCx+vJFdwwo8cJgx3pap4vFraELijXHxxgsJ/NMfZlAsTmJQgdqmcEhepXewkr60DBsNVCSCSdYpbzzWezZ9jxYeuCq8yu1jCOvgktuHau5gqQ0uhJHb6rMPviO8uIrdNOqvv3HTLpxdCWfCJGMNQvLiOXP1fErehUl8Au4JqHS6BgjiMmy3KZzKt2WgGIk+lGdmDAnm/4RBY0lis7RMoHtjBGeAyMRFm+KU94QQdXeBjstkQ5Qht60IfeAISBQh4Ojwe4rX0QzSztjX1KZD9i90yOCSExGtm/4rFEExAhKSN8JwneBBx2spmrACBMh9urn19Y68vEvpYbAlw8J8ucCY9BAohaTzEszOhjTDSdXOWol+UA1q7aTg8h6sefNQFIsvl8BK/aWZVD8gDv4uRPwVFejVjIy5WNQuzDcMyGOjjG8nB4EL7RzwiizHi+DqPHPQSYbe3/QY4jh3wun4EXdTnwxtAFhT4YEoCfbrOg8ha8SSc8RvwJipYwBqMIH2WM4LD5CG3bghpd4XXGU55Ew99dZjsxeq6fbe1/nIDwUd4lzkNNZ6z9KHMTodeMCpthPQzUKx6SHtj6BItsNpTQYzq8PN/yfP/LBArl9mTu7gzWRynOegd19oR8YzQs4MCbFJFSpmwkkkE/hveI8i1A2A4jo5Pfbmw3cBznmM+A+vMqWY/rdaYewDMfhu8qTbC+TPomAmws78NbnCkvMo8h5u+rtnlD7hf+jdEFrhxwYLA48TFhxU0smxZXmOFWfbxQnlc1ZWZ/nQUtw08HwwgIvgEEgNTV/jVLp9jaV1jEm/08SY02OU/yikL5nGTu7Zj8zsTV78noFBwMU01eVMtNi9p+nuNgdOIACaNLT9I3GnkERZYlX+jLAYhj0x9zJ0HRn2BIQ+Kn8Ad5AxQBjNODPXs/pr82UdSWLeWhPNtpRiwAySAJA9tx2IDkSeyy3PIsaALEi6eRw9uS+wTZyEVgjDqD0TGWpyzFp33L3N0ZrA9TkMnB4UYJA3E1Y2yd7CciU8t3iP0YLsLBaOAOF/0mM5EbwcKxCEPoXarXupH6JOLZEf66ESGkgkKjkVPlFSyk5UQSm+093lai0dFUwVyEXPR/ZV7AQkzi0fjjtu8bQdPKwDbxJdAJEC9rUgkna0dh21SIYwIr5RTBtGsaeuy/lVnF3Z2Z9eHKCrGPKfCp59BJLq6/HY62JzGTgPRVyJMcxownAKtgqEAYAcJx5MhvuI1P+ZiRbcn7UNpRCGDbjTR0CgwBipPDA5vVzIblJLP+gplGyPUFs227KyG20IdA8h9x2xikznquYY4jhzweSGHqR/mzE436CVmfSgM0evn8E+VEDorRQ8F4Cl/aNxJb074s86qdS9uZ2OdJ5RQcAIPQkiezoKZ4lywRG4av5arH2My8Ukfwjra3lUhynHUbK0cy1tzcdt+NPODjtjvegjBCfnEGKAQy1l7sDvfec6qsfTLiYFQg18zaCtc01T/WUSoqxBZ9KjOeL5ax/5kA8zExCSD8f8T/aXvY+rsC0zMAX8HfCvJ6ap2+x0KH5SmWrDagEMhGUJQyfBUd67i7s2V9FI1TwoBcvfmKhgEH39l7RKdK+x4Mobu02eoqxJDY2sWMLACuoDi+OtbwVKHFHt8Dalyx+Qq33wIKcZs/aKur8wuRjXr4HtmObJbaOgpppPOCY/MSy0kmbaYfS0AzFa4nztEq7u7ssT5Mcdt5Ftb61HkGx+g9AE6bDFZdGyJvXmpnIeql/pjfwEuMnsIfMJL3+f4ibkRpXd3vioQys40alO0zacTws1Kp26ovuzZKSamA+Xkx6cV609ZL0G61/z1L7WBHbed4rvJ25u7OHuujKLdqJqQQ8ASSv2locY5h5rEMwZVruloq6pf0531LrA9xqw794cmol/oB6qnlLmofv5VX8La+aThyffYtknt/KjE/n/Tg81257zJPoSv3G61AkLWpc95Mv0mMxHblcjw4EZuLYXgbcysxC+ptmYKC9ipsPctLTaltU97ucXdny/pomJq8wiDkMIivrZiCIwOE3zGkNN09Cv3i5XaYxBLN5/OHACf6R0BQdwKEmNXjkxAHlXq8zrECMvm9Yet3jxNAcNMnCzdIeBASVP6OmXuRsXxRfHNOZWmPQPf0uvSvAKId0cDMp7DSazLySOTqSx3iOJ/ruLtzHeujcKm1IXmPL2WU4bOdeURRDKTtmBIn3HBlxxpPRilWxzrS4TIL+kESVBJKBwM686RXAEJtEPNmYEZTwzD77KLJyLvT9rEcFPFT3uMLYl1FGAN2gDDj6VPiJIEYMdZ4yrBf78+JJIUd4jh9kld4HQDDM/A+DgMDeqWfugKQwbSH0U87NZ5p2q/xd7s/OO2bCt2GV4EDkuE+mecqRnaDBUi4svOMJ/vGIemRGR7mN2BDR+QvY5kpGEym1Icen+MY73sYXdN3fTiXTnLu5aZfCEBycuocRisg0ZVNUohhme1kevxIxsbg8IFGVzyvwm/2cxw5A0I7A1r0Ont9AKLMcXylt65D1vx+31rWh3Gzb7ojWB9Lwr39tr2COC6AvB+PQIjJcxRTTgY1L+MrxjD6yOMM53K5Vi/AUh6xv2eAsHY2FO1fx/pY6l8ByDdzpRJipiApBsSY1aAa8srINtvJrW+MXrm9IdeW9fIw9RAyqFce7OlrnITaHKyPwm2/8naPuzuvY31MlPt2acwKUpj4AySf5BfuRVpjukErC0QAKbMlkHCVm5ZFL96FEKP6XlqqnpI1d9qf67hH7MWF7w5b//OwC5JiaPFJcBi9cN0uchkIMPrQyySV6vkQ9a05xcUGqd2Fc19a1sfSvrK//qi/W9bH0r7M+hCXhl1DyMtoLyKn8BnPAwsTGNU9SmvwlgMox+YVAAKhAtDJO71t5cQXlNp8G9bHyJ2OcvUy46lh4kM24ynm6g6wLANmyiGDPOUIE2UG9EcAA/qvJWuWPsS5zW1fMutj5b7Jzk2yPhJ725dIx0oi+XpGKRiXWU4WBQOaHttMqOQAlsr9e8pbfR1q27RJ1odzQ+xitrHMeH6HjPtOXe0fZdSAsWHAA9u2z4L+uuTeIfnnOxBUR9E3IXZGvYV7bYP1sbTvNtzd+Uhz0Kr9Qd1jad9jifUxaVtst7yuzKPHW/f+L7Z7ONmRyRNhAAAAAElFTkSuQmCC");
  background-size:contain;background-repeat:no-repeat;background-position:center;
}
.logo__text{display:flex;flex-direction:column;line-height:1}
.logo__name{font-weight:var(--fw-extrabold);font-size:1.0625rem;letter-spacing:-.01em;color:var(--z6-white)}
.logo__name span{color:var(--accent)}
.logo__sub{
  font-weight:var(--fw-medium);font-size:.5625rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--text-on-dark-faint);margin-top:3px;
}

.nav__links{display:none;align-items:center;gap:var(--space-2)}
@media(min-width:960px){.nav__links{display:flex}}
.nav__link{
  position:relative;display:inline-flex;align-items:center;min-height:44px;
  padding:0 var(--space-4);text-decoration:none;
  font-weight:var(--fw-medium);font-size:.9375rem;
  color:var(--text-on-dark-muted);
  transition:color .18s ease;
}
.nav__link:hover{color:var(--z6-white)}
.nav__link::after{
  content:"";position:absolute;left:var(--space-4);right:var(--space-4);bottom:14px;
  height:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;
  transition:transform .2s ease;
}
.nav__link[aria-current="page"]{color:var(--z6-white);font-weight:var(--fw-semibold)}
.nav__link[aria-current="page"]::after{transform:scaleX(1);box-shadow:0 0 8px rgba(220,98,21,.7)}

.nav__cta{display:none}
@media(min-width:960px){.nav__cta{display:inline-flex;flex:none}}

/* Mobile menu button */
.nav__toggle{
  display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);
  min-width:44px;min-height:44px;padding:0 var(--space-3);
  background:transparent;border:1px solid var(--border-on-dark);
  border-radius:var(--radius-sm);cursor:pointer;color:var(--z6-white);
  font-size:.8125rem;font-weight:var(--fw-medium);letter-spacing:var(--ls-label);text-transform:uppercase;
  transition:border-color .18s ease;
}
.nav__toggle:hover{border-color:var(--accent)}
@media(min-width:960px){.nav__toggle{display:none}}
.nav__toggle-bars{display:block;width:18px;height:12px;position:relative;flex:none}
.nav__toggle-bars i{
  position:absolute;left:0;right:0;height:2px;background:currentColor;
  transition:transform .22s ease,opacity .18s ease;
}
.nav__toggle-bars i:nth-child(1){top:0}
.nav__toggle-bars i:nth-child(2){top:5px}
.nav__toggle-bars i:nth-child(3){top:10px}
.nav__toggle[aria-expanded="true"] .nav__toggle-bars i:nth-child(1){transform:translateY(5px) rotate(45deg)}
.nav__toggle[aria-expanded="true"] .nav__toggle-bars i:nth-child(2){opacity:0}
.nav__toggle[aria-expanded="true"] .nav__toggle-bars i:nth-child(3){transform:translateY(-5px) rotate(-45deg)}

/* ============================================================
   MOBILE MENU - collapsible panel, no focus trap
   ============================================================ */
.mobile-menu{
  display:none;
  border-top:1px solid var(--border-on-dark);
  background:var(--surface-dark);
}
.mobile-menu.is-open{display:block}
@media(min-width:960px){.mobile-menu,.mobile-menu.is-open{display:none}}
.mobile-menu__inner{padding-block:var(--space-4) var(--space-6)}
.mobile-menu__link{
  display:flex;align-items:center;min-height:52px;
  padding:0 var(--space-2);text-decoration:none;
  font-weight:var(--fw-semibold);font-size:1.0625rem;
  color:var(--text-on-dark-muted);
  border-bottom:1px solid var(--border-on-dark);
  transition:color .18s ease;
}
.mobile-menu__link:hover{color:var(--z6-white)}
.mobile-menu__link[aria-current="page"]{color:var(--accent)}
.mobile-menu .btn{margin-top:var(--space-5)}



/* ============================================================
   SIGNAL-LINE SYSTEM - shared styling
   Thin orange paths, glowing nodes, travelling pulses.
   All decorative SVGs are aria-hidden and never focusable.
   ============================================================ */
.signal{position:absolute;inset:0;pointer-events:none;z-index:0}
.signal svg{width:100%;height:100%}
.signal-path{
  fill:none;stroke:var(--z6-orange);stroke-width:1.1;
  opacity:.34;
  filter:drop-shadow(0 0 4px rgba(220,98,21,.55));
}
.signal-path--faint{opacity:.18;stroke-width:1}
.signal-node{
  fill:var(--z6-orange);
  filter:drop-shadow(0 0 5px rgba(220,98,21,.8));
  animation:nodePulse 6s ease-in-out infinite;
}
.signal-node--b{animation-duration:8.5s;animation-delay:-2s}
.signal-node--c{animation-duration:10.5s;animation-delay:-4s}
@keyframes nodePulse{0%,100%{opacity:.45;r:3}50%{opacity:1;r:4.2}}

/* Travelling packet along a dashed path */
.signal-packet{
  fill:none;stroke:var(--z6-amber);stroke-width:1.8;stroke-linecap:round;
  stroke-dasharray:26 460;
  filter:drop-shadow(0 0 6px rgba(220,98,21,.95));
  animation:packetTravel 9s linear infinite;
}
.signal-packet--slow{animation-duration:12s;animation-delay:-3s}
.signal-packet--fast{animation-duration:7s;animation-delay:-5s}
@keyframes packetTravel{from{stroke-dashoffset:486}to{stroke-dashoffset:0}}

/* Content sits above the signal layer */
.section > .container{position:relative;z-index:1}

/* Fewer, calmer signals on mobile */
@media(max-width:767px){
  .signal-mobile-hide{display:none}
  .signal-packet{animation-duration:16s}
  .signal-packet--slow{animation-duration:20s}
  .signal-packet--fast{animation-duration:14s}
}

/* ============================================================
   HOME - HERO (pure SVG/CSS, no photography)
   ============================================================ */
.hero{position:relative;padding-block:clamp(48px,8vw,104px) clamp(56px,9vw,112px);overflow:hidden}
.hero__grid{display:grid;gap:clamp(40px,6vw,72px);align-items:center}
@media(min-width:1000px){.hero__grid{grid-template-columns:1.02fr .98fr}}
.hero__headline{margin-top:var(--space-5)}
.hero__headline em{font-style:normal;color:var(--accent)}
.hero__copy{color:var(--text-on-dark-muted);margin-top:var(--space-5)}
.hero__ctas{margin-top:var(--space-7)}
.hero__trust{
  margin-top:var(--space-6);padding-top:var(--space-5);
  border-top:1px solid var(--border-on-dark);
  color:var(--text-on-dark-faint);
}

/* Hero dashboard visual - built from HTML/CSS/SVG only */
.hero__visual{position:relative;min-height:340px}
@media(min-width:1000px){.hero__visual{min-height:480px}}

.mock{
  background:var(--surface-card-dark);
  border:1px solid var(--border-on-dark);
  border-radius:var(--radius-md);
  box-shadow:var(--shadow-card-dark);
  overflow:hidden;
}
.mock__bar{
  display:flex;align-items:center;gap:6px;
  padding:10px var(--space-4);
  border-bottom:1px solid var(--border-on-dark);
  background:var(--surface-card-raised);
}
.mock__dot{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.16);flex:none}
.mock__dot--live{background:var(--accent);box-shadow:0 0 8px rgba(220,98,21,.8)}
.mock__url{
  margin-left:var(--space-3);font-size:.6875rem;letter-spacing:.04em;
  color:var(--text-on-dark-faint);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
.mock__body{padding:var(--space-5)}

.hero__browser{position:relative;z-index:2}
.mock-line{height:8px;border-radius:var(--radius-pill);background:rgba(255,255,255,.13)}
.mock-line--accent{background:var(--accent);width:42%;height:10px}
.mock-line--w80{width:80%}
.mock-line--w60{width:60%}
.mock-line--w45{width:45%}
.mock-stack>*+*{margin-top:10px}
.mock-panel{
  border:1px solid var(--border-on-dark);border-radius:var(--radius-sm);
  padding:var(--space-3);background:rgba(255,255,255,.02);
}
.mock-caption{font-size:.625rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-on-dark-faint);margin-top:6px}

/* Mini bar chart, pure CSS */

/* Floating capability labels connected by signal lines */
.hero__chip{
  position:absolute;z-index:3;
  display:inline-flex;align-items:center;gap:var(--space-2);
  padding:8px var(--space-4);
  background:rgba(22,22,22,.94);
  border:1px solid var(--border-on-dark);
  border-radius:var(--radius-pill);
  font-size:.6875rem;font-weight:var(--fw-semibold);
  letter-spacing:.1em;text-transform:uppercase;
  color:var(--text-on-dark);
  white-space:nowrap;
  backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);
}
.hero__chip::before{
  content:"";width:6px;height:6px;border-radius:50%;
  background:var(--accent);box-shadow:0 0 7px rgba(220,98,21,.9);flex:none;
}
.hero__chip--1{top:2%;right:4%}
.hero__chip--2{bottom:20%;left:-2%}
.hero__chip--3{bottom:2%;right:16%}
.hero__chip--4{top:26%;left:-4%}
@media(max-width:999px){
  .hero__chip--2,.hero__chip--4{left:0}
  .hero__chip{font-size:.625rem;padding:6px var(--space-3)}
}
@media(max-width:520px){.hero__chip--4{display:none}}

/* ---------- Hero media (Higgsfield poster + motion loop) ----------
   Poster and video are stacked in the same box so the swap is a cross-fade
   with no layout shift. Aspect ratio is fixed up front so nothing reflows
   when either loads. */
.hero__media{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  border:1px solid var(--border-on-dark);
  border-radius:var(--radius-md);
  overflow:hidden;
  background:var(--z6-ink);
  box-shadow:var(--shadow-card-dark);
}
.hero__poster,
.hero__video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  /* The generated frame keeps its subject on the right third and deliberate
     empty space on the left, so bias the crop toward the subject. */
  object-position:72% center;
  display:block;
}
.hero__video{
  opacity:0;
  transition:opacity .6s ease;
  pointer-events:none;
}
/* Only revealed once the video is genuinely playing - see initHeroMotion */
.hero__video.is-playing{opacity:1}

/* Pointer-reactive drift on desktop only */
.hero__parallax{transition:transform .5s cubic-bezier(.2,.7,.3,1);will-change:transform}

/* ============================================================
   TRUST STRIP
   ============================================================ */
.trust{border-block:1px solid var(--border-on-dark);padding-block:var(--space-6)}
.trust__heading{color:var(--text-on-dark-muted);text-align:center}
.trust__list{
  display:flex;flex-wrap:wrap;justify-content:center;
  gap:var(--space-3) var(--space-6);margin-top:var(--space-5);
}
.trust__item{
  color:var(--text-on-dark-faint);
  font-weight:var(--fw-semibold);font-size:.8125rem;
  letter-spacing:var(--ls-label);text-transform:uppercase;
  display:inline-flex;align-items:center;gap:var(--space-3);
}
.trust__item::before{content:"";width:5px;height:5px;background:var(--accent);opacity:.7;flex:none}

/* ============================================================
   VALUE PROPOSITION
   ============================================================ */
.value{text-align:center}
.value__inner{max-width:56ch;margin-inline:auto}
.value__copy{color:var(--text-on-light-muted);margin-top:var(--space-5)}
.value__rule{
  width:64px;height:2px;background:var(--accent);
  margin:var(--space-7) auto 0;box-shadow:0 0 10px rgba(220,98,21,.4);
}

/* ============================================================
   CARDS - flat panels, hairline border, orange on hover
   ============================================================ */
.card{
  position:relative;display:flex;flex-direction:column;
  padding:clamp(20px,3vw,var(--space-6));
  border:1px solid var(--border-on-dark);
  border-radius:var(--radius-sm);
  background:var(--surface-card-dark);
  transition:border-color .2s ease,transform .2s ease;
}
.card:hover,.card:focus-within{border-color:var(--accent);transform:translateY(-2px)}
.card--light{background:var(--surface-light);border-color:var(--border-on-light);box-shadow:var(--shadow-card-light)}
.card--light:hover,.card--light:focus-within{border-color:var(--accent)}
.card--featured{box-shadow:var(--glow-orange);border-color:var(--accent)}
.card__icon{margin-bottom:var(--space-4)}
.card__title{margin-bottom:var(--space-3)}
.card__desc{color:var(--text-on-dark-muted);flex:1}
.card--light .card__desc{color:var(--text-on-light-muted)}
.card__foot{margin-top:var(--space-5)}
.card__num{
  position:absolute;top:var(--space-5);right:var(--space-5);
  font-weight:var(--fw-extrabold);font-size:.75rem;letter-spacing:.1em;
  color:var(--text-on-dark-faint);
}

.icon{width:32px;height:32px;stroke:var(--accent);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.card:hover .icon,.card:focus-within .icon{filter:drop-shadow(0 0 7px rgba(220,98,21,.8))}

/* Featured services - deliberately asymmetric grid */
.svc-grid{display:grid;gap:var(--space-4)}
@media(min-width:700px){.svc-grid{grid-template-columns:repeat(2,1fr)}}
/* 5 cards with the first spanning two columns = 6 cells = two clean rows. */
@media(min-width:1000px){
  .svc-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(0,auto)}
  .svc-grid>:nth-child(1){grid-column:span 2}
}
.card__services{
  margin-top:var(--space-4);padding-top:var(--space-4);
  border-top:1px solid var(--border-on-dark);
  display:flex;flex-wrap:wrap;gap:var(--space-2);
}
.card--light .card__services{border-top-color:var(--border-on-light)}
.tag{
  display:inline-flex;align-items:center;
  padding:5px var(--space-3);
  border:1px solid var(--border-on-dark);border-radius:var(--radius-pill);
  font-size:.6875rem;font-weight:var(--fw-medium);
  letter-spacing:.06em;color:var(--text-on-dark-muted);
}
.card--light .tag{border-color:var(--border-on-light);color:var(--text-on-light-muted)}

/* ============================================================
   ZIG-ZAG BENEFIT ROWS
   ============================================================ */
.zig{display:grid;gap:clamp(32px,5vw,var(--space-8));align-items:center}
@media(min-width:900px){
  .zig{grid-template-columns:1fr 1fr;gap:clamp(48px,6vw,96px)}
  .zig--flip .zig__text{order:2}
  .zig--flip .zig__visual{order:1}
}
.zig+.zig{margin-top:clamp(56px,8vw,112px)}
/* Grid children default to min-width:auto, so a wide child (the mockup panel
   rows) can push a column past the viewport. On a section with overflow:hidden
   that clips content silently rather than scrolling. min-width:0 lets them shrink. */
.zig__text,.zig__visual,
.svc-grid>*,.svc-cards>*,.offers>*,.values>*,.process>*,.split>*{min-width:0}
.zig__copy{color:var(--text-on-light-muted);margin-top:var(--space-4)}
.zig__list{margin-top:var(--space-5);display:grid;gap:var(--space-3)}
.zig__list li{display:flex;gap:var(--space-3);align-items:flex-start;color:var(--text-on-light-muted);font-size:.9375rem}
/* The list is also used on dark sections (Services "what's included") —
   without this it inherits the light-surface colour and goes invisible. */
.section--dark .zig__list li,
.section--charcoal .zig__list li{color:var(--text-on-dark-muted)}
.zig__list svg{width:17px;height:17px;flex:none;margin-top:4px;stroke:var(--accent);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.zig__visual{position:relative}

/* Light-surface mock variant */
.mock--light{background:var(--z6-ink);border-color:rgba(14,14,14,.2);box-shadow:0 18px 44px rgba(14,14,14,.16)}

/* Map / local search visual */
.mock-map{position:relative;height:210px;background:var(--surface-card-dark);overflow:hidden}
.mock-map__pin{
  position:absolute;width:11px;height:11px;border-radius:50%;
  background:var(--accent);box-shadow:0 0 0 5px rgba(220,98,21,.18),0 0 12px rgba(220,98,21,.85);
}
.mock-map__pin--a{top:32%;left:28%}
.mock-map__pin--b{top:58%;left:56%;animation:pinPulse 5s ease-in-out infinite}
.mock-map__pin--c{top:22%;left:70%;opacity:.55}
@keyframes pinPulse{0%,100%{box-shadow:0 0 0 5px rgba(220,98,21,.18),0 0 12px rgba(220,98,21,.85)}50%{box-shadow:0 0 0 12px rgba(220,98,21,.06),0 0 18px rgba(220,98,21,1)}}
.mock-rank{display:flex;align-items:center;gap:var(--space-3);padding:10px 0;border-bottom:1px solid var(--border-on-dark)}
.mock-rank:last-child{border-bottom:0}
.mock-rank__pos{
  width:24px;height:24px;flex:none;display:grid;place-items:center;
  border:1px solid var(--border-on-dark);border-radius:var(--radius-sm);
  font-size:.6875rem;font-weight:var(--fw-bold);color:var(--text-on-dark-faint);
}
.mock-rank--top .mock-rank__pos{border-color:var(--accent);color:var(--accent);box-shadow:0 0 10px rgba(220,98,21,.3)}

/* Site-check / workflow status visual */
.flow{display:grid;gap:var(--space-3)}
.flow__step{
  display:flex;align-items:center;gap:var(--space-4);
  padding:var(--space-3) var(--space-4);
  border:1px solid var(--border-on-dark);border-radius:var(--radius-sm);
  background:rgba(255,255,255,.02);
}
.flow__step:last-child{border-color:var(--accent);box-shadow:0 0 18px rgba(220,98,21,.18)}
.flow__dot{
  width:9px;height:9px;border-radius:50%;flex:none;
  background:var(--accent);box-shadow:0 0 8px rgba(220,98,21,.8);
  animation:flowPulse 6s ease-in-out infinite;
}
.flow__step:nth-child(2) .flow__dot{animation-delay:-1.2s}
.flow__step:nth-child(3) .flow__dot{animation-delay:-2.4s}
.flow__step:nth-child(4) .flow__dot{animation-delay:-3.6s}
.flow__step:nth-child(5) .flow__dot{animation-delay:-4.8s}
@keyframes flowPulse{0%,100%{opacity:.35}50%{opacity:1}}
.flow__label{font-size:.875rem;font-weight:var(--fw-medium);color:var(--text-on-dark)}

/* ============================================================
   PROCESS
   ============================================================ */
.process{display:grid;gap:var(--space-5);counter-reset:step}
@media(min-width:640px){.process{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.process{grid-template-columns:repeat(4,1fr);gap:var(--space-4)}}
/* Six-stage variant: 3 columns = two clean rows of three */
@media(min-width:1000px){.process--6{grid-template-columns:repeat(3,1fr);gap:var(--space-5)}}
.step{position:relative;padding-top:var(--space-6);border-top:1px solid var(--border-on-dark)}
.step::before{
  content:"";position:absolute;top:-1px;left:0;width:34px;height:2px;
  background:var(--accent);box-shadow:0 0 8px rgba(220,98,21,.6);
}
.step__num{
  display:block;font-weight:var(--fw-extrabold);font-size:.75rem;
  letter-spacing:.16em;color:var(--accent);margin-bottom:var(--space-3);
}
.step__desc{color:var(--text-on-dark-muted);margin-top:var(--space-3);font-size:.9375rem}

/* ============================================================
   OFFER CARDS
   ============================================================ */
.offers{display:grid;gap:var(--space-5);align-items:start}
@media(min-width:820px){.offers{grid-template-columns:repeat(3,1fr)}}
.offer__badge{
  position:absolute;top:calc(-1 * var(--space-3));left:clamp(20px,3vw,var(--space-6));
  padding:5px var(--space-4);background:var(--accent);color:var(--accent-on-accent);
  border-radius:var(--radius-pill);
  font-size:.625rem;font-weight:var(--fw-bold);letter-spacing:.14em;text-transform:uppercase;
}
.offer__scope{
  color:var(--accent);font-weight:var(--fw-semibold);font-size:.8125rem;
  letter-spacing:var(--ls-label);text-transform:uppercase;margin-bottom:var(--space-4);
}
.offer__list{display:grid;gap:var(--space-3);margin:var(--space-5) 0;flex:1}
.offer__list li{display:flex;gap:var(--space-3);align-items:flex-start;font-size:.9375rem;color:var(--text-on-dark-muted)}
.offer__list svg{width:16px;height:16px;flex:none;margin-top:4px;stroke:var(--accent);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* ============================================================
   FAQ ACCORDION
   ============================================================ */
.faq{max-width:800px;margin-inline:auto}
.faq__item{border-bottom:1px solid var(--border-on-light)}
.faq__item:first-child{border-top:1px solid var(--border-on-light)}
.faq__btn{
  display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);
  width:100%;min-height:64px;padding:var(--space-5) 0;
  background:none;border:0;cursor:pointer;text-align:left;
  font-weight:var(--fw-semibold);font-size:1.0625rem;line-height:1.35;
  color:var(--text-on-light);
  transition:color .18s ease;
}
.faq__btn:hover{color:var(--accent-hover)}
.faq__sign{
  position:relative;width:18px;height:18px;flex:none;
}
.faq__sign::before,.faq__sign::after{
  content:"";position:absolute;background:var(--accent);
  transition:transform .22s ease,opacity .22s ease;
}
.faq__sign::before{top:8px;left:0;width:18px;height:2px}
.faq__sign::after{left:8px;top:0;width:2px;height:18px}
.faq__btn[aria-expanded="true"] .faq__sign::after{transform:rotate(90deg);opacity:0}
.faq__panel{overflow:hidden;height:0;transition:height .26s ease}
.faq__panel[hidden]{display:block}
.faq__answer{padding:0 0 var(--space-5);color:var(--text-on-light-muted);max-width:66ch}

/* ============================================================
   FINAL CTA
   ============================================================ */
.cta{position:relative;text-align:center}
.cta__inner{max-width:52ch;margin-inline:auto}
.cta__copy{color:var(--text-on-dark-muted);margin-top:var(--space-5)}
.cta__btns{margin-top:var(--space-7);justify-content:center}

/* ============================================================
   ABOUT PAGE
   ============================================================ */
.page-hero{position:relative;padding-block:clamp(48px,7vw,var(--space-9)) clamp(40px,6vw,var(--space-8))}
.page-hero__copy{color:var(--text-on-dark-muted);margin-top:var(--space-5)}
.split{display:grid;gap:clamp(32px,5vw,var(--space-8))}
@media(min-width:900px){.split{grid-template-columns:1fr 1fr;gap:clamp(48px,6vw,96px)}}
.split--narrow{align-items:start}
.prose>*+*{margin-top:var(--space-4)}

/* ---------- Legal / policy pages ---------- */
.legal{max-width:70ch}
.legal h2{margin-top:var(--space-7)}
.legal h2:first-child{margin-top:0}
.legal a{color:var(--accent-hover);text-decoration:underline;text-underline-offset:3px}
.legal a:hover{color:var(--text-on-light)}
.legal__list{display:grid;gap:var(--space-2);margin-top:var(--space-2);padding-left:var(--space-5)}
.legal__list li{
  position:relative;color:var(--text-on-light-muted);font-size:1rem;line-height:var(--lh-body);
}
/* ---------- Breadcrumb (service detail pages) ---------- */
.breadcrumb{
  background:var(--surface-dark);
  border-bottom:1px solid var(--border-on-dark);
}
.breadcrumb ol{
  display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);
  list-style:none;margin:0;padding:var(--space-3) 0;
}
.breadcrumb li{
  display:inline-flex;align-items:center;gap:var(--space-2);
  font-size:.8125rem;color:var(--text-on-dark-faint);
}
.breadcrumb li+li::before{
  content:"/";color:var(--text-on-dark-faint);opacity:.5;
}
.breadcrumb a{
  color:var(--text-on-dark-muted);text-decoration:none;
  min-height:44px;display:inline-flex;align-items:center;
  transition:color .18s ease;
}
.breadcrumb a:hover{color:var(--accent)}
.breadcrumb [aria-current="page"]{color:var(--text-on-dark)}

/* Inline code, used in the accessibility statement to name HTML/CSS features.
   Browser default monospace clashes badly with Montserrat, so this tones it
   down: subtle tint, brand-consistent, no heavy "code block" treatment. */
.legal code{
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  font-size:.875em;
  padding:.1em .4em;
  border-radius:var(--radius-sm);
  background:rgba(14,14,14,.06);
  border:1px solid var(--border-on-light);
  color:var(--text-on-light);
  white-space:nowrap;
}
.legal__list li::before{
  content:"";position:absolute;left:calc(-1 * var(--space-4));top:.7em;
  width:5px;height:5px;background:var(--accent);
}
.prose p{color:var(--text-on-light-muted)}
.section--dark .prose p,
.section--charcoal .prose p{color:var(--text-on-dark-muted)}

.values{display:grid;gap:var(--space-4)}
@media(min-width:640px){.values{grid-template-columns:repeat(2,1fr)}}
.about-net{position:relative;min-height:300px;display:grid;place-items:center}
@media(min-width:900px){.about-net{min-height:400px}}

.owner{display:grid;gap:var(--space-6);align-items:start}
@media(min-width:760px){.owner{grid-template-columns:auto 1fr;gap:var(--space-7)}}
.owner__mark{
  width:104px;height:104px;flex:none;display:grid;place-items:center;
  border:1px solid var(--accent);border-radius:var(--radius-sm);
  background:var(--surface-card-dark);box-shadow:var(--glow-orange);
  font-weight:var(--fw-extrabold);font-size:2rem;letter-spacing:-.02em;color:var(--z6-white);
}
.owner__mark span{color:var(--accent)}
.owner__role{color:var(--accent);margin-top:var(--space-2)}

/* ============================================================
   SERVICES PAGE
   ============================================================ */
/* Phase 1 services: each service card sits beside its own image.
   Sides alternate down the page, matching the zig-zag rhythm used on Home. */
.svc-pair{display:grid;gap:var(--space-4);align-items:stretch}
.svc-pair+.svc-pair{margin-top:var(--space-5)}
@media(min-width:900px){
  .svc-pair{grid-template-columns:1fr 1fr;gap:var(--space-5)}
  .svc-pair+.svc-pair{margin-top:var(--space-6)}
  .svc-pair--flip .card{order:2}
  .svc-pair--flip .svc-visual{order:1}
}
/* In a pair the image matches the card's height rather than a fixed box */
.svc-pair .svc-visual{height:100%;min-height:240px}
.svc-pair>*{min-width:0}

/* ---------- Service group visual tile (4th cell) ----------
   One generated image per service group (svc-*.jpg, 720x538).
   Images are separate files, not inlined — they cache independently
   and load lazily, which beats a ~300KB base64 payload in the HTML. */
.svc-visual{
  position:relative;overflow:hidden;min-height:210px;
  border:1px solid var(--border-on-dark);border-radius:var(--radius-sm);
  background:var(--surface-card-dark);
  display:flex;align-items:flex-end;
  transition:border-color .2s ease,transform .2s ease;
}
.svc-visual:hover{border-color:var(--accent);transform:translateY(-2px)}
.svc-visual__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1}
.svc-visual__cap{
  position:relative;z-index:2;width:100%;
  padding:var(--space-4);
  font-size:.6875rem;font-weight:var(--fw-semibold);
  letter-spacing:.1em;text-transform:uppercase;color:var(--text-on-dark);
  background:linear-gradient(to top,rgba(14,14,14,.92),rgba(14,14,14,0));
}
.svc-visual__cap::before{
  content:"";display:inline-block;vertical-align:middle;
  width:6px;height:6px;border-radius:50%;margin-right:var(--space-3);
  background:var(--accent);box-shadow:0 0 7px rgba(220,98,21,.9);
}

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.contact-cards{display:grid;gap:var(--space-4)}
@media(min-width:760px){.contact-cards{grid-template-columns:repeat(3,1fr)}}
.contact-card__label{color:var(--accent);margin-bottom:var(--space-3)}
.contact-card__value{
  font-weight:var(--fw-extrabold);font-size:clamp(1.05rem,2.1vw,1.35rem);
  letter-spacing:-.01em;line-height:1.3;text-decoration:none;color:var(--z6-white);
  word-break:break-word;display:inline-block;min-height:44px;
  border-bottom:1px solid transparent;transition:color .18s ease,border-color .18s ease;
}
a.contact-card__value:hover{color:var(--accent);border-bottom-color:var(--accent)}
.next-steps{display:grid;gap:var(--space-4);counter-reset:ns}
@media(min-width:760px){.next-steps{grid-template-columns:repeat(2,1fr)}}
.next-step{display:flex;gap:var(--space-4);align-items:flex-start}
.next-step__n{
  width:30px;height:30px;flex:none;display:grid;place-items:center;
  border:1px solid var(--accent-hover);border-radius:50%;
  font-size:.75rem;font-weight:var(--fw-bold);color:var(--accent-hover);
}
.next-step__t{font-size:.9375rem;color:var(--text-on-light-muted)}

/* ---------- Contact form ----------
   Posts to a third-party form endpoint (no backend in this file).
   Works without JavaScript via native form POST; JS adds inline status. */
.form{max-width:720px}
.form__row{display:grid;gap:var(--space-4)}
@media(min-width:640px){.form__row--2{grid-template-columns:1fr 1fr}}
.form__row+.form__row{margin-top:var(--space-4)}
.field{display:flex;flex-direction:column;gap:var(--space-2)}
.field__label{
  font-weight:var(--fw-semibold);font-size:.8125rem;letter-spacing:.04em;
  color:var(--text-on-dark);
}
.field__label .req{color:var(--accent)}
.field__hint{font-size:.75rem;color:var(--text-on-dark-faint)}
.field input,.field textarea{
  width:100%;min-height:48px;padding:var(--space-3) var(--space-4);
  font-family:var(--font);font-size:1rem;line-height:1.5;
  color:var(--z6-white);background:var(--surface-card-raised);
  border:1px solid var(--border-on-dark);border-radius:var(--radius-sm);
  transition:border-color .18s ease;
}
.field textarea{min-height:132px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:rgba(255,255,255,.34)}
.field input:hover,.field textarea:hover{border-color:rgba(255,255,255,.22)}
.field input:focus,.field textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px rgba(220,98,21,.28)}
.field input[aria-invalid="true"],.field textarea[aria-invalid="true"]{border-color:#FF6B6B}
.field__error{font-size:.8125rem;color:#FF8A8A;min-height:0}

.consent{display:flex;gap:var(--space-3);align-items:flex-start;margin-top:var(--space-5)}
.consent input{
  width:22px;height:22px;flex:none;margin-top:2px;accent-color:var(--accent);cursor:pointer;
}
.consent label{font-size:.875rem;color:var(--text-on-dark-muted);line-height:1.55}

/* Honeypot — hidden from people, visible to bots */
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

.form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-top:var(--space-6)}
.form__status{font-size:.9375rem;font-weight:var(--fw-medium);margin:0}
.form__status--ok{color:var(--z6-amber)}
.form__status--err{color:#FF8A8A}
.btn[aria-busy="true"]{opacity:.72;pointer-events:none}
.form__note{margin-top:var(--space-5);font-size:.8125rem;color:var(--text-on-dark-faint);max-width:60ch}

/* ============================================================
   FOOTER
   ============================================================ */
.site-footer{position:relative;background:#000;border-top:1px solid var(--border-on-dark);overflow:hidden}
.footer__signal{position:absolute;top:0;left:0;right:0;height:120px;pointer-events:none}
.footer__grid{
  display:grid;gap:var(--space-7);
  padding-block:clamp(48px,7vw,var(--space-8)) var(--space-7);
  position:relative;z-index:1;
}
@media(min-width:700px){.footer__grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.footer__grid{grid-template-columns:1.6fr 1fr 1fr 1.2fr;gap:var(--space-6)}}
.footer__tagline{color:var(--accent);font-weight:var(--fw-semibold);margin-top:var(--space-4)}
.footer__blurb{color:var(--text-on-dark-faint);font-size:.875rem;margin-top:var(--space-3);max-width:38ch}
.footer__h{
  font-size:.75rem;font-weight:var(--fw-semibold);letter-spacing:var(--ls-label);
  text-transform:uppercase;color:var(--text-on-dark-faint);margin-bottom:var(--space-4);
}
.footer__list{display:grid;gap:var(--space-1)}
.footer__link{
  display:inline-flex;align-items:center;min-height:44px;
  color:var(--text-on-dark-muted);text-decoration:none;font-size:.875rem;
  transition:color .18s ease;
}
.footer__link:hover{color:var(--accent)}
.footer__social{display:flex;gap:var(--space-3);margin-top:var(--space-4)}
.footer__social a{
  width:40px;height:40px;display:grid;place-items:center;
  border:1px solid var(--border-on-dark);border-radius:var(--radius-sm);
  color:var(--text-on-dark-muted);transition:border-color .18s ease,color .18s ease;
}
.footer__social a:hover{border-color:var(--accent);color:var(--accent)}
.footer__social svg{width:17px;height:17px;fill:currentColor}
.footer__bottom{
  display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-5);
  justify-content:space-between;align-items:center;
  padding-block:var(--space-5);border-top:1px solid var(--border-on-dark);
  position:relative;z-index:1;
}
.footer__meta{color:var(--text-on-dark-faint);font-size:.8125rem}
.footer__built{color:var(--text-on-dark-faint);font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase}
.footer__legal{margin:0}
.footer__legal .footer__link{font-size:.8125rem}
.footer__built b{color:var(--accent);font-weight:var(--fw-semibold)}

/* ============================================================
   RESPONSIVE GUARDS
   ============================================================ */
@media(max-width:400px){
  :root{--container-pad:18px}
  .z6-display{font-size:2.1rem}
}

/* ============================================================
   REDUCED MOTION
   Static signal networks, no travelling pulses, no transitions.
   ============================================================ */
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation-duration:.001ms!important;
    animation-iteration-count:1!important;
    transition-duration:.001ms!important;
  }
  .signal-packet{display:none}
  .signal-node{opacity:.8}
  .hero__parallax{transform:none!important}
}
