@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/inter-1.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/inter-2.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/inter-3.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/inter-4.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/inter-5.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/inter-6.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(fonts/inter-7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/inter-1.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/inter-2.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/inter-3.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/inter-4.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/inter-5.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/inter-6.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(fonts/inter-7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/inter-1.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/inter-2.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/inter-3.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/inter-4.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/inter-5.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/inter-6.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(fonts/inter-7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/inter-1.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/inter-2.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/inter-3.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/inter-4.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/inter-5.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/inter-6.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/inter-7.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/unbounded-8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/unbounded-9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/unbounded-10.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/unbounded-11.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(fonts/unbounded-12.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/unbounded-8.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/unbounded-9.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/unbounded-10.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/unbounded-11.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Unbounded';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(fonts/unbounded-12.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}


*,*::before,*::after{box-sizing:border-box}html,body{overflow-x:clip}img,video{max-width:100%;height:auto}svg{max-width:100%}a,button,input,select,textarea,[role="button"]{max-width:100%}:where([data-door-np],[role="button"]){cursor:pointer}:where([data-door-np],[role="button"]):hover{opacity:.9}:where([data-door-np],[role="button"]):focus-visible{outline:2px solid currentColor;outline-offset:2px}section,main,header,footer,article,aside{max-width:100%;min-width:0}body{margin:0;font-family:var(--t-font-body);font-size:var(--t-fs-base);color:var(--c-text, #111);background:var(--c-bg, #fff)}h1,h2,h3,.is-heading{font-family:var(--t-font-heading)}h1{font-size:var(--t-fs-h1)}h2{font-size:var(--t-fs-h2)}h3{font-size:var(--t-fs-h3)}.is-heading{font-size:var(--t-fs-h2);font-weight:bold}.rt-img-left{float:left;margin:0 1rem .5rem 0}.rt-img-right{float:right;margin:0 0 .5rem 1rem}.rt-img-center{display:block;margin:.5rem auto}.rt-img-full{display:block;width:100%}.rt-w-25{width:25%}.rt-w-50{width:50%}.rt-w-75{width:75%}.rt-w-100{width:100%}.rt-img-left,.rt-img-center,.rt-img-right,.rt-img-full,.rt-w-25,.rt-w-50,.rt-w-75,.rt-w-100{max-width:100%;height:auto}.rt-text-left{text-align:left}.rt-text-center{text-align:center}.rt-text-right{text-align:right}.rt-text-justify{text-align:justify}.rt-content table{border-collapse:collapse;width:100%}.rt-content th,.rt-content td{border:1px solid var(--c-border, rgba(128,128,128,.35));padding:.5rem .75rem}.rt-content th{font-weight:600;background:var(--c-surface, rgba(128,128,128,.12))}.rt-content table.rt-table-left{margin-right:auto;width:auto!important}.rt-content table.rt-table-center{margin-left:auto;margin-right:auto;width:auto!important}.rt-content table.rt-table-right{margin-left:auto;width:auto!important}.rt-content table.rt-table-w-10{width:10%!important}.rt-content table.rt-table-w-15{width:15%!important}.rt-content table.rt-table-w-20{width:20%!important}.rt-content table.rt-table-w-25{width:25%!important}.rt-content table.rt-table-w-30{width:30%!important}.rt-content table.rt-table-w-35{width:35%!important}.rt-content table.rt-table-w-40{width:40%!important}.rt-content table.rt-table-w-45{width:45%!important}.rt-content table.rt-table-w-50{width:50%!important}.rt-content table.rt-table-w-55{width:55%!important}.rt-content table.rt-table-w-60{width:60%!important}.rt-content table.rt-table-w-65{width:65%!important}.rt-content table.rt-table-w-70{width:70%!important}.rt-content table.rt-table-w-75{width:75%!important}.rt-content table.rt-table-w-80{width:80%!important}.rt-content table.rt-table-w-85{width:85%!important}.rt-content table.rt-table-w-90{width:90%!important}.rt-content table.rt-table-w-95{width:95%!important}.rt-content table.rt-table-w-100{width:100%!important}.rt-content table.rt-table-w-10,.rt-content table.rt-table-w-15,.rt-content table.rt-table-w-20,.rt-content table.rt-table-w-25,.rt-content table.rt-table-w-30,.rt-content table.rt-table-w-35,.rt-content table.rt-table-w-40,.rt-content table.rt-table-w-45,.rt-content table.rt-table-w-50,.rt-content table.rt-table-w-55,.rt-content table.rt-table-w-60,.rt-content table.rt-table-w-65,.rt-content table.rt-table-w-70,.rt-content table.rt-table-w-75,.rt-content table.rt-table-w-80,.rt-content table.rt-table-w-85,.rt-content table.rt-table-w-90,.rt-content table.rt-table-w-95,.rt-content table.rt-table-w-100{min-width:0!important}.rt-content .table-wrap{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}@media (max-width:600px){.rt-content .table-wrap table{min-width:0;table-layout:auto!important}}

.hero-panel{position:relative;width:100%;overflow:hidden;background:var(--c-bg);color:var(--c-text);font-family:var(--t-font-body);--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.75)}
.hero-panel__bg{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(var(--c-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--c-grid-line) 1px,transparent 1px);background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse at 50% 40%,var(--c-bg) 25%,transparent 75%);mask-image:radial-gradient(ellipse at 50% 40%,var(--c-bg) 25%,transparent 75%)}
.hero-panel__glow{position:absolute;top:-220px;right:-160px;width:680px;height:680px;max-width:120%;border-radius:50%;pointer-events:none;background:radial-gradient(circle,var(--c-accent-glow),transparent 65%);opacity:.7}
.hero-panel__inner{position:relative;max-width:var(--t-container-max);margin:0 auto;padding:calc(var(--t-section-py)*1.05) 1.25rem calc(var(--t-section-py)*0.85);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:3rem;align-items:center}
.hero-panel__card{position:relative;padding:2.75rem;border:1px solid var(--c-border);border-radius:calc(var(--t-radius)*1.3);background:linear-gradient(160deg,var(--c-surface-alt),var(--c-surface));box-shadow:0 40px 90px var(--c-overlay)}
.hero-panel__card::before{content:'';position:absolute;top:-1px;left:2.75rem;width:140px;height:2px;background:linear-gradient(90deg,var(--c-accent),transparent)}
.hero-panel__eyebrow{display:inline-flex;align-items:center;gap:.5rem;margin:0;padding:.35rem .85rem;border:1px solid var(--c-border-strong);border-radius:999px;background:var(--c-bg);font-size:var(--fs-xs);color:var(--c-text)}
.hero-panel__dot{width:6px;height:6px;border-radius:50%;background:var(--c-amber);box-shadow:0 0 10px var(--c-amber)}
.hero-panel__title{margin:1.25rem 0 1rem;font-family:var(--t-font-heading);font-weight:800;font-size:calc(var(--t-fs-h1)*1.05);line-height:1.1;letter-spacing:-.02em;color:var(--c-heading);overflow-wrap:break-word}
.hero-panel__accent{background:linear-gradient(90deg,var(--c-accent),var(--c-amber));-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-panel__text{margin:0 0 1.75rem;max-width:34rem;line-height:1.7}
.hero-panel__actions{display:flex;flex-wrap:wrap;gap:.75rem}
.hero-panel__btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:var(--t-radius-sm);font-weight:600;font-size:var(--fs-sm);text-decoration:none;box-sizing:border-box;transition:background-color .2s,border-color .2s,transform .2s}
.hero-panel__btn--primary{background:var(--c-accent);color:var(--c-on-accent);box-shadow:0 0 28px var(--c-accent-glow)}
.hero-panel__btn--primary:hover,.hero-panel__btn--primary:focus-visible{background:var(--c-accent-hover);transform:translateY(-1px)}
.hero-panel__btn--ghost{border:1px solid var(--c-border-strong);color:var(--c-heading);background:var(--c-bg)}
.hero-panel__btn--ghost:hover,.hero-panel__btn--ghost:focus-visible{border-color:var(--c-accent-line);background:var(--c-surface-alt)}
.hero-panel__stats{list-style:none;margin:2rem 0 0;padding:1.5rem 0 0;border-top:1px solid var(--c-border);display:flex;flex-wrap:wrap;gap:.75rem}
.hero-panel__stat{display:flex;flex-direction:column;gap:.15rem;padding:.6rem .95rem;border:1px solid var(--c-border);border-radius:var(--t-radius-sm);background:var(--c-bg)}
.hero-panel__stat-value{font-family:var(--t-font-heading);font-weight:700;font-size:var(--fs-sm);color:var(--c-heading)}
.hero-panel__stat-label{font-size:var(--fs-xs);color:var(--c-subtle)}
.hero-panel__visual{position:relative;padding:1.5rem;border:1px solid var(--c-border);border-radius:calc(var(--t-radius)*1.3);background:var(--c-surface);box-shadow:0 30px 70px var(--c-overlay);animation:hero-panel-float 7s ease-in-out infinite}
@keyframes hero-panel-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.hero-panel__visual-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;font-size:var(--fs-xs);color:var(--c-muted)}
.hero-panel__visual-title{letter-spacing:.12em;text-transform:uppercase}
.hero-panel__status{display:inline-flex;align-items:center;gap:.4rem;padding:.2rem .6rem;border-radius:999px;background:var(--c-amber-soft);color:var(--c-amber);font-weight:600}
.hero-panel__status-dot{width:6px;height:6px;border-radius:50%;background:var(--c-amber)}
.hero-panel__orbit{position:relative;width:100%;max-width:320px;aspect-ratio:1/1;margin:1.25rem auto 0}
.hero-panel__ring{position:absolute;border-radius:50%}
.hero-panel__ring--outer{inset:6%;border:1px dashed var(--c-accent-line)}
.hero-panel__ring--inner{inset:27%;border:1px solid var(--c-border-strong);background:radial-gradient(circle,var(--c-accent-soft),transparent 70%)}
.hero-panel__core{position:absolute;top:50%;left:50%;width:54px;height:54px;margin:-27px 0 0 -27px;border-radius:50%;background:radial-gradient(circle,var(--c-accent-hover),var(--c-accent) 55%,var(--c-accent-soft) 72%);box-shadow:0 0 44px var(--c-accent-glow),0 0 0 12px var(--c-accent-soft)}
.hero-panel__node{position:absolute;width:12px;height:12px;border-radius:50%;border:2px solid var(--c-accent);background:var(--c-bg);box-sizing:border-box}
.hero-panel__node--1{top:9%;left:30%}
.hero-panel__node--2{top:30%;right:5%}
.hero-panel__node--3{bottom:20%;left:10%}
.hero-panel__node--4{bottom:12%;right:28%}
.hero-panel__node--5{top:62%;left:52%;border-color:var(--c-amber)}
.hero-panel__tags{list-style:none;margin:1.25rem 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem}
.hero-panel__tag{padding:.3rem .8rem;border-radius:999px;border:1px solid var(--c-accent-line);background:var(--c-accent-soft);color:var(--c-accent);font-size:var(--fs-xs);font-weight:600;letter-spacing:.04em}
.hero-panel__tag--amber{border-color:var(--c-amber);background:var(--c-amber-soft);color:var(--c-amber)}
.hero-panel__license{position:relative;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border);background:var(--c-surface)}
.hero-panel__license-inner{max-width:var(--t-container-max);margin:0 auto;padding:1rem 1.25rem;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.6rem 2rem;font-size:var(--fs-xs)}
.hero-panel__license-badge{display:inline-flex;align-items:center;gap:.5rem;color:var(--c-text);font-weight:600}
.hero-panel__license-badge svg{color:var(--c-amber);flex-shrink:0}
.hero-panel__license-list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 2rem;color:var(--c-subtle);letter-spacing:.12em;text-transform:uppercase}
@media (prefers-reduced-motion:reduce){.hero-panel__visual{animation:none}}
@media (max-width:900px){.hero-panel__inner{grid-template-columns:1fr;gap:2rem}.hero-panel__visual{max-width:440px;width:100%;margin:0 auto;box-sizing:border-box}}
@media (max-width:768px){.hero-panel__inner{padding:calc(var(--t-section-py)*0.6) 1rem calc(var(--t-section-py)*0.6)}.hero-panel__card{padding:2rem 1.5rem}.hero-panel__card::before{left:1.5rem}.hero-panel__title{font-size:calc(var(--t-fs-h1)*0.8)}}
@media (max-width:480px){.hero-panel__card{padding:1.5rem 1.15rem}.hero-panel__title{font-size:calc(var(--t-fs-h1)*0.66)}.hero-panel__btn{width:100%}.hero-panel__stat{flex:1 1 100%}.hero-panel__license-list{letter-spacing:.06em}}

.services-grid{width:100%;background:var(--c-bg);color:var(--c-text);font-family:var(--t-font-body);padding:var(--t-section-py) 0;scroll-margin-top:72px;--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.7)}
.services-grid__wrap{max-width:var(--t-container-max);margin:0 auto;padding:0 1.25rem}
.services-grid__head{max-width:40rem;margin-bottom:3rem}
.services-grid__eyebrow{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;font-size:var(--fs-xs);font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--c-accent)}
.services-grid__eyebrow span{width:28px;height:1px;background:var(--c-accent)}
.services-grid__title{margin:0 0 1rem;font-family:var(--t-font-heading);font-weight:700;font-size:var(--t-fs-h2);line-height:1.18;color:var(--c-heading);overflow-wrap:break-word}
.services-grid__intro{margin:0;line-height:1.7;color:var(--c-muted)}
.services-grid__list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.services-grid__card{position:relative;display:flex;flex-direction:column;gap:.75rem;padding:1.75rem;border:1px solid var(--c-border);border-radius:var(--t-radius);background:var(--c-surface);transition:border-color .25s,transform .25s,background-color .25s}
.services-grid__card:hover{border-color:var(--c-accent-line);background:var(--c-surface-alt);transform:translateY(-3px)}
.services-grid__icon{display:inline-grid;place-items:center;width:42px;height:42px;margin-bottom:.5rem;border-radius:var(--t-radius-sm);border:1px solid var(--c-accent-line);background:var(--c-accent-soft);color:var(--c-accent)}
.services-grid__name{font-family:var(--t-font-heading);font-weight:700;font-size:var(--t-fs-h3);line-height:1.3;color:var(--c-heading)}
.services-grid__text{margin:0;font-size:var(--fs-sm);line-height:1.7;color:var(--c-muted)}
@media (max-width:900px){.services-grid__list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:768px){.services-grid{padding:calc(var(--t-section-py)*0.65) 0}.services-grid__title{font-size:calc(var(--t-fs-h2)*0.8)}.services-grid__head{margin-bottom:2rem}}
@media (max-width:560px){.services-grid__list{grid-template-columns:1fr}.services-grid__card{padding:1.35rem}.services-grid__wrap{padding:0 1rem}}

