/*
Theme Name: Yocto Digital
Theme URI: https://yoctodigital.com
Author: Yocto Digital
Description: Official Yocto Digital WordPress theme. Pixel-matched to yocto.html, with a mobile hamburger menu.
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: yocto
*/

/* Stickler Pro — commercial display face from Creative Market. Files base64-embedded
     for self-contained delivery.
     ascent/descent/line-gap overrides normalize the font's oversized native metrics
     (HHEA ascent 100%, total 120%) so line-height actually controls line spacing. */
  @font-face {
    font-family: 'Stickler Pro';
    src: local('Stickler Pro'), local('Stickler-Pro'),
         url('data:font/woff2;base64,d09GMgABAAAAABJYAA0AAAAAIywAABIAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP0ZGVE0cGh4GYACCQhEICrNMpWMLgUQAATYCJAODBAQgBYV0B4FkG5waIxHCxgEEgt5K9lcJNhnq+mEVmKSEGGtjOREGytlRCfHexaZfr0UT4OAVH755+Z8MDU/b/IeJ7k8kUsUkSvGYqIBwRB4cWKCEImYvq9x+usz8fukv1Ur6B/tWDiFVmdQZS193JyO0md5QBrgGLBpjG8AWAHn+95Od+/5YiwtJELEMRLogJrFULZaVvJSM3fwu7KrutLs+25mXjtr124NHyCS9JLAWwhGDqqOQ3fPSGEM4EAsG/++2H6PxSjcmnW4EA4FgSbee2yv+ZvL/ljn7f/okoZQylC5kqULicQg1t3tlZja71/Zo5WrmqHtLadVFIxS4PFRrxXVFV9EohMWi8BJLhHIozfx+M210a7aH9rARDBYR93ctAACYLLi0c7D9VlePx+KEU38CVvwhIUUE+Xo2WmBYUI4Mqm6hytxbVQCAoGNiHiCPAQCwhsNjXFXhxYUCWIJBI6Edjo6njsa3wHxqtZHgM4OhESs2AEBhkN4gxNJGIez4Qd3peQ+tB1R2wswlEkxpsH8AmFnBU2hY+M7Ov9vznwD9e5+YlJzCYnO4PL5AKEpNE6dDkl4Z0sysbJlckaNUwWqNVqc3GE1mC2K1oXZHbl5+QaHTVVTs9nh9JaV+MJyE6W50fhnuhzHzhO9AxE8eMNoIGo06yRi0sUaoLZPWB0H7wmvO4RsNJvkJrUpu3fNeZEtsBVhod4gVkUVgiEyXada7HyxYAbNwOopzgZiL+9BkatHa4hLZj5KpK2OpdiK8WuxUWyg4njkTPHt2HW8tzS86KXPJlgrWYsE0njuNZxZnL+XpVpzYgls5c6pMx3TUFdbNmVF0UuJldkWkGt77owDbB7y0zzZHuBJFlRQUwzJQGXEpKxH0Bt9Onr/kl2/VF+zL66gpccy2tdcxNodSEWr0hfSUaBoBk8KodXO3fXQW9ow4Aafsc9y6ueMdnWqvDnsJP/54eeHy4QTXfp9ohNHhR5mqMWE90H+s5pHV4z7wWy+h9mOUn579R8pBFeS4LtNe6fLrDIuqH55rsIbyKdvdSG9fmVhzH3yIHnmIecx95KRYNfF8j972owrsEJho8wavXGsnwoNyGCpQyi3S0swNv1iIEuxc8WuiDEIDOjclBOPzCJ0YPcFnCUroyKtHlQgqnybWRLPtahOBU7zFyRQbtUeFTh4n4NJA53OIkngGBr1qGppNTrE6drLUrE3d3eSEGxMbF6jKLzWpwGclKhOexVMOTpxJvAPpoCNXSxVvuPNhtt0jS8hZYEq+stuWLIISkzvAa01RLrPN+9luRU9aXvLXdy8ZVYvwl5+Nh7sKzpzbEXKacmBqpzxSi+omUa1wsRS8aqe2Xy03ziGbbatVkGcT1XACOjSYeBQIXJ/GpzC7P+Xx4Zw59rMY2xyM8F1K+hllna3iY8J4WkeZnwwHgYmfey7OCkGijoGIgCauxACcnHPy5WR/VMLJQ3BAhSyHMwccSV32U4s9rhJOmXacyeeQuyCeatMqaAWc3G41TZSSHfRDLFiCGhXjSJYmDwrbbmjA5+pWUDeT3PQRmK43C1GsAVabfzjkm3dnq88WSiFjwIPEgROipcULo5XdT+Zmi6wRtSQrOBITr0wVSaeKVGoe0QlSuos/sY2HUq3hF388olPvDgHNkaWfDdAtrr5PYyA1rab2xBtRQEKV699m3V2f8jnoe9l18rLMuQHobVfSFTyAnLPuNq8Cb1OWuCKGXU7K3gW3uGvPtteyhjruXfov1jAg+WLen8fMeuDKzAFxdGvKM7fuPORAc/PsVO17JNbNViuIgRfKRwUyT5xzch3KkXSTNEOxBfUDmtpnTLCuFEN97ldADzpw+80VIo8q2FXlzsCVEkbhPd+Yk350E6vXjCbGgidLy+KuPNGE/AXmierAO9wD3qSJdziSXDn4uZZKWf+vNV3DanPyQM+bwUucobglsZVLxfpiD/LqogZzpcHHGKGJjeKEwWuQsv4ejjblm/FW9MKTFWCnRU/FdKb1wlps8guJYfl6GarWPOOA4Ve7r9x1YMYy0QSr7Koz9aVKVQPyuBbr/D4N2403qWqY8Qy70PC1dSdAfjGpTLy2zJwfL58VoePCHX7dxi+LN7DBbvztMvdQLehWqjXbvL7+4hTGV62XzrVCqzxvCItVduJtMpa8qzBuei32F0ROGc7bWsbENdTldfYbfEh1vLxqXZi5mkYIxdwVmDiQRRX2OKdofYWthvUEUcbEJR5q232z+3uNq0hx6gGC/fHoEdtGW7ns4Fe+m0zwyuUcl0v//ahIOuTqpM8KFsPAHWocxyu4a84VAhXR/CKOl7R+kkWIJonaLo5JUk141njLmoiwihsSPv2uYf1HJo9rDHDBEl8kUhURG71BVeM9FwSinmtbXaupdSoytXiqdWq7qb2u8xsdZx1XPA4Zt+LbbawrrgOO9vXjqx3lutAJDIsjJlXwFUuMmJ53uQFFMtevo7laoswO0wEV1byPx+U8jo6cOXL1a6WMNGE1Cdya3gSJPZLMwVCaV2L1Ss+5Ms6R+2ThCbJQCp9AQGiruiOjE2lhg2z+CoAqjR9NzuAbEn0lAghCDXKZVZllVsEqrSKbw4K/+xucvh/uiubBLXce7iQQgxq8HEIFOWw5o09Vu6U9LrYkoc4XDCqnSPfxjHsGHO7a2f/QXr4lY68DNIsybL7XH9rZheN7YljsA0bBkm2lqNjVwWsTiAt9NmK/clw/LwoVtvNahZDLg0b3LwcLFkyZVDBpat7U6V1OAX1JTUQ6jhZzKRl/hFBbNuYjCOn6rP0MIvFUKugG+KWnWvL2B3gXA4NamiuGFHsgb0a16cEe8VSoALVBeRAE5aIoVAABqd6AMTjhUm6sugMqmwgIf1sT9fpCmxoS2E4a1DttUqO40BLSMCAmtpHNcNG9GBB1UE0RGxw6RYrljYtRqHIZrNmfi87/R3Nms3brsNacXBZNwEzVMsHozRZLlbPqquw4VJ58sGkTGPpAq3/2mmY66sE4XHmI1WsviCslKshIwkBKZigfbQSRzEJUYyjIRVzutrrhU0ZNBuH20qAqGKvrzGLemJWSWM6W3IVkXDCncOHos4hIDl5ct6okiRPj1vTnwE4EMbnMCp5sfuSepHRUrWSYZGTqRQzmLo1Kj+XlX05gzr5jfsNkPuKA0Bvu1nq/rO25OqYZhCAJsR63fMqHXnwDS6MWU78a63/9UmR9e6bDItbIFCC6+ppKlXemPPDsAjSz7cR7C+fGaKk05jxixQYGaOAVfGn90laQvxoGy7G28bZxiyZjAS0QZjimhVbBxlMEFat9KMpDCCvi7HBSlvAck96hjPy6/nhatDeafWD6j8WjZrKvbP+fSh3/1YMrNeU8d22jT5rmnDNapHs4Uy02ZyfFS1dv3rLGv6oIskOO2hrXMhvPyi2waknoBSXSDveMdSKmAR/gZNvAYaOGqZKtcXzTp5zDIzI0EC9q91ep8H87wPmlU09kTi0/zSqlKfSn9KcAbnP/gahRrEJkRgGq8Vt9/60tUKhZKWqFcZLqdu6KAi7fr3LBC8C/hCMW5yijXeWw64fCLJhVlAL3aPSmW+jC0sYatzTVtXatjEuNO2DzAty4zK7DZbEVUxpm9TZoWfX//ucqKfO6Ew9tGeJm2+FO0Lc4fPqz4mfjw4tq2aDtVFEFO3DugfvBCtADck3tRPomyL3Qwo1ZUknhlVWSJBPxf51ruVIgDjhHWJI18RarZvDlb6XDg8zK76C/MvJJgB14HPm4jF0GcM75gKuH5TVwbGVwlD9IT2vwV9aUSiVRrAtgv2R1PI25GtF0PQLgaorDTgXSfohLxuELxuOXlLEHzhHOFI4AuMA87Nw+7PK5EXM6wXnhAINKle80DlMnnNWjA03J6iQ4P1c/5N4+G8+NCnovgHOErpErOOn2tIZ6uVxYOFIjArjAleX40WBormfl/R3rXCY4iZdmYTn9wxaDj4Esc33eTazFLuHRiG2GcV92FLevimn1VZvqKy6wjK/axoYHXWoe96gft3M50RLK9D9JJW2YTlnKnrEScuZzHt5avmhxLE6AJUhFfdJyMTWzNNGJSJ1gzSyRQKgZrl84fNLEWOYOSfwCH4g6teN04PSOouNAj21UfDycWRpwM1JmfJakfx5hx7nLSlWJ9k2EMnC1cxerdnz33O5m8Gfl8NUtq6sOsGrHrapf1TxyVeOqWjCR1dwVtp/ZMv7kiLcg5t7f1v47wdmv3wLfTgmbJlwcf7ERJJ7qETc1Z2MxlzVNPgdEBbqR+up6pBtcl+Ynj+eBfmiP/8JUAnNte8eo/prNXbUz4M6TWWXg0DL+2oWwGQR5Bj2hMelUamZAG3J2kFEXweDImxtZlmBrcJ4yS2JWKrUHMM4PqEPnY6CRcwEJiRJJfFV1PrXEe/EDT/7/mp94d5h8YyZ7+7WFAmBu26/x1Za73Q2NbkWyFeFQM5S6zOx12VQOAvid/8vFeYK1N/XO2mp3L1G8le2nP194Zjtb+pd0WDMoQWqt/cKdoawSX61TbBdPnKTwtDUELCX9MraJVtIvJgI43ixAUYuaCSNwRmnGFGRKYtwZDo0KBBGSxMV701O6PtL1j/42V9WWe8baME05YjtvzmlDWW4y99+UlJxTAIb+tB9EH3l3/ReKVHlWRd99frafXsACif6hfgosoTMgOiOJQU9mADgIGn/77G7733qqolC3qIQccz+JLLafHZE353zH/PMzNnaAUeqc+DUlBxoC6RqVgQ6IQ4aWxvYwRcU/ZT0wHYK6l/0JTOeUpVeK5blGpY1NUYuqLq1gpnnfGTOTk7ise6WXMknq2c9z1NqEREDEFkMTB8o9dfVud32dL1tcfOwfOV+bqcvKzlCLBFJNVpZUJwDEIaj/wb9csqcmUKhJd19aIcxpipqGGJXy0dns7UdyEoHSz4UWhTUBz3+lD/w2VGrJObKdnT1arjTKAKk0JZIpwpSMJESYm1ODMU3cnqxDMhCnpmQVFCkz2Tc+d2e8Xs2Ljn7M4SbfzV3Ey7dLIYs54VZ3w+XPUUTsV0GqIwZ8QemqrM0jMcioJn8TjMBbDa+Qnu1WE6gDw0ooowXJXPbt0nNuVb6VyTxIBilDihluRv2MIWWTh4CjNSilauwQrxNXgPOMG1KFUhyUWjCne2B3I9rf1r9zbPeo/S32kQUjm8DOIOfx+o+2ihZ2G7sREAVdy7+nZwLHfyt/BKUCQgj/M6QxGtONYpNGvHPENpqNbInI9yA2zu9LeZd+c2xIvscSQQZ9uh0ZDkAuivi+bbRtI3aKNSaj2Jhu1Ajh4rEPUM2BYSnGt1cf0B1NpTjFH4vgp9cy3eB/7siu/jclLQ1YmnA7pmKNgR9aaNXhpLLMKRyvB74JgKFw/sPlAwQ/qTBIJE4UvCQZLMa7eM4kIVCSLEQDFqAcZ5stEiIVfknKh1fUaPR0SxqCwaG6K5GKwQN4HH/jGBhOqge+gAESszyf14MTFogAcsLZIaEDD+I6fKqRA0Z4mBCQ7IomS7w1c0QYSFKHWNUHKYshluCSmSNFxurysSKxXO0DMF8RLttVjQunSypcqigI8Ykd5ADmHZ8stMjhZrVHZJpRzxwkS3ElZiEk6YWqR6MtFkKBCsNeKIkCZFISg0sxxDANUnSVBpvjKg0hiaShXCQiDFfooRGmZCz+UbidRsPm3JnxgnNfMJoigAI6QKRkrlqq1TlHjc3WUmuutzQzP1RaMDdqWrY4NULEwrl0qujsubBpwnIdlxZPAohYuqzuibWateinTa1qNTrCyqVSQO5Qpkk564p8nOpUoTZlHHDPvOdmVnpAsJSrMlBT1lRe+Z9OGMC4iFrl6jWo1CaBQ5uZ2qMeR0NlW4KjzSfyIpzVOjUo003wtwhuAMRSiav3reUKIVxQ8gKLRDniRSxOl985sOSkUbR+WDCcEUZ73ao2SSjbBC9j6MVvJSh/VZrrxL3Vt9Xm+qQVqUhU9mKgTyr9V1lroBygaAEWdCkaZDjS/0eAWGUPdf33d19JJWUMhFNniqnwCIhIyCioaOgYYsSKwxQvQaIkyVKwsHFw8fAJCImkSiOW3n2dJXrJIJUpSzYZOYUcSiowNQ0tHT0DIxMzC4SVDcrOIVeefAUKObkUKebm4eVTopQfAA==') format('woff2'),
         url('data:font/woff;base64,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') format('woff');
    font-weight: 100 900;
    font-style: normal;
    font-display: swap;
    ascent-override: 82%;
    descent-override: 20%;
    line-gap-override: 0%;
  }

  :root {
    --red: #db0707;
    --red-deep: #a30505;
    --red-dark: #6b0202;
    --red-ink: #2a0101;
    --cream: #f5f1e8;
    --cream-dim: rgba(245, 241, 232, 0.7);
    --cream-faint: rgba(245, 241, 232, 0.15);
    --white: #ffffff;
    --ink: #0a0a0a;
    --ink-soft: #1a1a1a;
  }

  * { margin: 0; padding: 0; box-sizing: border-box; }
  html { scroll-behavior: smooth; }

  body {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    background: var(--red);
    color: var(--cream);
    line-height: 1.5;
    overflow-x: hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }

  .display {
    font-family: 'Stickler Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-weight: 700;
    letter-spacing: -0.025em;
    /* Tighter multiline spacing suits Stickler's large internal font metrics. */
    line-height: 0.9;
    overflow: visible;
  }
  .display em {
    font-style: italic;
    font-weight: inherit;
    /* Give the synthetic italic room for its top/right overhang so it is not clipped. */
    display: inline-block;
    padding: 0.07em 0.14em 0.08em 0.03em;
    margin: -0.07em -0.14em -0.08em -0.03em;
    overflow: visible;
  }

  .eyebrow {
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--cream-dim);
  }

  /* NAV */
  nav {
    position: fixed;
    top: 0; left: 0; right: 0;
    padding: 24px 48px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 100;
    transition: all 0.4s ease;
  }
  nav.scrolled {
    background: rgba(10, 10, 10, 0.85);
    backdrop-filter: blur(12px);
    padding: 16px 48px;
  }
  nav .logo { height: 24px; position: relative; z-index: 120; }
  nav .logo svg { height: 100%; width: auto; }
  nav .menu {
    display: flex;
    gap: 40px;
    align-items: center;
  }
  nav .menu a {
    font-size: 13px;
    color: var(--cream);
    text-decoration: none;
    font-weight: 500;
    letter-spacing: 0.02em;
    position: relative;
    padding: 4px 0;
  }
  nav .menu a::after {
    content: '';
    position: absolute;
    left: 0; bottom: 0;
    width: 0; height: 1px;
    background: var(--cream);
    transition: width 0.3s ease;
  }
  nav .menu a:hover::after { width: 100%; }
  nav .nav-cta {
    padding: 10px 20px;
    border: 1px solid var(--cream);
    border-radius: 999px;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 600;
    transition: all 0.3s ease;
  }
  nav .nav-cta:hover { background: var(--cream); color: var(--red); }
  nav .nav-cta::after { display: none !important; }

  /* HAMBURGER */
  .nav-toggle {
    display: none;
    width: 44px;
    height: 44px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    cursor: pointer;
    position: relative;
    z-index: 120;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 6px;
  }
  .nav-toggle:focus-visible {
    outline: 1px solid var(--cream);
    outline-offset: 4px;
  }
  .nav-toggle span {
    display: block;
    width: 22px;
    height: 2px;
    background: var(--cream);
    border-radius: 1px;
    transition: transform 0.35s ease, opacity 0.25s ease, width 0.35s ease;
    transform-origin: center;
  }
  .nav-toggle.is-open span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
  }
  .nav-toggle.is-open span:nth-child(2) {
    opacity: 0;
    width: 0;
  }
  .nav-toggle.is-open span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
  }
  .nav-backdrop {
    display: none;
  }

  /* INNER WORDPRESS PAGES */
  .yocto-page {
    padding: 140px 48px 80px;
    min-height: 70vh;
    background: var(--cream);
    color: var(--ink);
  }
  .yocto-page .container { max-width: 800px; }
  .yocto-page h1 {
    font-family: 'Stickler Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: clamp(36px, 5vw, 64px);
    font-weight: 700;
    letter-spacing: -0.025em;
    line-height: 0.95;
    margin-bottom: 32px;
    color: var(--ink);
  }
  .yocto-page .entry-content {
    font-size: 17px;
    line-height: 1.7;
    color: rgba(10,10,10,0.75);
  }
  .yocto-page .entry-content p { margin-bottom: 20px; }
  .yocto-page .entry-content a { color: var(--red); }
  .form-status {
    display: none;
    margin-top: 16px;
    padding: 14px 16px;
    border-radius: 4px;
    font-size: 14px;
    line-height: 1.5;
    white-space: pre-line;
  }
  .form-status.is-visible { display: block; }
  .form-status.is-success {
    background: rgba(10,10,10,0.06);
    color: var(--ink);
  }
  .form-status.is-error {
    background: rgba(219,7,7,0.1);
    color: var(--red-deep);
  }
  .form-submit:disabled {
    opacity: 0.65;
    cursor: wait;
  }


  /* HERO */
  .hero {
    min-height: 100vh;
    padding: 140px 48px 80px;
    display: grid;
    grid-template-columns: 1.15fr 1fr;
    gap: 60px;
    align-items: center;
    position: relative;
    overflow: hidden;
  }
  .hero-mark {
    position: relative;
    aspect-ratio: 1 / 1;
    max-width: 560px;
    margin: 0 auto;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .icon-mark {
    width: 62%;
    height: auto;
    position: relative;
    z-index: 2;
    filter: drop-shadow(0 20px 40px rgba(0, 0, 0, 0.25));
    animation: iconFloat 6s ease-in-out infinite,
               iconRotate 45s linear infinite;
    transform-origin: center;
  }
  @keyframes iconFloat {
    0%, 100% { transform: translateY(0) scale(1); }
    50% { transform: translateY(-12px) scale(1.02); }
  }
  @keyframes iconRotate {
    from { rotate: 0deg; }
    to { rotate: 360deg; }
  }
  .icon-orbit {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    z-index: 1;
  }
  .orbit-ring {
    position: absolute;
    width: 55%;
    aspect-ratio: 1;
    border-radius: 50%;
    border: 1px solid rgba(245, 241, 232, 0.35);
    opacity: 0;
    animation: orbitPulse 4s ease-out infinite;
  }
  .orbit-ring:nth-child(2) { animation-delay: 1.3s; }
  .orbit-ring:nth-child(3) { animation-delay: 2.6s; }
  @keyframes orbitPulse {
    0%   { transform: scale(0.85); opacity: 0; border-width: 2px; }
    20%  { opacity: 0.5; }
    100% { transform: scale(1.9); opacity: 0; border-width: 0.5px; }
  }
  .hero-content { position: relative; z-index: 2; }
  .hero-eyebrow {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 32px;
  }
  .hero-eyebrow .dot {
    width: 8px; height: 8px;
    border-radius: 50%;
    background: var(--cream);
    animation: pulse 2s ease-in-out infinite;
  }
  @keyframes pulse {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.5; transform: scale(0.85); }
  }
  .hero h1 {
    font-size: clamp(48px, 6.5vw, 96px);
    color: var(--cream);
    margin-bottom: 40px;
  }
  .hero h1 em { color: var(--cream); opacity: 0.85; }
  .hero-sub {
    font-size: 16px;
    color: var(--cream-dim);
    max-width: 440px;
    margin-bottom: 48px;
    line-height: 1.6;
  }
  .cta {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    padding: 20px 32px;
    background: var(--ink);
    color: var(--cream);
    text-decoration: none;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    border-radius: 999px;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    border: 1px solid var(--ink);
  }
  .cta:hover { background: var(--cream); color: var(--red); border-color: var(--cream); transform: translateY(-2px); box-shadow: 0 12px 32px rgba(0,0,0,0.25); }
  .cta .arrow {
    width: 20px; height: 20px;
    transition: transform 0.3s ease;
  }
  .cta:hover .arrow { transform: translateX(4px); }

  .cta-ghost {
    background: transparent;
    color: var(--cream);
    border: 1px solid var(--cream);
  }
  .cta-ghost:hover { background: var(--cream); color: var(--red); }

  /* SCROLL CUE */
  .scroll-cue {
    position: absolute;
    bottom: 32px;
    left: 48px;
    display: flex;
    align-items: center;
    gap: 12px;
    font-size: 10px;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--cream-dim);
    font-weight: 600;
  }
  .scroll-cue .line {
    width: 40px;
    height: 1px;
    background: var(--cream-dim);
    position: relative;
    overflow: hidden;
  }
  .scroll-cue .line::after {
    content: '';
    position: absolute;
    left: -40px;
    top: 0;
    width: 40px;
    height: 100%;
    background: var(--cream);
    animation: scrollLine 2.5s ease-in-out infinite;
  }
  @keyframes scrollLine {
    0% { left: -40px; }
    100% { left: 40px; }
  }

  /* VALUES STRIP */
  .values {
    padding: 32px 48px;
    background: var(--red-deep);
    border-top: 1px solid var(--cream-faint);
    border-bottom: 1px solid var(--cream-faint);
  }
  .values-inner {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    max-width: 1440px;
    margin: 0 auto;
  }
  .value-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 8px 24px;
    border-right: 1px solid var(--cream-faint);
  }
  .value-item:last-child { border-right: none; }
  .value-item:first-child { padding-left: 0; }
  .value-num {
    font-family: 'Stickler Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 32px;
    font-weight: 400;
    color: var(--cream-dim);
    line-height: 1;
  }
  .value-label {
    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.02em;
    color: var(--cream);
    text-transform: uppercase;
  }

  /* SECTIONS */
  section { padding: 120px 48px; position: relative; }
  .section-ink { background: var(--ink); }
  .section-cream { background: var(--cream); color: var(--ink); }

  .container { max-width: 1440px; margin: 0 auto; }

  /* ABOUT */
  .about {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start;
  }
  .about-eyebrow { margin-bottom: 32px; }
  .about h2 {
    font-size: clamp(36px, 4.5vw, 64px);
    color: var(--cream);
    margin-bottom: 32px;
  }
  .about h2 em { opacity: 0.75; }
  .about-body p {
    font-size: 17px;
    line-height: 1.7;
    color: var(--cream-dim);
    margin-bottom: 24px;
  }
  .about-body p:last-child { margin-bottom: 0; }

  /* SERVICES — WHITE DESERT STYLE EXPANDING PANELS */
  .services-wrap { background: var(--ink); padding: 120px 0 120px; }
  .services-header {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    margin-bottom: 80px;
    align-items: end;
    padding: 0 48px;
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
  }
  .services-header h2 {
    font-size: clamp(48px, 6vw, 88px);
    color: var(--cream);
    line-height: 1;
    padding-top: 0.12em;
    overflow: visible;
  }
  #services { scroll-margin-top: 88px; }
  .services-header p {
    font-size: 17px;
    line-height: 1.65;
    color: var(--cream-dim);
    max-width: 440px;
  }

  .panels {
    display: flex;
    height: 560px;
    width: 100%;
    overflow: hidden;
    gap: 4px;
    padding: 0 4px;
  }
  .panel {
    flex: 1;
    position: relative;
    overflow: hidden;
    cursor: pointer;
    transition: flex 0.7s cubic-bezier(0.7, 0, 0.3, 1);
    background: var(--red-dark);
    min-width: 80px;
  }
  .panel:hover, .panel.active {
    flex: 4;
  }
  .panel-bg {
    position: absolute;
    inset: 0;
    background: var(--red-dark);
    transition: background 0.7s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 40px;
  }
  .panel:hover .panel-bg, .panel.active .panel-bg {
    background: var(--red);
  }
  .panel-bg svg {
    max-width: 70%;
    max-height: 70%;
    opacity: 0.15;
    transition: opacity 0.7s ease;
  }
  .panel:hover .panel-bg svg, .panel.active .panel-bg svg {
    opacity: 0.85;
  }
  .panel-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, transparent 40%, rgba(0,0,0,0.75) 100%);
    z-index: 1;
    pointer-events: none;
  }
  .panel-content {
    position: absolute;
    inset: 0;
    z-index: 2;
    padding: 32px;
    color: var(--cream);
  }
  .panel-num {
    position: absolute;
    top: 32px;
    left: 32px;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.24em;
    color: var(--cream-dim);
  }
  .panel-name {
    position: absolute;
    left: 40px;
    bottom: 40px;
    font-family: 'Stickler Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: clamp(28px, 2.8vw, 44px);
    font-weight: 700;
    letter-spacing: -0.02em;
    line-height: 1;
    color: var(--cream);
    white-space: nowrap;
    transform-origin: left bottom;
    transform: rotate(-90deg);
    transition: transform 0.7s cubic-bezier(0.7, 0, 0.3, 1),
                bottom 0.7s cubic-bezier(0.7, 0, 0.3, 1);
    z-index: 3;
    margin: 0;
  }
  .panel:hover .panel-name,
  .panel.active .panel-name {
    transform: rotate(0deg);
    bottom: 100px;
  }
  .panel-desc {
    position: absolute;
    left: 40px;
    right: 40px;
    bottom: 40px;
    max-width: 380px;
    font-size: 14px;
    line-height: 1.55;
    color: var(--cream-dim);
    opacity: 0;
    transform: translateY(12px);
    transition: opacity 0.5s ease 0.35s, transform 0.5s ease 0.35s;
    pointer-events: none;
  }
  .panel:hover .panel-desc,
  .panel.active .panel-desc {
    opacity: 1;
    transform: translateY(0);
  }

  /* STICKY STACK PARALLAX — FOUR DISCIPLINES */
  .stack-section {
    background: var(--red);
    padding: 120px 48px 0;
  }
  .stack-header {
    max-width: 1440px;
    margin: 0 auto 60px;
  }
  .stack-header h2 {
    font-size: clamp(40px, 5vw, 72px);
    color: var(--cream);
    margin-top: 16px;
    max-width: 800px;
  }
  .stack-container {
    max-width: 1200px;
    margin: 0 auto;
    padding-bottom: 25vh;
  }
  .stack-card {
    position: sticky;
    width: 100%;
    height: 520px;
    border-radius: 12px;
    padding: 64px;
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 40px;
    align-items: start;
    box-shadow: 0 -30px 60px -20px rgba(0,0,0,0.35);
    border: 1px solid rgba(245,241,232,0.12);
    overflow: hidden;
    margin-bottom: 60vh;
    transition: transform 0.4s ease;
  }
  .stack-card:last-child { margin-bottom: 0; }

  .stack-card:nth-child(1) { top: 100px; background: var(--red-deep); z-index: 1; }
  .stack-card:nth-child(2) { top: 130px; background: var(--red-dark); z-index: 2; }
  .stack-card:nth-child(3) { top: 160px; background: var(--red-ink); z-index: 3; }
  .stack-card:nth-child(4) { top: 190px; background: var(--ink); z-index: 4; }

  .stack-index {
    font-family: 'Stickler Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 72px;
    font-weight: 400;
    color: var(--cream-dim);
    line-height: 0.9;
  }
  .stack-content h3 {
    font-family: 'Stickler Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: clamp(28px, 3.5vw, 44px);
    font-weight: 700;
    color: var(--cream);
    margin-bottom: 24px;
    letter-spacing: -0.02em;
    line-height: 1.05;
  }
  .stack-content p {
    font-size: 16px;
    line-height: 1.7;
    color: var(--cream-dim);
    max-width: 620px;
  }
  .stack-visual {
    position: absolute;
    right: 40px;
    top: 40px;
    width: 200px;
    height: 200px;
    opacity: 0.3;
  }
  .stack-visual svg { width: 100%; height: 100%; }

  /* STATS */
  .stats {
    background: var(--ink);
    padding: 120px 48px;
    text-align: center;
  }
  .stats-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    max-width: 1200px;
    margin: 0 auto;
  }
  .stat {
    padding: 40px 24px;
    border-right: 1px solid rgba(245,241,232,0.15);
    position: relative;
  }
  .stat:last-child { border-right: none; }
  .stat-num {
    font-family: 'Stickler Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: clamp(72px, 10vw, 140px);
    font-weight: 700;
    color: var(--cream);
    line-height: 1;
    letter-spacing: -0.04em;
    margin-bottom: 16px;
    display: block;
  }
  .stat-num .accent {
    color: var(--red);
    font-style: normal;
    font-size: 0.7em;
  }
  .stat-label {
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: var(--cream-dim);
  }

  /* PARTNERS */
  .partners-header {
    text-align: center;
    margin-bottom: 64px;
  }
  .partners-header h2 {
    font-size: clamp(32px, 4vw, 56px);
    color: var(--ink);
    margin-top: 12px;
  }
  .partners-header h2 em { color: var(--red); }
  .partners-header .eyebrow { color: rgba(26,5,5,0.5); }
  .partners-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    border-top: 1px solid rgba(10,10,10,0.08);
    border-left: 1px solid rgba(10,10,10,0.08);
    max-width: 1200px;
    margin: 0 auto;
  }
  .partner {
    padding: 40px 32px;
    border-right: 1px solid rgba(10,10,10,0.08);
    border-bottom: 1px solid rgba(10,10,10,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-height: 120px;
    transition: background 0.3s ease, filter 0.4s ease, opacity 0.4s ease;
    filter: grayscale(1);
    opacity: 0.55;
  }
  .partner:hover { background: rgba(219,7,7,0.03); filter: grayscale(0); opacity: 1; }
  .partner svg {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 48px;
    display: block;
  }
  .partner svg.partner-grab {
    max-height: 50px;
  }
  .partner-note {
    text-align: center;
    margin-top: 32px;
    font-size: 11px;
    color: rgba(10,10,10,0.4);
    letter-spacing: 0.16em;
    text-transform: uppercase;
  }

  /* CONTACT */
  .contact {
    background: var(--red);
    padding: 120px 48px;
  }
  .contact-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    max-width: 1200px;
    margin: 0 auto;
    align-items: start;
  }
  .contact-left h2 {
    font-size: clamp(40px, 5vw, 72px);
    color: var(--cream);
    margin-top: 16px;
    margin-bottom: 32px;
  }
  .contact-left h2 em { opacity: 0.75; }
  .addresses {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px;
    margin-top: 48px;
  }
  .address {
    padding-top: 24px;
    border-top: 1px solid var(--cream-faint);
  }
  .address-label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: var(--cream);
    margin-bottom: 12px;
  }
  .address-lines {
    font-size: 14px;
    line-height: 1.65;
    color: var(--cream-dim);
  }
  .form {
    background: var(--cream);
    padding: 48px;
    border-radius: 4px;
    color: var(--ink);
  }
  .form h3 {
    font-family: 'Stickler Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 8px;
    color: var(--ink);
    letter-spacing: -0.02em;
  }
  .form-sub {
    font-size: 14px;
    color: rgba(10,10,10,0.6);
    margin-bottom: 32px;
  }
  .field {
    margin-bottom: 20px;
  }
  .field label {
    display: block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: rgba(10,10,10,0.7);
    margin-bottom: 8px;
  }
  .field input, .field textarea, .field select {
    width: 100%;
    padding: 14px 16px;
    background: var(--white);
    border: 1px solid rgba(10,10,10,0.15);
    border-radius: 4px;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 15px;
    color: var(--ink);
    transition: border-color 0.2s ease;
  }
  .field input:focus, .field textarea:focus, .field select:focus {
    outline: none;
    border-color: var(--red);
  }
  .field textarea { min-height: 100px; resize: vertical; }
  .form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
  }
  .form-submit {
    width: 100%;
    padding: 18px;
    background: var(--red);
    color: var(--cream);
    border: none;
    border-radius: 999px;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    cursor: pointer;
    margin-top: 16px;
    transition: background 0.3s ease;
  }
  .form-submit:hover { background: var(--ink); }
  .recaptcha-wrap {
    margin: 8px 0 4px;
    display: flex;
    justify-content: flex-start;
    transform-origin: left top;
  }
  @media (max-width: 380px) {
    .recaptcha-wrap { transform: scale(0.88); }
  }

  /* FOOTER */
  footer {
    background: var(--ink);
    padding: 48px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap;
  }
  footer .footer-logo { height: 24px; }
  footer .footer-logo svg { height: 100%; width: auto; }
  footer .footer-copy {
    font-size: 12px;
    color: var(--cream-dim);
    letter-spacing: 0.02em;
  }
  footer .footer-links {
    display: flex;
    gap: 24px;
  }
  footer .footer-links a {
    font-size: 12px;
    color: var(--cream-dim);
    text-decoration: none;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    font-weight: 500;
    transition: color 0.2s ease;
  }
  footer .footer-links a:hover { color: var(--cream); }

  /* HALFTONE DOT ANIMATION */
  @keyframes dotBreathe {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
  }

  /* Reveal on scroll */
  .reveal {
    opacity: 0;
    transform: translateY(60px);
    transition: opacity 1.1s cubic-bezier(0.2, 0.7, 0.3, 1),
                transform 1.1s cubic-bezier(0.2, 0.7, 0.3, 1);
    will-change: opacity, transform;
  }
  .reveal.in { opacity: 1; transform: translateY(0); }
  .reveal[data-delay="1"] { transition-delay: 0.12s; }
  .reveal[data-delay="2"] { transition-delay: 0.24s; }
  .reveal[data-delay="3"] { transition-delay: 0.36s; }
  .reveal[data-delay="4"] { transition-delay: 0.48s; }

  /* Fade-only variant for sticky-positioned elements
     (transform would break their sticky offset) */
  .reveal-fade {
    opacity: 0;
    transition: opacity 1.2s cubic-bezier(0.2, 0.7, 0.3, 1);
  }
  .reveal-fade.in { opacity: 1; }

  /* RESPONSIVE */
  @media (max-width: 980px) {
    nav { padding: 20px 24px; }
    nav.scrolled { padding: 14px 24px; }

    .nav-toggle { display: flex; }
    nav .menu {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      justify-content: flex-start;
      position: fixed;
      inset: 0;
      width: 100%;
      height: 100vh;
      height: 100dvh;
      background: var(--ink);
      padding: 120px 32px 48px;
      gap: 8px;
      z-index: 110;
      transform: translateX(100%);
      transition: transform 0.45s cubic-bezier(0.7, 0, 0.3, 1);
      overflow-y: auto;
      pointer-events: none;
    }
    nav .menu.is-open {
      transform: translateX(0);
      pointer-events: auto;
    }
    nav .menu a {
      font-family: 'Stickler Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
      font-size: clamp(32px, 8vw, 48px);
      font-weight: 700;
      letter-spacing: -0.03em;
      line-height: 1.15;
      padding: 8px 0;
    }
    nav .menu a::after { display: none; }
    nav .menu .nav-cta {
      margin-top: 28px;
      font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
      font-size: 12px;
      letter-spacing: 0.08em;
      padding: 14px 24px;
    }
    body.nav-open { overflow: hidden; }
    body.admin-bar nav { top: 32px; }
    body.admin-bar nav .menu {
      top: 32px;
      height: calc(100vh - 32px);
      height: calc(100dvh - 32px);
    }
    .yocto-page { padding: 120px 24px 60px; }
    .hero { padding: 120px 24px 60px; grid-template-columns: 1fr; gap: 40px; }
    .hero-mark { max-width: 280px; order: -1; }
    .scroll-cue { display: none; }
    .values { padding: 24px; }
    .values-inner { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .value-item { padding: 12px 16px !important; border-right: none; border-bottom: 1px solid var(--cream-faint); }
    section { padding: 80px 24px; }
    .about { grid-template-columns: 1fr; gap: 40px; }
    .services-wrap { padding: 80px 0; }
    .services-header { grid-template-columns: 1fr; gap: 24px; margin-bottom: 48px; padding: 0 24px; overflow: visible; }
    .services-header h2 { line-height: 1; padding-top: 0.18em; }
    .panels { flex-direction: column; height: auto; padding: 0 24px; gap: 12px; overflow: visible; }
    .panel {
      min-height: 0;
      flex: 1 1 auto !important;
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
    }
    .panel-bg {
      position: absolute;
      inset: 0 auto auto 0;
      width: 100%;
      height: 46%;
      padding: 16px 24px 0;
      align-items: flex-start;
    }
    .panel-bg svg {
      max-height: 100%;
      opacity: 0.28;
    }
    .panel-overlay {
      background: linear-gradient(180deg, transparent 20%, rgba(0,0,0,0.72) 70%);
    }
    .panel-content {
      position: relative;
      inset: auto;
      padding: 140px 24px 24px;
      display: flex;
      flex-direction: column;
      gap: 10px;
    }
    .panel-num {
      position: static;
    }
    .panel-name {
      position: static;
      left: auto;
      bottom: auto !important;
      transform: none !important;
      white-space: normal;
      font-size: 32px;
      line-height: 1.05;
      padding-top: 0.06em;
    }
    .panel-desc {
      position: static;
      left: auto;
      right: auto;
      bottom: auto;
      max-width: none;
      opacity: 1 !important;
      transform: none !important;
      pointer-events: auto;
    }
    .stack-section { padding: 80px 24px 40px; }
    .stack-container { padding-bottom: 0; }
    .stack-card { padding: 32px 24px; grid-template-columns: 1fr; gap: 16px; height: auto; min-height: 380px; position: relative !important; top: auto !important; margin-bottom: 16px !important; }
    .stack-index { font-size: 40px; }
    .stack-visual { display: none; }
    .stats { padding: 80px 24px; }
    .stats-grid { grid-template-columns: 1fr; }
    .stat { border-right: none; border-bottom: 1px solid rgba(245,241,232,0.15); padding: 32px 16px; }
    .stat:last-child { border-bottom: none; }
    .partners-grid { grid-template-columns: repeat(2, 1fr); }
    .contact { padding: 80px 24px; }
    .contact-grid { grid-template-columns: 1fr; gap: 48px; }
    .addresses { grid-template-columns: 1fr; }
    .form { padding: 32px 24px; }
    .form-row { grid-template-columns: 1fr; }
    footer { padding: 32px 24px; flex-direction: column; text-align: center; }
  }

  @media screen and (max-width: 782px) {
    body.admin-bar nav { top: 46px; }
    body.admin-bar nav .menu {
      top: 46px;
      height: calc(100vh - 46px);
      height: calc(100dvh - 46px);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
    .reveal { opacity: 1; transform: none; }
  }