.about-stats{width:100%;background:linear-gradient(180deg,var(--c-bg),var(--c-surface) 60%,var(--c-bg));color:var(--c-text);font-family:var(--t-font-body);padding:var(--t-section-py) 0;scroll-margin-top:72px;--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.7)}
.about-stats__grid{max-width:var(--t-container-max);margin:0 auto;padding:0 1.25rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem;align-items:center}
.about-stats__eyebrow{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;font-size:var(--fs-xs);font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--c-accent)}
.about-stats__eyebrow span{width:28px;height:1px;background:var(--c-accent)}
.about-stats__title{margin:0 0 1.5rem;font-family:var(--t-font-heading);font-weight:700;font-size:var(--t-fs-h2);line-height:1.18;color:var(--c-heading);overflow-wrap:break-word}
.about-stats__text{margin:0 0 1.1rem;line-height:1.75;color:var(--c-text)}
.about-stats__text:last-child{margin-bottom:0;color:var(--c-muted)}
.about-stats__figures{margin:0;display:flex;flex-direction:column}
.about-stats__row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:1.5rem;align-items:center;padding:1.5rem 0;border-top:1px solid var(--c-border)}
.about-stats__row:last-child{border-bottom:1px solid var(--c-border)}
.about-stats__value{margin:0;font-family:var(--t-font-heading);font-weight:800;font-size:calc(var(--t-fs-h1)*1.05);line-height:1;letter-spacing:-.03em;color:var(--c-accent);overflow-wrap:anywhere}
.about-stats__row--amber .about-stats__value{color:var(--c-amber)}
.about-stats__label{margin:0;font-size:var(--fs-sm);line-height:1.55;color:var(--c-muted)}
@media (max-width:900px){.about-stats__grid{grid-template-columns:1fr;gap:2.5rem}}
@media (max-width:768px){.about-stats{padding:calc(var(--t-section-py)*0.65) 0}.about-stats__title{font-size:calc(var(--t-fs-h2)*0.8)}.about-stats__value{font-size:var(--t-fs-h2)}}
@media (max-width:480px){.about-stats__grid{padding:0 1rem}.about-stats__row{grid-template-columns:1fr;gap:.5rem;padding:1.15rem 0}.about-stats__value{font-size:calc(var(--t-fs-h2)*0.9)}}

.process-timeline{width:100%;background:var(--c-bg);color:var(--c-text);font-family:var(--t-font-body);padding:var(--t-section-py) 0;scroll-margin-top:72px;--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.7)}
.process-timeline__wrap{max-width:var(--t-container-max);margin:0 auto;padding:0 1.25rem}
.process-timeline__head{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:2rem 4rem;align-items:end;margin-bottom:3.5rem}
.process-timeline__eyebrow{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;font-size:var(--fs-xs);font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--c-accent)}
.process-timeline__eyebrow span{width:28px;height:1px;background:var(--c-accent)}
.process-timeline__title{margin:0;font-family:var(--t-font-heading);font-weight:700;font-size:var(--t-fs-h2);line-height:1.18;color:var(--c-heading);overflow-wrap:break-word}
.process-timeline__intro{margin:0;line-height:1.7;color:var(--c-muted)}
.process-timeline__steps{position:relative;list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1.5rem}
.process-timeline__steps::before{content:'';position:absolute;top:7px;left:0;right:0;height:1px;background:linear-gradient(90deg,var(--c-accent),var(--c-border-strong) 70%,transparent)}
.process-timeline__step{position:relative;display:flex;flex-direction:column;gap:.6rem;padding-top:2.5rem}
.process-timeline__marker{position:absolute;top:0;left:0;width:15px;height:15px;border-radius:50%;border:2px solid var(--c-accent);background:var(--c-bg);box-sizing:border-box}
.process-timeline__step:last-child .process-timeline__marker{background:var(--c-accent);box-shadow:0 0 18px var(--c-accent-glow)}
.process-timeline__num{font-family:var(--t-font-heading);font-weight:800;font-size:var(--t-fs-h2);line-height:1;color:transparent;-webkit-text-stroke:1px var(--c-accent-line)}
.process-timeline__step:last-child .process-timeline__num{color:var(--c-accent);-webkit-text-stroke:0}
.process-timeline__name{font-family:var(--t-font-heading);font-weight:700;font-size:var(--t-fs-h3);color:var(--c-heading)}
.process-timeline__text{margin:0;font-size:var(--fs-sm);line-height:1.65;color:var(--c-muted)}
@media (max-width:900px){.process-timeline__head{grid-template-columns:1fr;margin-bottom:2.5rem}.process-timeline__steps{grid-template-columns:1fr;gap:0;padding-left:2.25rem}.process-timeline__steps::before{top:0;bottom:0;left:7px;right:auto;width:1px;height:auto;background:linear-gradient(180deg,var(--c-accent),var(--c-border-strong) 80%,transparent)}.process-timeline__step{padding:0 0 2.25rem}.process-timeline__marker{left:-2.25rem;top:.35rem}.process-timeline__num{font-size:calc(var(--t-fs-h2)*0.8)}}
@media (max-width:768px){.process-timeline{padding:calc(var(--t-section-py)*0.65) 0}.process-timeline__title{font-size:calc(var(--t-fs-h2)*0.8)}}
@media (max-width:480px){.process-timeline__wrap{padding:0 1rem}.process-timeline__step{padding-bottom:1.75rem}}

.work-cases{width:100%;background:var(--c-bg);color:var(--c-text);font-family:var(--t-font-body);padding:var(--t-section-py) 0;scroll-margin-top:72px;--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.72)}
.work-cases__wrap{max-width:var(--t-container-max);margin:0 auto;padding:0 1.25rem}
.work-cases__eyebrow{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;font-size:var(--fs-xs);font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--c-accent)}
.work-cases__eyebrow span{width:28px;height:1px;background:var(--c-accent)}
.work-cases__title{margin:0 0 2.5rem;font-family:var(--t-font-heading);font-weight:700;font-size:var(--t-fs-h2);line-height:1.18;color:var(--c-heading)}
.work-cases__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.work-cases__card{display:flex;flex-direction:column;border:1px solid var(--c-border);border-radius:var(--t-radius);background:var(--c-surface);overflow:hidden;transition:border-color .25s,transform .25s}
.work-cases__card:hover{border-color:var(--c-accent-line);transform:translateY(-3px)}
.work-cases__visual{position:relative;height:170px;border-bottom:1px solid var(--c-border);background-color:var(--c-surface-alt);background-image:radial-gradient(circle at 75% 60%,var(--c-accent-soft),transparent 55%),linear-gradient(var(--c-grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--c-grid-line) 1px,transparent 1px);background-size:auto,26px 26px,26px 26px}
.work-cases__tag{position:absolute;top:1rem;left:1rem;padding:.25rem .7rem;border-radius:999px;font-size:var(--fs-xs);font-weight:600;border:1px solid var(--c-accent-line);background:var(--c-accent-soft);color:var(--c-accent)}
.work-cases__tag--amber{border-color:var(--c-amber);background:var(--c-amber-soft);color:var(--c-amber)}
.work-cases__icon{position:absolute;right:1.5rem;bottom:1.5rem;color:var(--c-accent)}
.work-cases__icon--amber{color:var(--c-amber)}
.work-cases__body{display:flex;flex-direction:column;gap:.6rem;padding:1.5rem;flex:1}
.work-cases__name{font-family:var(--t-font-heading);font-weight:700;font-size:var(--t-fs-h3);color:var(--c-heading)}
.work-cases__text{margin:0;font-size:var(--fs-sm);line-height:1.65;color:var(--c-muted)}
.work-cases__note{margin-top:auto;padding-top:.75rem;font-size:var(--fs-xs);color:var(--c-subtle)}
.work-cases__foot{margin:1.75rem 0 0;font-size:var(--fs-sm);line-height:1.6;color:var(--c-subtle)}
.work-cases__link{color:var(--c-accent);font-weight:600;text-decoration:none;white-space:nowrap}
.work-cases__link:hover,.work-cases__link:focus-visible{color:var(--c-accent-hover);text-decoration:underline}
@media (max-width:900px){.work-cases__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:768px){.work-cases{padding:calc(var(--t-section-py)*0.65) 0}.work-cases__title{font-size:calc(var(--t-fs-h2)*0.8)}}
@media (max-width:560px){.work-cases__wrap{padding:0 1rem}.work-cases__grid{grid-template-columns:1fr}.work-cases__visual{height:140px}.work-cases__link{white-space:normal}}

.tech-stack{width:100%;background:var(--c-surface);border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border);color:var(--c-text);font-family:var(--t-font-body);padding:var(--t-section-py) 0;scroll-margin-top:72px;--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.72)}
.tech-stack__layout{max-width:var(--t-container-max);margin:0 auto;padding:0 1.25rem;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:4rem;align-items:start}
.tech-stack__aside{order:2;position:sticky;top:100px}
.tech-stack__groups{order:1;display:flex;flex-direction:column}
.tech-stack__eyebrow{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;font-size:var(--fs-xs);font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--c-accent)}
.tech-stack__eyebrow span{width:28px;height:1px;background:var(--c-accent)}
.tech-stack__title{margin:0 0 1rem;font-family:var(--t-font-heading);font-weight:700;font-size:var(--t-fs-h2);line-height:1.18;color:var(--c-heading);overflow-wrap:break-word}
.tech-stack__intro{margin:0;line-height:1.7;color:var(--c-muted)}
.tech-stack__group{display:grid;grid-template-columns:minmax(0,10rem) minmax(0,1fr);gap:1.25rem;padding:1.5rem 0;border-top:1px solid var(--c-border)}
.tech-stack__group:last-child{border-bottom:1px solid var(--c-border)}
.tech-stack__group-title{display:flex;align-items:baseline;gap:.6rem;padding-top:.45rem;font-size:var(--fs-xs);font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--c-muted)}
.tech-stack__count{font-family:var(--t-font-heading);color:var(--c-accent);letter-spacing:0}
.tech-stack__pills{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.5rem}
.tech-stack__pill{padding:.45rem .9rem;border:1px solid var(--c-border-strong);border-radius:999px;background:var(--c-bg);font-size:var(--fs-sm);font-weight:500;color:var(--c-text);transition:border-color .2s,color .2s}
.tech-stack__pill:hover{border-color:var(--c-accent-line);color:var(--c-accent)}
@media (max-width:900px){.tech-stack__layout{grid-template-columns:1fr;gap:2.5rem}.tech-stack__aside{order:0;position:static}.tech-stack__groups{order:1}}
@media (max-width:768px){.tech-stack{padding:calc(var(--t-section-py)*0.65) 0}.tech-stack__title{font-size:calc(var(--t-fs-h2)*0.8)}}
@media (max-width:560px){.tech-stack__layout{padding:0 1rem}.tech-stack__group{grid-template-columns:1fr;gap:.75rem}.tech-stack__group-title{padding-top:0}}

.seo-article{width:100%;background:var(--c-bg);color:var(--c-text);font-family:var(--t-font-body);padding:var(--t-section-py) 0;--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.72)}
.seo-article__inner{max-width:820px;margin:0 auto;padding:0 1.25rem}
.seo-article__eyebrow{display:inline-block;margin:0 0 1rem;padding:.25rem .75rem;border:1px solid var(--c-accent-line);border-radius:999px;font-size:var(--fs-xs);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--c-accent)}
.seo-article__title{margin:0 0 .75rem;font-family:var(--t-font-heading);font-weight:800;font-size:var(--t-fs-h1);line-height:1.12;letter-spacing:-.02em;color:var(--c-heading);overflow-wrap:break-word}
.seo-article__meta{margin:0 0 1.5rem;font-size:var(--fs-xs);color:var(--c-subtle)}
.seo-article__lead{margin:0 0 2rem;padding-left:1rem;border-left:2px solid var(--c-accent);font-size:calc(var(--t-fs-base)*1.1);line-height:1.7;color:var(--c-heading)}
.seo-article__body{line-height:1.8;color:var(--c-text);overflow-wrap:break-word;word-break:break-word}
.seo-article__body h2{margin:2.25rem 0 .85rem;font-family:var(--t-font-heading);font-weight:700;font-size:calc(var(--t-fs-h2)*0.7);line-height:1.3;color:var(--c-heading)}
.seo-article__body h3{margin:1.75rem 0 .65rem;font-family:var(--t-font-heading);font-size:var(--t-fs-h3);color:var(--c-heading)}
.seo-article__body p{margin:0 0 1.1rem}
.seo-article__body ul,.seo-article__body ol{margin:0 0 1.25rem;padding-left:1.4rem}
.seo-article__body li{margin-bottom:.45rem}
.seo-article__body li::marker{color:var(--c-accent)}
.seo-article__body a{color:var(--c-accent);overflow-wrap:break-word}
.seo-article__body a:hover{color:var(--c-accent-hover)}
.seo-article__body strong{color:var(--c-heading)}
.seo-article__body blockquote{margin:1.5rem 0;padding:1rem 1.25rem;border-left:2px solid var(--c-amber);border-radius:0 var(--t-radius-sm) var(--t-radius-sm) 0;background:var(--c-surface);color:var(--c-heading)}
.seo-article__body img{max-width:100%;height:auto;border-radius:var(--t-radius-sm)}
.seo-article__body iframe,.seo-article__body video{display:block;width:100%;max-width:100%;height:auto;aspect-ratio:16/9;border:0;border-radius:var(--t-radius-sm)}
.seo-article__body pre,.seo-article__body code{overflow-x:auto;white-space:pre-wrap;font-size:var(--fs-sm);background:var(--c-surface);border-radius:var(--t-radius-sm)}
.seo-article__body pre{padding:1rem;border:1px solid var(--c-border)}
.seo-article__body code{padding:.1rem .35rem}
.seo-article__body table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-collapse:collapse;margin:1.5rem 0;font-size:var(--fs-sm)}
.seo-article__body th,.seo-article__body td{min-width:120px;padding:.7rem .9rem;border:1px solid var(--c-border);text-align:left}
.seo-article__body th{background:var(--c-surface-alt);color:var(--c-heading)}
@media (max-width:768px){.seo-article{padding:calc(var(--t-section-py)*0.65) 0}.seo-article__title{font-size:calc(var(--t-fs-h1)*0.72)}}
@media (max-width:480px){.seo-article__inner{padding:0 1rem}.seo-article__title{font-size:calc(var(--t-fs-h1)*0.6)}.seo-article__body ul,.seo-article__body ol{padding-left:1.1rem}.seo-article__body blockquote{margin:1rem 0;padding:.85rem 1rem}.seo-article__body h2{margin-top:1.75rem}}

.contact-form{position:relative;width:100%;background:radial-gradient(ellipse at 10% 90%,var(--c-accent-soft),transparent 50%),var(--c-bg);color:var(--c-text);font-family:var(--t-font-body);padding:var(--t-section-py) 0;scroll-margin-top:72px;--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.75)}
.contact-form__grid{max-width:var(--t-container-max);margin:0 auto;padding:0 1.25rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem;align-items:start}
.contact-form__eyebrow{display:flex;align-items:center;gap:.75rem;margin:0 0 1rem;font-size:var(--fs-xs);font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--c-accent)}
.contact-form__eyebrow span{width:28px;height:1px;background:var(--c-accent)}
.contact-form__title{margin:0 0 1rem;font-family:var(--t-font-heading);font-weight:700;font-size:var(--t-fs-h2);line-height:1.18;color:var(--c-heading);overflow-wrap:break-word}
.contact-form__intro{margin:0 0 2rem;line-height:1.7;color:var(--c-muted)}
.contact-form__channels{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-direction:column;gap:.75rem}
.contact-form__channel{display:flex;align-items:center;gap:1rem;padding:1rem 1.15rem;border:1px solid var(--c-border);border-radius:var(--t-radius);background:var(--c-surface);text-decoration:none;color:var(--c-text);transition:border-color .2s,background-color .2s}
.contact-form__channel:hover,.contact-form__channel:focus-visible{border-color:var(--c-accent-line);background:var(--c-surface-alt)}
.contact-form__channel-icon{display:inline-grid;place-items:center;flex-shrink:0;width:40px;height:40px;border-radius:var(--t-radius-sm);border:1px solid var(--c-accent-line);background:var(--c-accent-soft);color:var(--c-accent)}
.contact-form__channel-text{display:flex;flex-direction:column;min-width:0;flex:1}
.contact-form__channel-label{font-weight:600;color:var(--c-heading);font-size:var(--fs-sm)}
.contact-form__channel-value{font-size:var(--fs-xs);color:var(--c-muted);overflow-wrap:anywhere}
.contact-form__channel-arrow{color:var(--c-subtle);transition:color .2s}
.contact-form__channel:hover .contact-form__channel-arrow{color:var(--c-accent)}
.contact-form__address{display:flex;align-items:flex-start;gap:.6rem;margin:0;font-size:var(--fs-sm);line-height:1.55;color:var(--c-muted)}
.contact-form__address svg{flex-shrink:0;margin-top:.15rem;color:var(--c-amber)}
.contact-form__form{display:flex;flex-direction:column;gap:1.15rem;padding:2rem;border:1px solid var(--c-border);border-radius:calc(var(--t-radius)*1.2);background:var(--c-surface);box-shadow:0 30px 70px var(--c-overlay)}
.contact-form__field{display:flex;flex-direction:column;gap:.45rem}
.contact-form__label{font-size:var(--fs-sm);font-weight:600;color:var(--c-heading)}
.contact-form__optional{font-weight:400;color:var(--c-subtle)}
.contact-form__input{width:100%;box-sizing:border-box;padding:.8rem 1rem;border:1px solid var(--c-border-strong);border-radius:var(--t-radius-sm);background:var(--c-bg);color:var(--c-heading);font-family:var(--t-font-body);font-size:var(--t-fs-base);transition:border-color .2s,box-shadow .2s}
.contact-form__input::placeholder{color:var(--c-subtle)}
.contact-form__input:focus{outline:none;border-color:var(--c-accent);box-shadow:0 0 0 3px var(--c-accent-soft)}
.contact-form__textarea{resize:vertical;min-height:130px}
.contact-form__field.is-invalid .contact-form__input{border-color:var(--c-danger)}
.contact-form__error{min-height:0;font-size:var(--fs-xs);color:var(--c-danger)}
.contact-form__error:empty{display:none}
.contact-form__submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;width:100%;box-sizing:border-box;margin-top:.35rem;padding:.95rem 1.25rem;border:0;border-radius:var(--t-radius-sm);background:var(--c-accent);color:var(--c-on-accent);font-family:var(--t-font-body);font-weight:700;font-size:var(--t-fs-base);cursor:pointer;box-shadow:0 0 28px var(--c-accent-glow);transition:background-color .2s,transform .2s}
.contact-form__submit:hover,.contact-form__submit:focus-visible{background:var(--c-accent-hover);transform:translateY(-1px)}
.contact-form__consent{margin:0;font-size:var(--fs-xs);line-height:1.55;text-align:center;color:var(--c-subtle)}
.contact-form__toast{position:fixed;right:calc(20px + env(safe-area-inset-right));bottom:calc(20px + env(safe-area-inset-bottom));z-index:950;display:flex;align-items:center;gap:.75rem;max-width:min(380px,calc(100% - 40px));box-sizing:border-box;padding:.9rem 1rem;border:1px solid var(--c-accent-line);border-radius:var(--t-radius);background:var(--c-surface-alt);color:var(--c-heading);font-size:var(--fs-sm);line-height:1.5;box-shadow:0 20px 50px var(--c-overlay);opacity:0;visibility:hidden;transform:translateY(16px);transition:opacity .3s,transform .3s,visibility .3s}
.contact-form__toast.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.contact-form__toast-icon{display:inline-grid;place-items:center;flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--c-accent);color:var(--c-on-accent)}
.contact-form__toast-text{flex:1}
.contact-form__toast-close{flex-shrink:0;width:28px;height:28px;border:0;border-radius:var(--t-radius-sm);background:transparent;color:var(--c-muted);font-size:calc(var(--t-fs-base)*1.25);line-height:1;cursor:pointer}
.contact-form__toast-close:hover{color:var(--c-heading);background:var(--c-border)}
@media (max-width:900px){.contact-form__grid{grid-template-columns:1fr;gap:2.5rem}}
@media (max-width:768px){.contact-form{padding:calc(var(--t-section-py)*0.65) 0}.contact-form__title{font-size:calc(var(--t-fs-h2)*0.8)}}
@media (max-width:480px){.contact-form__grid{padding:0 1rem}.contact-form__form{padding:1.35rem}.contact-form__toast{left:calc(12px + env(safe-area-inset-left));right:calc(12px + env(safe-area-inset-right));bottom:calc(12px + env(safe-area-inset-bottom));max-width:none}}

.site-header{position:sticky;top:0;z-index:100;width:100%;background:var(--c-header-bg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--c-border);font-family:var(--t-font-body);--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.625)}
.site-header__bar{position:relative;max-width:var(--t-container-max);margin:0 auto;padding:0 1.25rem;height:68px;display:flex;align-items:center;gap:1.5rem}
.site-header__brand{display:inline-flex;align-items:center;gap:.625rem;text-decoration:none;color:var(--c-heading);flex-shrink:0}
.site-header__logo{display:block;height:36px;width:auto;max-width:180px}
.site-header__mark{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:var(--t-radius-sm);border:1px solid var(--c-accent-line);background:var(--c-accent-soft);color:var(--c-accent);font-family:var(--t-font-heading);font-weight:800;font-size:var(--fs-sm)}
.site-header__word{display:flex;flex-direction:column;line-height:1.15}
.site-header__name{font-family:var(--t-font-heading);font-weight:700;font-size:var(--fs-sm);letter-spacing:.04em}
.site-header__tag{font-size:var(--fs-xs);letter-spacing:.3em;color:var(--c-accent)}
.site-header__nav{margin-left:auto;display:flex;align-items:center}
.site-header__list{list-style:none;margin:0;padding:0;display:flex;gap:.25rem}
.site-header__link{display:block;padding:.5rem .75rem;border-radius:var(--t-radius-sm);color:var(--c-muted);text-decoration:none;font-size:var(--fs-sm);transition:color .2s,background-color .2s}
.site-header__link:hover,.site-header__link:focus-visible{color:var(--c-heading);background:var(--c-surface-alt)}
.site-header__cta{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;padding:.6rem 1.1rem;border-radius:var(--t-radius-sm);background:var(--c-accent);color:var(--c-on-accent);font-weight:600;font-size:var(--fs-sm);text-decoration:none;white-space:nowrap;box-shadow:0 0 24px var(--c-accent-glow);transition:background-color .2s,transform .2s;box-sizing:border-box}
.site-header__cta:hover,.site-header__cta:focus-visible{background:var(--c-accent-hover);transform:translateY(-1px)}
.site-header__cta--menu{display:none}
.site-header__burger{display:none}
@media (max-width:900px){.site-header__burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;padding:0 10px;border:1px solid var(--c-border-strong);border-radius:var(--t-radius-sm);background:var(--c-surface);cursor:pointer;box-sizing:border-box}
.site-header__burger span{display:block;width:100%;height:2px;border-radius:2px;background:var(--c-heading);transition:transform .25s,opacity .25s}
.site-header.is-open .site-header__burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.site-header.is-open .site-header__burger span:nth-child(2){opacity:0}
.site-header.is-open .site-header__burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.site-header__cta--bar{margin-left:auto}
.site-header__nav{position:absolute;top:100%;left:0;right:0;margin:0;flex-direction:column;align-items:stretch;gap:1rem;padding:.75rem 1.25rem 1.5rem;background:var(--c-surface);border-bottom:1px solid var(--c-border);box-shadow:0 24px 48px var(--c-overlay);opacity:0;visibility:hidden;transform:translateY(-12px);transition:opacity .25s ease,transform .25s ease,visibility .25s}
.site-header.is-open .site-header__nav{opacity:1;visibility:visible;transform:translateY(0)}
.site-header__list{flex-direction:column;gap:0}
.site-header__link{padding:.9rem .5rem;font-size:var(--t-fs-base);border-radius:0;border-bottom:1px solid var(--c-border)}}
@media (max-width:560px){.site-header__bar{height:60px}.site-header__cta--bar{display:none}.site-header__burger{margin-left:auto}.site-header__cta--menu{display:flex;width:100%}}

.site-footer{width:100%;background:var(--c-surface);border-top:1px solid var(--c-border);color:var(--c-muted);font-family:var(--t-font-body);--fs-sm:calc(var(--t-fs-base)*0.875);--fs-xs:calc(var(--t-fs-base)*0.72)}
.site-footer__top{max-width:var(--t-container-max);margin:0 auto;padding:calc(var(--t-section-py)*0.7) 1.25rem 2.5rem;display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,1fr));gap:2.5rem}
.site-footer__brand{display:inline-flex;align-items:center;gap:.625rem;text-decoration:none;color:var(--c-heading)}
.site-footer__logo{display:block;height:36px;width:auto;max-width:180px}
.site-footer__mark{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:var(--t-radius-sm);border:1px solid var(--c-accent-line);background:var(--c-accent-soft);color:var(--c-accent);font-family:var(--t-font-heading);font-weight:800;font-size:var(--fs-sm)}
.site-footer__word{display:flex;flex-direction:column;line-height:1.15}
.site-footer__name{font-family:var(--t-font-heading);font-weight:700;font-size:var(--fs-sm);letter-spacing:.04em}
.site-footer__tag{font-size:calc(var(--t-fs-base)*0.625);letter-spacing:.3em;color:var(--c-accent)}
.site-footer__blurb{margin:1rem 0 0;max-width:22rem;font-size:var(--fs-sm);line-height:1.7}
.site-footer__col-title{margin:0 0 1rem;font-size:var(--fs-xs);font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--c-subtle)}
.site-footer__links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}
.site-footer__links a{color:var(--c-text);text-decoration:none;font-size:var(--fs-sm);overflow-wrap:anywhere;transition:color .2s}
.site-footer__links a:hover,.site-footer__links a:focus-visible{color:var(--c-accent)}
.site-footer__details{margin:0;display:flex;flex-direction:column;gap:.55rem;font-size:var(--fs-xs);line-height:1.55}
.site-footer__details dt{display:inline;color:var(--c-subtle)}
.site-footer__details dd{display:inline;margin:0;color:var(--c-text)}
.site-footer__bottom{max-width:var(--t-container-max);margin:0 auto;padding:1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom));border-top:1px solid var(--c-border);display:flex;flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.5rem;font-size:var(--fs-xs);color:var(--c-subtle)}
.site-footer__copy,.site-footer__location{margin:0}
@media (max-width:900px){.site-footer__top{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.site-footer__top{grid-template-columns:1fr;gap:2rem;padding:calc(var(--t-section-py)*0.5) 1rem 2rem}.site-footer__bottom{padding-left:1rem;padding-right:1rem;flex-direction:column}}