.hostinger-reach-block-connect{display:flex;flex-direction:column;align-content:flex-start;background:#fff6e9;padding:14px;font-size:14px;margin:28px 0 14px}.hostinger-reach-block-connect__title{color:#1d1e20;font-weight:700;margin-bottom:4px}.hostinger-reach-block-connect__subtitle{color:#727586;margin-bottom:4px}.hostinger-reach-block-connect a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}.hostinger-reach-block-dialog{display:block;flex-direction:column;align-content:flex-start;background:#fff;color:#1d1e20;padding:20px;gap:14px;font-size:14px;line-height:20px;bottom:80px;left:20px;position:fixed;z-index:100001;max-width:400px;border-radius:16px;box-shadow:0 0 10px rgb(0 0 0 / .05)}.hostinger-reach-block-dialog__actions{display:flex;justify-content:flex-start;gap:10px}.hostinger-reach-block-dialog__button_indicator{height:16px;width:16px}.hostinger-reach-block-dialog__button{cursor:pointer;text-align:center;background:#673de6;color:#fff;font-weight:700;font-size:12px;padding:6px 16px;display:flex;flex-direction:row;align-items:center;gap:10px;border-radius:8px}.hostinger-reach-block-dialog__button:hover{background:#5029c2}.hostinger-reach-block-dialog__button a{color:#fff;text-decoration:none}.hostinger-reach-block-dialog__button a:hover,.hostinger-reach-block-dialog__button a:focus,.hostinger-reach-block-dialog__button a:active{color:#fff;box-shadow:none;outline:none}.hostinger-reach-block-dialog__button svg{height:16px;width:16px}.hostinger-reach-block-dialog__button svg path{fill:#fff}.hostinger-reach-block-dialog__close{cursor:pointer}.hostinger-reach-block-dialog__close:before,.hostinger-reach-block-dialog__close:after{content:"";position:absolute;width:16px;height:2px;background-color:#1d1e20;top:26px;right:16px}.hostinger-reach-block-dialog__close:before{transform:rotate(45deg)}.hostinger-reach-block-dialog__close:after{transform:rotate(-45deg)}.hostinger-reach-block-dialog__close:hover:before,.hostinger-reach-block-dialog__close:hover:after{background-color:#727272}.hostinger-reach-block-subscription-form .hostinger-reach-block-form-fields{display:flex;flex-direction:column;width:100%}.hostinger-reach-block-subscription-form .hostinger-reach-block-form-fields--inline{flex-direction:row;justify-content:flex-start;align-items:end;width:100%;gap:.5rem}.hostinger-reach-block-subscription-form .hostinger-reach-block-form-fields--inline .hostinger-reach-block-form-field{min-width:70%}.hostinger-reach-block-subscription-form .hostinger-reach-block-form-fields--inline .hostinger-reach-block-submit{min-width:30%}.hostinger-reach-block-subscription-form .hostinger-reach-block-submit{border-width:0;margin-top:var(--wp--preset--spacing--20);align-content:center;box-sizing:border-box;cursor:pointer;display:inline-block;height:100%;text-align:center;width:100%;word-break:break-word;font-weight:500;min-height:40px;border-radius:50px}.hostinger-reach-block-subscription-form .hostinger-reach-block-form-field{margin-top:8px}.hostinger-reach-block-subscription-form label{display:block;font-size:11px;font-weight:500;line-height:1.4;text-transform:uppercase;margin-bottom:8px;padding:0}.hostinger-reach-block-subscription-form input{display:block;width:100%;padding:3px 10px;min-height:40px;box-shadow:0 0 0 #fff0;border-radius:4px;border:1px solid #8c8f94;background-color:#fff;color:#2c3338;box-sizing:border-box}.hostinger-reach-block-tags{margin-left:-6px;margin-top:10px;max-height:14em;overflow:auto;padding-left:6px;padding-top:6px;margin-bottom:20px}.components-button.is-link.hostinger-reach-block-toggler{margin-bottom:20px}.hostinger-reach-block-newtag{margin-bottom:20px}.reach-subscription-message{font-weight:700;padding:1em;gap:10px;margin-top:10px}.reach-subscription-message.is-success{background:rgb(0 158 91 / .1019607843)}.reach-subscription-message.is-error{background:rgb(234 71 104 / .1019607843)}:root{--ink-900:#0A0A0B;--ink-800:#1A1B1E;--ink-700:#2A2C30;--steel-700:#3F4247;--steel-600:#54585F;--steel-500:#74787F;--steel-400:#9CA0A6;--steel-300:#C5C7CB;--steel-200:#DEE0E3;--steel-100:#ECEEF0;--steel-50:#F4F5F6;--paper:#FAFAF8;--paper-warm:#F5F2EC;--paper-alt:#F1F1ED;--white:#FFFFFF;--signal-600:#B83E0E;--signal-500:#D9491A;--signal-400:#E86A3D;--signal-100:#FAE6DC;--blueprint-700:#0F2A47;--blueprint-500:#1E4E7C;--blueprint-100:#DCE5EF;--ok:#1F7A4D;--warn:#B57814;--error:#B82828;--bg:var(--paper);--bg-alt:var(--paper-alt);--bg-inverse:var(--ink-900);--surface:var(--white);--fg:var(--ink-900);--fg-muted:var(--steel-600);--fg-subtle:var(--steel-500);--fg-inverse:var(--paper);--border:var(--steel-200);--border-strong:var(--ink-900);--accent:var(--signal-500);--accent-fg:var(--white);--accent-hover:var(--signal-600);--link:var(--ink-900);--link-hover:var(--signal-500);--font-display:'Montserrat', 'Helvetica Neue', Arial, sans-serif;--font-body:'IBM Plex Sans', 'Helvetica Neue', Arial, sans-serif;--font-mono:'IBM Plex Mono', ui-monospace, 'SF Mono', Menlo, monospace;--w-regular:400;--w-medium:500;--w-semi:600;--w-bold:700;--w-black:900;--fs-12:0.75rem;--fs-13:0.8125rem;--fs-14:0.875rem;--fs-15:0.9375rem;--fs-16:1rem;--fs-18:1.125rem;--fs-20:1.25rem;--fs-24:1.5rem;--fs-32:2rem;--fs-40:2.5rem;--fs-56:3.5rem;--fs-72:4.5rem;--fs-96:6rem;--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;--radius-0:0px;--radius-1:2px;--radius-2:4px;--radius-pill:999px;--border-w:1px;--border-w-strong:2px;--shadow-0:none;--shadow-1:0 1px 0 rgba(10,10,11,0.04), 0 1px 2px rgba(10,10,11,0.06);--shadow-2:0 2px 4px rgba(10,10,11,0.06), 0 8px 24px rgba(10,10,11,0.08);--shadow-inset:inset 0 0 0 1px var(--steel-200);--ease-out:cubic-bezier(0.2, 0.6, 0.2, 1);--ease-in-out:cubic-bezier(0.4, 0, 0.2, 1);--dur-1:120ms;--dur-2:200ms;--dur-3:320ms}:where(body.mat-root){font-family:var(--font-body);font-size:var(--fs-16);line-height:1.55;color:var(--fg);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}:where(body.mat-root) .mat-t-display-xl,:where(body.mat-root) h1.display{font-family:var(--font-display);font-weight:var(--w-semi);font-size:clamp(2.75rem, 6vw, var(--fs-96));line-height:.95;letter-spacing:-.025em;color:var(--fg);text-transform:uppercase}:where(body.mat-root) .mat-t-display,:where(body.mat-root) h1{font-family:var(--font-display);font-weight:var(--w-semi);font-size:var(--fs-56);line-height:1;letter-spacing:-.02em;color:var(--fg)}:where(body.mat-root) .mat-t-h2,:where(body.mat-root) h2{font-family:var(--font-display);font-weight:var(--w-semi);font-size:var(--fs-32);line-height:1.1;letter-spacing:-.015em;color:var(--fg)}:where(body.mat-root) .mat-t-h3,:where(body.mat-root) h3{font-family:var(--font-display);font-weight:var(--w-semi);font-size:var(--fs-24);line-height:1.2;letter-spacing:-.01em;color:var(--fg)}:where(body.mat-root) .mat-t-h4,:where(body.mat-root) h4{font-family:var(--font-body);font-weight:var(--w-semi);font-size:var(--fs-18);line-height:1.3;color:var(--fg)}:where(body.mat-root) .mat-t-body,:where(body.mat-root) p{font-family:var(--font-body);font-weight:var(--w-regular);font-size:var(--fs-16);line-height:1.55;color:var(--fg)}:where(body.mat-root) .t-body-sm,:where(body.mat-root) .mat-t-body-sm,:where(body.mat-root) small{font-family:var(--font-body);font-size:var(--fs-14);line-height:1.5;color:var(--fg-muted)}:where(body.mat-root) .mat-t-eyebrow{font-family:var(--font-body);font-weight:var(--w-semi);font-size:var(--fs-12);line-height:1.2;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-muted)}:where(body.mat-root) .mat-t-label{font-family:var(--font-mono);font-weight:var(--w-medium);font-size:var(--fs-12);letter-spacing:.04em;text-transform:uppercase;color:var(--fg-subtle)}:where(body.mat-root) .mat-t-mono,:where(body.mat-root) code,:where(body.mat-root) kbd,:where(body.mat-root) pre{font-family:var(--font-mono);font-size:var(--fs-14);color:var(--fg)}:where(body.mat-root) .mat-t-spec{font-family:var(--font-mono);font-weight:var(--w-medium);font-size:var(--fs-13);letter-spacing:.02em;color:var(--fg-muted)}:where(body.mat-root) a{color:var(--link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;transition:color var(--dur-1) var(--ease-out)}:where(body.mat-root) a:hover{color:var(--link-hover)}body.mat-root *{box-sizing:border-box}body.mat-root{margin:0;padding:0}body.mat-root{background:var(--paper);color:var(--ink-900);font-family:var(--font-body)}body.mat-root img{display:block;max-width:100%}body.mat-root button{font:inherit;cursor:pointer}.container{max-width:1280px;margin:0 auto;padding:0 16px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-body);font-weight:600;font-size:14px;line-height:1;padding:12px 18px;border-radius:2px;border:1px solid #fff0;cursor:pointer;text-decoration:none;transition:background 120ms var(--ease-out),color 120ms var(--ease-out),border-color 120ms var(--ease-out);white-space:nowrap}.btn-primary{background:var(--signal-500);color:#fff;border-color:var(--signal-500)}body.mat-root .btn-primary{font-size:19px;font-weight:700}.btn-primary:hover{background:var(--signal-600);border-color:var(--signal-600)}.btn-primary:active{background:var(--signal-600);transform:translateY(1px)}.btn-secondary{background:#fff;color:var(--ink-900);border-color:var(--steel-300)}.btn-secondary:hover{background:var(--steel-50);border-color:var(--ink-900)}.btn-ghost{background:#fff0;color:var(--ink-900)}.btn-ghost:hover{background:var(--steel-100)}.btn-inverse{background:#fff;color:var(--ink-900);border-color:#fff}.btn-inverse:hover{background:var(--steel-200);border-color:var(--steel-200)}.btn-inverse:active{background:var(--steel-300);border-color:var(--steel-300);transform:translateY(1px)}.btn-outline-inverse{background:#fff0;color:#fff;border-color:rgb(255 255 255 / .3)}.btn-outline-inverse:hover{border-color:#fff;background:rgb(255 255 255 / .12)}.btn-outline-inverse:active{background:rgb(255 255 255 / .2);border-color:#fff;transform:translateY(1px)}.btn-lg{font-size:15px;padding:14px 22px}.eyebrow{font-family:var(--font-mono);font-size:12px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-600)}.eyebrow-light{color:var(--steel-400)}.eyebrow-num::before{content:attr(data-num) ' / ';color:var(--steel-400);margin-right:2px}.section{padding:96px 0}.section-alt{background:var(--paper-alt)}.section-ink{background:var(--ink-900);color:var(--paper)}.section-head{border-top:1px solid var(--ink-900);padding-top:14px;display:grid;grid-template-columns:1.3fr 1fr;gap:48px;margin-bottom:56px;align-items:end}.section-ink .section-head{border-color:var(--paper)}.section-head h2{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem, 4.2vw, 3.25rem);line-height:1;letter-spacing:-.02em;margin:14px 0 0;color:var(--ink-900);text-wrap:balance}.section-ink .section-head h2{color:var(--paper)}.section-head .lede{font-family:var(--font-body);font-size:16px;line-height:1.55;color:var(--steel-600);margin:0;max-width:38ch}.section-ink .section-head .lede{color:var(--steel-300)}.pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:999px;border:1px solid var(--steel-300);background:#fff;color:var(--steel-600)}.pill .dot{width:6px;height:6px;border-radius:999px;background:var(--steel-400)}.card-bordered{background:#fff;border:1px solid var(--steel-200);padding:28px 28px 32px;transition:border-color 120ms var(--ease-out)}.card-bordered:hover{border-color:var(--ink-900)}a.muted{color:var(--steel-600);text-decoration:none}a.muted:hover{color:var(--ink-900)}.site-header{position:sticky;top:0;z-index:20;background:var(--paper);border-bottom:1px solid var(--steel-200)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;padding:18px 0}.brand{display:flex;align-items:center;gap:10px;color:var(--ink-900);text-decoration:none}.brand-lockup{height:30px;width:auto;display:block}.brand-inverse .brand-lockup{filter:invert(1)}.nav{display:flex;align-items:center;gap:28px}.nav a{font-family:var(--font-body);font-weight:500;font-size:16px;color:var(--ink-900);text-decoration:none;white-space:nowrap;transition:color 120ms var(--ease-out)}.nav a:hover{color:var(--signal-500)}.nav a.nav-current,.nav .current-menu-item>.wp-block-navigation-item__content{color:var(--ink-900);font-weight:600}.nav a.nav-current::after,.nav .current-menu-item>.wp-block-navigation-item__content::after{content:'';display:block;height:2px;background:var(--signal-500);margin-top:6px;margin-bottom:-8px}.lang-toggle{font-family:var(--font-mono);font-size:12px;color:var(--steel-600);letter-spacing:.04em;display:inline-flex;align-items:center;gap:4px}.lang-toggle button,.lang-toggle a,.lang-toggle .lang-current{background:none;border:none;font:inherit;color:inherit;text-decoration:none;padding:0;cursor:pointer}.lang-toggle button.active,.lang-toggle .lang-current{color:var(--ink-900);font-weight:500;cursor:default}@media (max-width:900px){.wp-block-navigation__responsive-container-open.wp-block-navigation__responsive-container-open{display:flex;align-items:center;background:none;border:none;padding:8px 4px;color:var(--ink-900)}.wp-block-navigation__responsive-container:not(.is-menu-open){display:none}}.wp-block-navigation__responsive-container.is-menu-open{position:fixed;inset:0;z-index:999;background:var(--paper);padding:88px 32px 40px;overflow-y:auto}.wp-block-navigation__responsive-container-close{position:fixed;top:20px;right:20px;z-index:1000;color:var(--ink-900)}body.admin-bar .wp-block-navigation__responsive-container-close{top:54px}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{flex-direction:column;align-items:flex-start;gap:0;width:100%}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{width:100%;border-bottom:1px solid var(--steel-200)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{display:block;padding:18px 4px;font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:-.01em;color:var(--ink-900)}.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover{color:var(--signal-500)}.hero{background:var(--ink-900);color:var(--paper);padding:112px 0 128px;position:relative;overflow:hidden}.hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(to right,rgb(255 255 255 / .04) 1px,transparent 1px),linear-gradient(to bottom,rgb(255 255 255 / .04) 1px,transparent 1px);background-size:80px 80px;pointer-events:none}.hero-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:end;position:relative;z-index:1}.hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(3rem, 7.2vw, 6rem);line-height:.94;letter-spacing:-.025em;margin:20px 0 0;text-wrap:balance;color:var(--paper)}.hero-meta{display:flex;flex-direction:column;gap:24px}.hero-lede{font-family:var(--font-body);font-size:17px;line-height:1.5;color:var(--steel-300);margin:0;max-width:42ch}.hero-ctas{display:flex;gap:10px;flex-wrap:wrap}.hero-strip{margin-top:80px;border-top:1px solid #2A2C30;padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;font-family:var(--font-mono);font-size:12px;color:var(--steel-400);letter-spacing:.04em;text-transform:uppercase;position:relative;z-index:1}.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.capability{display:flex;flex-direction:column;gap:14px}.capability-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-500)}.capability h3{font-family:var(--font-display);font-weight:600;font-size:22px;line-height:1.15;letter-spacing:-.01em;margin:0;color:var(--ink-900)}.capability p{font-family:var(--font-body);font-size:14px;line-height:1.55;color:var(--steel-600);margin:0;flex:1}.capability-specs{font-family:var(--font-mono);font-size:12px;color:var(--steel-500);letter-spacing:.02em;border-top:1px solid var(--steel-200);padding-top:12px;display:flex;flex-direction:column;gap:4px}.industries{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.industry{background:#fff;border:1px solid var(--steel-200);padding:32px 28px;display:flex;flex-direction:column;gap:16px;transition:border-color 120ms var(--ease-out)}.industry:hover{border-color:var(--ink-900)}.industry-icon{width:28px;height:28px;color:var(--ink-900);stroke-width:1.5}.industry h4{font-family:var(--font-display);font-weight:600;font-size:20px;line-height:1.2;margin:0;color:var(--ink-900)}.industry p{font-family:var(--font-body);font-size:14px;line-height:1.55;color:var(--steel-600);margin:0}.industry-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.tag{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--steel-500);border:1px solid var(--steel-200);padding:3px 8px}.process{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.process-steps{display:flex;flex-direction:column;gap:0}.process-step{display:grid;grid-template-columns:64px 1fr;gap:24px;padding:20px 0;border-bottom:1px solid var(--steel-200)}.process-step:last-child{border-bottom:none}.process-step .num{font-family:var(--font-mono);font-size:14px;color:var(--steel-500);letter-spacing:.02em}.process-step h4{font-family:var(--font-display);font-weight:600;font-size:18px;margin:0 0 6px;color:var(--ink-900)}.process-step p{font-family:var(--font-body);font-size:14px;line-height:1.55;color:var(--steel-600);margin:0}.spec-table{width:100%;border-collapse:collapse}.spec-table th,.spec-table td{text-align:left;padding:12px 0;font-family:var(--font-body);font-size:14px}.spec-table th{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--steel-600);font-weight:500;border-bottom:1px solid var(--ink-900)}.spec-table td{border-bottom:1px solid var(--steel-200);color:var(--ink-900)}.spec-table td.value,.spec-table td.tol{font-family:var(--font-mono)}.spec-table td.tol{text-align:right;color:var(--steel-600)}.spec-table tr:last-child td{border-bottom:none}.certs{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--steel-200);border-bottom:1px solid var(--steel-200)}.cert{padding:28px 24px;border-right:1px solid var(--steel-200);display:flex;flex-direction:column;gap:8px}.cert:last-child{border-right:none}.cert .code{font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--ink-900);letter-spacing:.02em}.cert .desc{font-family:var(--font-body);font-size:13px;color:var(--steel-600);line-height:1.5}.quote-band{background:var(--ink-900);color:var(--paper);padding:96px 0}.quote-band .inner{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:end}.quote-band h2{font-family:var(--font-display);font-weight:600;font-size:clamp(2.25rem, 5vw, 3.5rem);line-height:.98;letter-spacing:-.025em;margin:12px 0 0;text-wrap:balance;color:var(--paper)}.quote-band p{font-family:var(--font-body);font-size:16px;line-height:1.55;color:var(--steel-300);margin:0 0 20px;max-width:38ch}.site-footer{background:var(--ink-900);color:var(--paper);padding:64px 0 24px;border-top:1px solid #2A2C30}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px}.footer-col h3{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-400);font-weight:500;margin:0 0 14px}.footer-col a,.footer-col span{display:block;font-family:var(--font-body);font-size:14px;color:var(--steel-200);text-decoration:none;padding:4px 0}.footer-col.mono a,.footer-col.mono span{font-family:var(--font-mono);font-size:13px}.footer-col a:hover{color:#fff}.footer-brand-line{font-family:var(--font-body);font-size:14px;line-height:1.55;color:var(--steel-400);max-width:28ch;margin:16px 0 0}.footer-bottom{border-top:1px solid #2A2C30;padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;font-family:var(--font-mono);font-size:11px;color:var(--steel-400);letter-spacing:.04em}.modal-scrim{position:fixed;inset:0;background:rgb(10 10 11 / .55);display:flex;align-items:center;justify-content:center;z-index:50;animation:scrim-in 200ms var(--ease-out)}@keyframes scrim-in{from{opacity:0}to{opacity:1}}.modal{background:var(--paper);width:min(560px, calc(100vw - 32px));max-height:calc(100vh - 32px);overflow:auto;border:1px solid var(--steel-200);box-shadow:0 2px 4px rgb(10 10 11 / .06),0 8px 24px rgb(10 10 11 / .12);animation:modal-in 320ms var(--ease-out)}@keyframes modal-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.modal-head{padding:20px 24px;border-bottom:1px solid var(--steel-200);display:flex;justify-content:space-between;align-items:center}.modal-head .eyebrow{color:var(--steel-500)}.modal-head h3{font-family:var(--font-display);font-weight:600;font-size:22px;margin:4px 0 0;color:var(--ink-900)}.modal-close{background:none;border:none;color:var(--steel-500);font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;padding:6px 8px;cursor:pointer}.modal-close:hover{color:var(--ink-900)}.modal-body{padding:24px;display:flex;flex-direction:column;gap:16px}.modal-foot{padding:16px 24px;border-top:1px solid var(--steel-200);display:flex;justify-content:space-between;align-items:center;gap:12px}.modal-progress{font-family:var(--font-mono);font-size:12px;color:var(--steel-500);letter-spacing:.04em}.field-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--steel-600);display:block;margin-bottom:6px}.field-input,.field-textarea,.field-select{width:100%;font-family:var(--font-body);font-size:15px;padding:10px 12px;background:#fff;border:1px solid var(--steel-300);border-radius:2px;color:var(--ink-900);outline:none;transition:border-color 120ms var(--ease-out)}.field-input:focus,.field-textarea:focus,.field-select:focus{border:2px solid var(--ink-900);padding:9px 11px}.field-textarea{min-height:96px;resize:vertical;font-family:var(--font-body)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.confirm{text-align:center;padding:40px 24px}.confirm-check{width:56px;height:56px;border:2px solid var(--ink-900);display:inline-flex;align-items:center;justify-content:center;margin-bottom:20px}.confirm h3{font-family:var(--font-display);font-weight:600;font-size:26px;margin:0 0 8px;color:var(--ink-900)}.confirm p{font-family:var(--font-body);font-size:15px;line-height:1.55;color:var(--steel-600);margin:0 0 6px}.confirm .ref{font-family:var(--font-mono);font-size:13px;color:var(--ink-900);margin-top:12px;letter-spacing:.02em}@media (max-width:900px){.hero-inner,.section-head,.quote-band .inner,.process{grid-template-columns:1fr;gap:32px}.capability-grid{grid-template-columns:1fr 1fr}.industries{grid-template-columns:1fr}.certs{grid-template-columns:1fr 1fr}.cert{border-right:1px solid var(--steel-200);border-bottom:1px solid var(--steel-200)}.footer-grid,.footer-grid.footer-grid-5{grid-template-columns:1fr 1fr;gap:32px;margin-bottom:32px}}@media (max-width:560px){.container{padding:0 20px}.site-header-inner{padding:14px 0}.brand-lockup{height:26px}.certs,.footer-grid,.footer-grid.footer-grid-5{grid-template-columns:1fr}.footer-grid,.footer-grid.footer-grid-5{gap:22px;margin-bottom:22px}.site-footer{padding:40px 0 20px}.footer-bottom{padding-top:14px}.footer-col h5{margin-bottom:10px}.cert:last-child{border-bottom:none}.quote-band{padding:64px 0}.section{padding:64px 0}}.cap-row{scroll-margin-top:100px}.alignfull{max-width:none;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}.trust-cell.trust-cell,.value-cell.value-cell,.pf-grid.pf-grid>*,.entry-content.entry-content>*,.site-header-inner.site-header-inner>*,.nav.nav>*,.footer-bottom.footer-bottom>*,.footer-col.footer-col>*,.footer-grid.footer-grid>*,.wp-site-blocks.wp-site-blocks>*,.hero-v.hero-v>*,.work-grid.work-grid>*{margin-block-start:0}.section-alt,.section-ink,.page-hero,.values-strip,.cap-row,.story,.contact-block,.quote-band{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);max-width:100vw}.btn-primary:hover{color:#fff!important}.btn-secondary:hover{color:var(--ink-900)!important}.btn-ghost:hover{color:var(--ink-900)!important}.btn-inverse:hover{color:var(--ink-900)!important}.btn-outline-inverse:hover{color:#fff!important}.legal-doc{max-width:720px}.legal-doc h2{font-family:var(--font-display);font-weight:600;font-size:var(--fs-22);letter-spacing:-.01em;color:var(--ink-900);margin:40px 0 12px}.legal-doc h2:first-of-type{margin-top:0}.legal-doc p{font-family:var(--font-body);font-size:15px;line-height:1.7;color:var(--steel-600);margin:0 0 16px}.legal-doc a{color:var(--ink-900);text-decoration:underline;text-underline-offset:2px}.legal-doc a:hover{color:var(--signal-500)}.legal-doc ul.mat-legal-list{margin:0 0 16px;padding-left:20px;font-family:var(--font-body);font-size:15px;line-height:1.7;color:var(--steel-600)}.legal-doc ul.mat-legal-list li{margin-bottom:6px}.legal-doc .mat-legal-meta{font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--steel-400);border-bottom:1px solid var(--steel-200);padding-bottom:20px;margin-bottom:32px;display:block}.hero-v{position:relative;background:var(--ink-900);color:var(--paper);overflow:hidden;isolation:isolate}.hero-v::before{content:'';position:absolute;inset:0;background-image:linear-gradient(to right,rgb(255 255 255 / .04) 1px,transparent 1px),linear-gradient(to bottom,rgb(255 255 255 / .04) 1px,transparent 1px);background-size:80px 80px;pointer-events:none;z-index:1}.video-plate{position:relative;background:#131418;overflow:hidden;isolation:isolate}.video-plate .vp-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;filter:brightness(.78) contrast(1.05) saturate(.85)}.video-plate::before{content:'';position:absolute;inset:0;background:radial-gradient(120% 80% at 20% 30%,rgb(216 73 26 / .1),transparent 60%),radial-gradient(80% 60% at 80% 90%,rgb(30 78 124 / .15),transparent 60%),linear-gradient(135deg,#1a1c20 0%,#0d0e10 60%,#1a1c20 100%)}.video-plate::after{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgb(255 255 255 / .018) 0 1px,transparent 1px 4px),repeating-linear-gradient(90deg,rgb(255 255 255 / .012) 0 1px,transparent 1px 96px);mix-blend-mode:screen;animation:drift 22s linear infinite}@keyframes drift{from{background-position:0 0,0 0}to{background-position:0 -96px,-96px 0}}.video-plate .vp-marks{position:absolute;inset:16px;pointer-events:none}.video-plate .vp-marks span{position:absolute;width:14px;height:14px;border:1px solid rgb(255 255 255 / .25)}.video-plate .vp-marks span:nth-child(1){top:0;left:0;border-right:none;border-bottom:none}.video-plate .vp-marks span:nth-child(2){top:0;right:0;border-left:none;border-bottom:none}.video-plate .vp-marks span:nth-child(3){bottom:0;left:0;border-right:none;border-top:none}.video-plate .vp-marks span:nth-child(4){bottom:0;right:0;border-left:none;border-top:none}.video-plate .vp-label{position:absolute;bottom:16px;right:16px;display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:rgb(255 255 255 / .55);padding:6px 10px;border:1px solid rgb(255 255 255 / .15);background:rgb(0 0 0 / .35)}@media (max-width:640px){.video-plate .vp-counter,.video-plate .vp-label{display:none}}.video-plate .vp-label .pulse{width:6px;height:6px;background:var(--signal-500);border-radius:999px;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}.video-plate .vp-counter{position:absolute;top:16px;left:16px;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:rgb(255 255 255 / .45)}.hv-panel{min-height:720px;padding:0}.hv-panel .video-plate{position:absolute;inset:0;z-index:0}.hv-panel .hv-overlay{position:absolute;inset:0;background:rgb(10 10 11 / .45);z-index:1}.hv-panel .container{position:relative;z-index:2;display:flex;align-items:flex-end;min-height:720px;padding-top:96px;padding-bottom:48px}.hv-panel .hv-card{background:var(--ink-900);border:1px solid #2A2C30;padding:40px 44px 36px;max-width:580px;position:relative}.hv-panel .hv-card::before{content:'';position:absolute;top:-1px;left:0;width:56px;height:2px;background:var(--signal-500)}.hv-panel .hv-card h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2.5rem, 5.4vw, 4.5rem);line-height:.95;letter-spacing:-.025em;margin:18px 0 18px;color:var(--paper);text-wrap:balance}.hv-panel .hv-card .hv-lede{font-family:var(--font-body);font-size:16px;line-height:1.55;color:var(--steel-300);margin:0 0 24px;max-width:48ch}.hv-panel .hv-strip{position:absolute;left:32px;right:32px;bottom:24px;z-index:3;display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;font-family:var(--font-mono);font-size:11px;color:rgb(255 255 255 / .55);letter-spacing:.06em;text-transform:uppercase;padding-top:14px;border-top:1px solid rgb(255 255 255 / .15);pointer-events:none}.hv-split{padding:0}.hv-split .hv-grid{display:grid;grid-template-columns:1fr 1fr;min-height:680px}.hv-split .hv-text{padding:112px 56px 80px;display:flex;flex-direction:column;justify-content:center;position:relative;z-index:2}.hv-split .hv-text .accent{width:64px;height:2px;background:var(--signal-500);margin-bottom:28px}.hv-split .hv-text h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2.5rem, 5vw, 4.25rem);line-height:.95;letter-spacing:-.025em;margin:18px 0 24px;color:var(--paper);text-wrap:balance}.hv-split .hv-text .hv-lede{font-size:17px;line-height:1.55;color:var(--steel-300);margin:0 0 32px;max-width:42ch}.hv-split .video-plate{position:relative;border-left:1px solid #2A2C30}.hv-split .hv-meta{margin-top:32px;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;border-top:1px solid #2A2C30;padding-top:20px;max-width:480px}.hv-split .hv-meta dt{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-500);margin:0 0 4px}.hv-split .hv-meta dd{font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:-.01em;margin:0;color:var(--paper)}.hv-stack{padding:80px 0 64px}.hv-stack .video-wrap{position:relative;aspect-ratio:21 / 9;margin-bottom:56px;border:1px solid #2A2C30}.hv-stack .video-wrap .video-plate{position:absolute;inset:0}.hv-stack .hv-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:end}.hv-stack h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2.75rem, 6vw, 5rem);line-height:.94;letter-spacing:-.025em;margin:18px 0 0;color:var(--paper);text-wrap:balance}.hv-stack .hv-lede{font-size:17px;line-height:1.55;color:var(--steel-300);margin:0 0 24px;max-width:42ch}.hv-drawer{padding:0;min-height:760px;display:flex;flex-direction:column}.hv-drawer .video-wrap{position:relative;flex:1 1 auto;min-height:360px}.hv-drawer .video-wrap .video-plate{position:absolute;inset:0}.hv-drawer .hv-drawer-band{background:var(--ink-900);border-top:1px solid #2A2C30;padding:48px 0 40px;position:relative;z-index:2}.hv-drawer .hv-drawer-band::before{content:'';position:absolute;top:-1px;left:0;width:96px;height:2px;background:var(--signal-500)}.hv-drawer .hv-drawer-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:end}.hv-drawer h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2.5rem, 5.2vw, 4.5rem);line-height:.94;letter-spacing:-.025em;margin:14px 0 0;color:var(--paper);text-wrap:balance}.hv-drawer .hv-lede{font-size:16px;line-height:1.55;color:var(--steel-300);margin:0 0 20px;max-width:38ch}.hv-drawer .hv-strip{margin-top:32px;border-top:1px solid #2A2C30;padding-top:16px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;font-family:var(--font-mono);font-size:11px;color:var(--steel-400);letter-spacing:.06em;text-transform:uppercase}.hv-type{padding:144px 0 128px}.hv-type .hv-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;align-items:end;position:relative;z-index:2}.hv-type h1{font-family:var(--font-display);font-weight:600;font-size:clamp(3rem, 7.5vw, 6.5rem);line-height:.92;letter-spacing:-.03em;margin:20px 0 0;color:var(--paper);text-wrap:balance}.hv-type .hv-lede{font-size:17px;line-height:1.55;color:var(--steel-300);margin:0 0 24px;max-width:42ch}.hv-type .hv-strip{position:relative;z-index:2;margin-top:96px;border-top:1px solid #2A2C30;padding-top:18px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;font-family:var(--font-mono);font-size:12px;color:var(--steel-400);letter-spacing:.06em;text-transform:uppercase}.hv-ctas{display:flex;gap:10px;flex-wrap:wrap}.hero-marquee{background:var(--ink-900);color:var(--steel-400);border-top:1px solid #2A2C30;border-bottom:1px solid #2A2C30}.hero-marquee .container{display:flex;flex-wrap:wrap;align-items:stretch;padding-top:0;padding-bottom:0}.hero-marquee span,.hero-marquee a{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;padding:14px 24px;white-space:nowrap;border-right:1px solid #2A2C30;color:inherit;text-decoration:none;transition:color 120ms ease-out}.hero-marquee span:first-child,.hero-marquee a:first-child{padding-left:0}.hero-marquee span:last-child,.hero-marquee a:last-child{border-right:none}.hero-marquee span:first-child,.hero-marquee a:first-child{color:var(--signal-500);letter-spacing:.14em}.hero-marquee a:hover{color:var(--signal-500)}.trust-bar{background:var(--paper);border-bottom:1px solid var(--steel-200)}.trust-bar .container{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--steel-200)}.trust-cell{padding:28px 24px;border-right:1px solid var(--steel-200);display:flex;flex-direction:column;gap:6px}.trust-cell:last-child{border-right:none}.trust-cell .lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-600)}.trust-cell .val{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1.1;letter-spacing:-.01em;color:var(--ink-900)}.trust-cell .sub{font-family:var(--font-body);font-size:13px;color:var(--steel-600);line-height:1.45}.clients-strip{background:var(--paper);padding:56px 0 64px;border-bottom:1px solid var(--steel-200)}.clients-strip .lbl-line{display:flex;align-items:center;gap:18px;margin-bottom:28px}.clients-strip .lbl-line .rule{flex:1;height:1px;background:var(--steel-200)}.clients-strip .lbl-line .lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-600)}.client-logos{display:grid;grid-template-columns:repeat(6,1fr);gap:0;align-items:center}.client-logos .logo-slot{text-align:center;padding:12px 16px;border-right:1px dashed var(--steel-200);font-family:var(--font-display);font-weight:600;font-size:18px;letter-spacing:-.01em;color:var(--steel-500);height:56px;display:flex;align-items:center;justify-content:center}.client-logos .logo-slot:last-child{border-right:none}.client-logos .logo-slot .tag{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;color:var(--steel-400);text-transform:uppercase;display:block;margin-top:2px}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--ink-900);border-left:1px solid var(--steel-200)}.service-card{background:var(--paper);border-right:1px solid var(--steel-200);border-bottom:1px solid var(--steel-200);padding:32px 28px 28px;display:flex;flex-direction:column;gap:14px;position:relative;transition:background var(--dur-2) var(--ease-out)}.service-card:hover{background:#fff}.service-card .s-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--steel-600)}.service-card h3{font-family:var(--font-display);font-weight:600;font-size:22px;line-height:1.15;letter-spacing:-.01em;margin:4px 0 0;color:var(--ink-900)}.service-card p{font-family:var(--font-body);font-size:14px;line-height:1.55;color:var(--steel-600);margin:0}.service-card .s-specs{margin-top:auto;padding-top:14px;border-top:1px solid var(--steel-200);display:flex;flex-direction:column;gap:4px;font-family:var(--font-mono);font-size:12px;color:var(--steel-600)}.service-card .s-link{margin-top:8px;font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-900);text-decoration:none;display:inline-flex;align-items:center;gap:6px}.service-card .s-link:hover{color:var(--signal-500)}.service-card .s-link::after{content:'→';transition:transform var(--dur-1) var(--ease-out)}.service-card:hover .s-link::after{transform:translateX(3px)}.service-card .s-link::before{content:"";position:absolute;inset:0}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--ink-900)}.work-tile{border-right:1px solid var(--steel-200);background:var(--paper);padding:28px;display:flex;flex-direction:column;gap:24px;position:relative;transition:background var(--dur-2) var(--ease-out)}.work-tile:last-child{border-right:none}.work-tile:hover{background:#fff}.work-image{position:relative;aspect-ratio:16 / 10;background:#131418;overflow:hidden;border:1px solid #2A2C30}.work-image::before{content:'';position:absolute;inset:0;background:radial-gradient(60% 60% at 30% 30%,rgb(216 73 26 / .1),transparent 70%),linear-gradient(135deg,#1a1c20 0%,#0d0e10 70%)}.work-image::after{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgb(255 255 255 / .02) 0 1px,transparent 1px 32px),repeating-linear-gradient(90deg,rgb(255 255 255 / .02) 0 1px,transparent 1px 32px)}.work-image .ph-label{position:absolute;bottom:12px;left:12px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgb(255 255 255 / .5);padding:4px 8px;border:1px solid rgb(255 255 255 / .15);background:rgb(0 0 0 / .35)}.work-image .ph-marks{position:absolute;inset:12px;pointer-events:none}.work-image .ph-marks span{position:absolute;width:10px;height:10px;border:1px solid rgb(255 255 255 / .2)}.work-image .ph-marks span:nth-child(1){top:0;left:0;border-right:none;border-bottom:none}.work-image .ph-marks span:nth-child(2){top:0;right:0;border-left:none;border-bottom:none}.work-image .ph-marks span:nth-child(3){bottom:0;left:0;border-right:none;border-top:none}.work-image .ph-marks span:nth-child(4){bottom:0;right:0;border-left:none;border-top:none}.work-meta{display:flex;flex-direction:column;gap:14px}.work-meta .w-eyebrow{display:flex;align-items:center;gap:12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-600)}.work-meta .w-eyebrow .sep{width:18px;height:1px;background:var(--steel-300)}.work-meta h3{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1.1;letter-spacing:-.015em;margin:0;color:var(--ink-900);text-wrap:balance}.work-meta p{font-family:var(--font-body);font-size:15px;line-height:1.55;color:var(--steel-600);margin:0}.work-specs{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--steel-200);padding-top:14px}.work-specs .s{display:flex;flex-direction:column;gap:2px;border-right:1px solid var(--steel-200);padding-right:12px}.work-specs .s:last-child{border-right:none}.work-specs .s .k{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-600)}.work-specs .s .v{font-family:var(--font-mono);font-size:13px;font-weight:500;color:var(--ink-900)}.work-tile .w-cta{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-900);text-decoration:none;display:inline-flex;align-items:center;gap:8px;align-self:flex-start}.work-tile .w-cta::after{content:'→'}.work-tile .w-cta:hover{color:var(--signal-500)}.process-row{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--ink-900);border-bottom:1px solid var(--steel-200)}.process-cell{padding:28px 24px 32px;border-right:1px solid var(--steel-200);display:flex;flex-direction:column;gap:12px;background:var(--paper)}.process-cell:last-child{border-right:none}.process-cell .n{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--steel-500)}.process-cell h4{font-family:var(--font-display);font-weight:600;font-size:22px;line-height:1.15;letter-spacing:-.01em;margin:0;color:var(--ink-900)}.process-cell p{font-family:var(--font-body);font-size:14px;line-height:1.5;color:var(--steel-600);margin:0}.process-cell .when{margin-top:auto;padding-top:12px;border-top:1px dashed var(--steel-200);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--steel-500)}.section-head.with-meta{grid-template-columns:1.3fr 1fr}.section-head .head-meta{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.section-head .head-meta a{font-family:var(--font-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-900);text-decoration:none;display:inline-flex;align-items:center;gap:8px}.section-head .head-meta a:hover{color:var(--signal-500)}.footer-col .legal-note{display:block;margin-top:14px;padding-top:12px;border-top:1px solid rgb(255 255 255 / .08);font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;line-height:1.5;color:var(--steel-500);text-transform:none}.site-header .brand-lockup{height:48px}.site-header-inner{padding-left:8px;padding-right:4px}.site-footer .brand-lockup{height:40px;margin-bottom:16px}@media (max-width:1100px){.services-grid{grid-template-columns:1fr 1fr}.trust-bar .container{grid-template-columns:repeat(3,1fr)}.trust-cell:nth-child(3){border-right:none}.trust-cell:nth-child(-n+3){border-bottom:1px solid var(--steel-200)}.client-logos{grid-template-columns:repeat(3,1fr)}.client-logos .logo-slot:nth-child(3n){border-right:none}.process-row{grid-template-columns:1fr 1fr}.process-cell:nth-child(2n){border-right:none}.process-cell:nth-child(-n+2){border-bottom:1px solid var(--steel-200)}.work-grid{grid-template-columns:1fr}.work-tile{border-right:none;border-bottom:1px solid var(--steel-200)}}@media (max-width:720px){.hv-panel{min-height:0}.hv-panel .container{min-height:560px;padding-top:64px;padding-bottom:40px}.hv-panel .hv-card{padding:28px 24px 24px;max-width:100%}.hv-panel .hv-strip{left:20px;right:20px;bottom:16px;font-size:10px;gap:10px}.hv-split .hv-grid{grid-template-columns:1fr}.hv-split .hv-text{padding:64px 20px 48px}.hv-split .video-plate{min-height:240px;border-left:none;border-top:1px solid #2A2C30}.hv-split .hv-meta{grid-template-columns:1fr 1fr;gap:16px}.hv-stack{padding:56px 0}.hv-stack .video-wrap{margin-bottom:32px}.hv-stack .hv-inner,.hv-drawer .hv-drawer-inner,.hv-type .hv-inner{grid-template-columns:1fr;gap:20px}.hv-type{padding:88px 0 72px}.hv-drawer{min-height:0}.hv-drawer .video-wrap{min-height:260px}.hv-drawer .hv-drawer-band{padding:32px 0 28px}.hv-drawer .hv-strip{font-size:10px;gap:12px}.services-grid{grid-template-columns:1fr}.service-card:last-child{border-bottom:none}.trust-bar .container{grid-template-columns:1fr 1fr}.trust-cell{padding:20px 16px}.trust-cell:nth-child(odd){border-right:1px solid var(--steel-200)}.trust-cell:nth-child(even){border-right:none}.trust-cell:not(:nth-last-child(-n+2)){border-bottom:1px solid var(--steel-200)}.trust-cell .val{font-size:22px}.client-logos{grid-template-columns:repeat(2,1fr)}.client-logos .logo-slot{font-size:15px;padding:10px 8px}.client-logos .logo-slot:nth-child(2n){border-right:none}.process-row{grid-template-columns:1fr}.process-cell{border-right:none;border-bottom:1px solid var(--steel-200)}.process-cell:last-child{border-bottom:none}}@media (max-width:560px){.hv-split .hv-meta{grid-template-columns:1fr}.hv-split .hv-meta dd{font-size:18px}.work-tile{padding:20px}.work-meta h3{font-size:22px}.work-specs{grid-template-columns:1fr}.work-specs .s{border-right:none;border-bottom:1px dashed var(--steel-200);padding:8px 0}.work-specs .s:last-child{border-bottom:none}}.page-hero{background:var(--ink-900);color:var(--paper);padding:96px 0 80px;position:relative;overflow:hidden}.page-hero::before{content:'';position:absolute;inset:0;background-image:linear-gradient(to right,rgb(255 255 255 / .04) 1px,transparent 1px),linear-gradient(to bottom,rgb(255 255 255 / .04) 1px,transparent 1px);background-size:80px 80px;pointer-events:none}.page-hero .ph-inner{position:relative;display:grid;grid-template-columns:1.4fr 1fr;gap:56px;align-items:end}.page-hero h1{font-family:var(--font-display);font-weight:600;font-size:clamp(2.5rem, 6vw, 5rem);line-height:.94;letter-spacing:-.025em;margin:20px 0 0;color:var(--paper);text-wrap:balance}.page-hero .ph-lede{font-family:var(--font-body);font-size:17px;line-height:1.55;color:var(--steel-300);margin:0 0 20px;max-width:42ch}.page-hero .ph-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #2A2C30;padding-top:14px;margin:0;max-width:480px}.page-hero .ph-stats>div{border-right:1px solid #2A2C30;padding-right:12px}.page-hero .ph-stats>div:last-child{border-right:none}.page-hero .ph-stats dt{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-500);margin:0 0 4px}.page-hero .ph-stats dd{font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:-.01em;color:var(--paper);margin:0}.anchor-target{position:relative;top:-80px;height:0;pointer-events:none}.cap-row{padding:96px 0;border-bottom:1px solid var(--steel-200);background:var(--paper)}.cap-row:nth-of-type(even){background:var(--paper-warm,#F5F2EC)}.cap-row:last-of-type{border-bottom:1px solid var(--ink-900)}.cap-grid{display:grid;grid-template-columns:280px 1fr;gap:72px;align-items:start}.cap-side{position:sticky;top:100px;border-top:1px solid var(--ink-900);padding-top:16px}.cap-num{font-family:var(--font-display);font-weight:600;font-size:96px;line-height:.9;letter-spacing:-.04em;color:var(--ink-900)}.cap-eyebrow{margin-top:12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--steel-500)}.cap-body h2{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem, 3.5vw, 3rem);line-height:1;letter-spacing:-.02em;color:var(--ink-900);margin:0 0 20px;text-wrap:balance}.cap-body p{font-family:var(--font-body);font-size:17px;line-height:1.6;color:var(--steel-700,var(--steel-600));max-width:60ch;margin:0 0 32px}.cap-points{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--steel-200)}.cap-points li{display:grid;grid-template-columns:110px 1fr;gap:16px;align-items:baseline;border-bottom:1px solid var(--steel-200);padding:14px 0}.cap-points li:nth-child(odd){border-right:1px solid var(--steel-200);padding-right:20px}.cap-points li:nth-child(even){padding-left:20px}.cap-points .k{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-500)}.cap-points .v{font-family:var(--font-body);font-size:15px;line-height:1.5;color:var(--ink-900)}.cap-footnote{margin-top:28px;padding:18px 22px;border-left:2px solid var(--signal-500);background:rgb(216 73 26 / .04);font-family:var(--font-body);font-size:14px;line-height:1.55;color:var(--steel-700,var(--steel-600))}.pf-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:56px}.pf-tile{display:flex;flex-direction:column;gap:18px}.pf-tile .pf-image{position:relative;aspect-ratio:4 / 3;background:#131418;overflow:hidden;border:1px solid #2A2C30}.pf-tile .pf-image::before{content:'';position:absolute;inset:0;background:radial-gradient(60% 60% at 30% 30%,rgb(216 73 26 / .1),transparent 70%),linear-gradient(135deg,#1a1c20 0%,#0d0e10 70%)}.pf-tile .pf-image::after{content:'';position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgb(255 255 255 / .02) 0 1px,transparent 1px 32px),repeating-linear-gradient(90deg,rgb(255 255 255 / .02) 0 1px,transparent 1px 32px)}.pf-tile .pf-image .ph-label{position:absolute;bottom:12px;left:12px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:rgb(255 255 255 / .5);padding:4px 8px;border:1px solid rgb(255 255 255 / .15);background:rgb(0 0 0 / .35)}.pf-tile .pf-ref{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-500);display:flex;align-items:center;gap:12px}.pf-tile .pf-ref .sep{width:16px;height:1px;background:var(--steel-300)}.pf-tile h3{font-family:var(--font-display);font-weight:600;font-size:24px;line-height:1.15;letter-spacing:-.015em;margin:0;color:var(--ink-900)}.pf-tile p{font-family:var(--font-body);font-size:14px;line-height:1.55;color:var(--steel-600);margin:0}.pf-empty{background:var(--paper);padding:48px 56px;border:1px dashed var(--steel-300);display:grid;grid-template-columns:1fr 320px;gap:48px;align-items:center}.pf-empty h3{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1.1;letter-spacing:-.015em;color:var(--ink-900);margin:0 0 12px}.pf-empty p{font-family:var(--font-body);font-size:15px;line-height:1.55;color:var(--steel-600);margin:0}.pf-empty .pf-empty-meta{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-500);display:flex;flex-direction:column;gap:8px;border-left:1px solid var(--steel-200);padding-left:32px}.values-strip{background:var(--paper);border-bottom:1px solid var(--steel-200)}.values-strip .container{padding-top:72px;padding-bottom:72px}.values-strip h2{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem, 3.5vw, 3rem);line-height:1;letter-spacing:-.02em;margin:16px 0 56px;color:var(--ink-900);max-width:18ch}.values-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--ink-900)}.value-cell{padding:32px 28px 36px;border-right:1px solid var(--steel-200)}.value-cell:last-child{border-right:none}.value-cell .v-num{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--steel-500)}.value-cell h3{font-family:var(--font-display);font-weight:600;font-size:28px;line-height:1.1;letter-spacing:-.015em;margin:14px 0 14px;color:var(--ink-900)}.value-cell p{font-family:var(--font-body);font-size:14px;line-height:1.55;color:var(--steel-600);margin:0}.story{background:var(--paper);padding:96px 0}.story .container{display:grid;grid-template-columns:1fr 1.4fr;gap:72px;align-items:start}.story h2{font-family:var(--font-display);font-weight:600;font-size:clamp(2rem, 3.5vw, 3rem);line-height:1;letter-spacing:-.02em;margin:16px 0 0;color:var(--ink-900);text-wrap:balance}.story .story-body p{font-family:var(--font-body);font-size:17px;line-height:1.65;color:var(--steel-700,var(--steel-600));margin:0 0 24px;max-width:62ch}.story .story-body p:last-child{margin-bottom:0}.contact-block{background:var(--paper);padding:96px 0}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:72px;align-items:start}.contact-form{border-top:1px solid var(--ink-900);padding-top:32px}.contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:20px}.contact-form .field{display:flex;flex-direction:column;gap:6px}.contact-form .field.full{grid-column:1 / -1}.contact-form label{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-500)}.contact-form input,.contact-form select,.contact-form textarea{font-family:var(--font-body);font-size:15px;color:var(--ink-900);background:#fff0;border:none;border-bottom:1px solid var(--steel-300);padding:10px 0;outline:none;transition:border-color 120ms var(--ease-out)}.contact-form textarea{resize:vertical;min-height:120px;border:1px solid var(--steel-300);padding:12px 14px}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--ink-900)}.contact-form .field-hint{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--steel-500);margin-top:8px;line-height:1.5}.file-drop{position:relative;border:1px dashed var(--steel-300);background:var(--paper-alt);padding:24px 20px;display:flex;flex-direction:column;gap:16px;transition:border-color 160ms var(--ease-out),background 160ms var(--ease-out)}.file-drop.is-dragging{border-color:var(--signal-500);border-style:solid;background:var(--signal-100)}.file-drop.has-files{border-style:solid;background:var(--paper)}.file-drop-prompt{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.file-drop-prompt .fd-glyph{font-family:var(--font-mono);font-size:20px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--steel-300);color:var(--steel-600);margin-bottom:4px}.file-drop.is-dragging .fd-glyph{border-color:var(--signal-500);color:var(--signal-500)}.file-drop-prompt .fd-text{font-family:var(--font-body);font-size:15px;color:var(--ink-900)}.file-drop-prompt .fd-browse{font:inherit;color:var(--ink-900);background:none;border:none;padding:0;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;cursor:pointer}.file-drop-prompt .fd-browse:hover{color:var(--signal-500)}.file-drop-prompt .fd-hint{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--steel-500)}.file-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;border-top:1px solid var(--steel-200)}.file-list li{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid var(--steel-200)}.file-list li:last-child{border-bottom:none}.file-list .fl-name{font-family:var(--font-mono);font-size:13px;color:var(--ink-900);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-list .fl-size{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--steel-500)}.file-list .fl-rm{background:none;border:1px solid var(--steel-200);width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:var(--steel-600);cursor:pointer;transition:border-color 120ms var(--ease-out),color 120ms var(--ease-out)}.file-list .fl-rm:hover{border-color:var(--ink-900);color:var(--ink-900)}.contact-form .actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-top:24px;padding-top:24px;border-top:1px solid var(--steel-200)}.contact-form .actions .helper{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-500)}.contact-side{background:var(--ink-900);color:var(--paper);padding:36px 32px;display:flex;flex-direction:column;gap:24px}.contact-side h3{font-family:var(--font-display);font-weight:600;font-size:22px;letter-spacing:-.01em;margin:0;color:var(--paper)}.contact-side .c-row{border-top:1px solid #2A2C30;padding-top:16px;display:flex;flex-direction:column;gap:4px}.contact-side .c-row .lbl{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-400)}.contact-side .c-row a,.contact-side .c-row .v{font-family:var(--font-body);font-size:16px;color:var(--paper);text-decoration:none}.contact-side .c-row a:hover{color:var(--signal-500)}@media (max-width:1100px){.page-hero .ph-inner{grid-template-columns:1fr;gap:32px}.cap-grid{grid-template-columns:1fr;gap:32px}.cap-side{position:static}.cap-num{font-size:64px}.pf-grid{grid-template-columns:1fr}.pf-empty{grid-template-columns:1fr;padding:32px 28px}.pf-empty .pf-empty-meta{border-left:none;border-top:1px solid var(--steel-200);padding:24px 0 0}.values-grid{grid-template-columns:1fr 1fr}.value-cell:nth-child(2n){border-right:none}.value-cell:nth-child(-n+2){border-bottom:1px solid var(--steel-200)}.story .container{grid-template-columns:1fr;gap:32px}.contact-grid{grid-template-columns:1fr;gap:32px}}@media (max-width:720px){.cap-points{grid-template-columns:1fr}.cap-points li:nth-child(odd){border-right:none;padding-right:0}.cap-points li:nth-child(even){padding-left:0}.values-grid{grid-template-columns:1fr}.value-cell{border-right:none;border-bottom:1px solid var(--steel-200)}.value-cell:last-child{border-bottom:none}.contact-form .form-row{grid-template-columns:1fr;gap:0;margin-bottom:0}.contact-form .form-row .field{margin-bottom:20px}.contact-form .actions{flex-direction:column;align-items:stretch;gap:12px}.contact-form .actions .btn{width:100%;justify-content:center}.file-drop{padding:20px 16px}.page-hero{padding:64px 0 56px}.page-hero h1{font-size:clamp(2.25rem, 9vw, 3.5rem)}.cap-row{height:auto!important;padding:56px 0}.cap-num{font-size:56px}.contact-side{padding:28px 24px}}@media (max-width:560px){.container{padding:0 20px}.page-hero .ph-stats{grid-template-columns:1fr;gap:12px}}.container--wide{max-width:1400px}.calc-layout{display:grid;grid-template-columns:3fr 2fr;gap:28px;align-items:start}.calc-viewer-col{display:flex;flex-direction:column;gap:0}.calc-config-col{overflow-x:visible;min-width:0}.drop-zone{border:1px dashed var(--steel-300);background:var(--paper-alt);padding:56px 32px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;cursor:pointer;transition:border-color var(--dur-2) var(--ease-out),background var(--dur-2) var(--ease-out);min-height:160px;gap:8px}.drop-zone:hover,.drop-zone:focus-visible,.drop-zone--over{border-color:var(--ink-900);background:var(--steel-100);outline:none}.drop-zone--over{border-color:var(--signal-500);background:var(--signal-100)}.drop-icon{color:var(--steel-400);margin-bottom:8px}.drop-zone--over .drop-icon{color:var(--signal-500)}.drop-main{font-family:var(--font-display);font-weight:600;font-size:var(--fs-18);color:var(--ink-900);margin:0}.drop-sub{font-family:var(--font-mono);font-size:var(--fs-12);color:var(--steel-500);letter-spacing:.04em;margin:0}.drop-hint{font-family:var(--font-body);font-size:var(--fs-13);color:var(--steel-400);margin:4px 0 0}.viewer-panel{display:flex;flex-direction:column;border:1px solid var(--steel-200)}.viewer-canvas-wrap{background:#0D0D0F;aspect-ratio:1 / 1;position:relative;overflow:hidden}.viewer-canvas-wrap div,.viewer-canvas-wrap canvas{width:100%!important;height:100%!important}.viewer-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px}.viewer-spinner{width:28px;height:28px;border:2px solid rgb(255 255 255 / .12);border-top-color:var(--signal-500);border-radius:50%;animation:spin 700ms linear infinite}.viewer-loading-label{font-family:var(--font-mono);font-size:11px;color:var(--steel-400);letter-spacing:.06em;text-transform:uppercase;margin:0}@keyframes spin{to{transform:rotate(360deg)}}.viewer-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:8px;color:var(--steel-400);font-family:var(--font-mono);font-size:13px;padding:24px;text-align:center}.viewer-error small{font-size:11px;color:var(--steel-600);max-width:28ch;line-height:1.5}.viewer-meta{background:var(--paper-alt);border-top:1px solid var(--steel-200);padding:12px 16px}.viewer-meta-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.viewer-meta-file{font-family:var(--font-mono);font-size:var(--fs-12);color:var(--ink-900);letter-spacing:.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.viewer-change{background:none;border:1px solid var(--steel-300);font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--steel-600);padding:4px 10px;cursor:pointer;flex-shrink:0;transition:border-color var(--dur-1),color var(--dur-1)}.viewer-change:hover{border-color:var(--ink-900);color:var(--ink-900)}.viewer-stats{margin-top:10px;display:flex;flex-wrap:wrap;gap:16px}.viewer-stat{display:flex;flex-direction:column;gap:2px}.viewer-stat-label{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--steel-500)}.viewer-stat-val{font-family:var(--font-mono);font-size:var(--fs-14);font-weight:500;color:var(--ink-900)}.unsupported-notice{display:flex;align-items:center;justify-content:center}.unsupported-inner{display:flex;flex-direction:column;align-items:center;padding:32px;color:var(--steel-400)}.q-field{padding:10px 0;border-bottom:1px solid var(--steel-200)}.q-field:last-of-type{border-bottom:none}.field-label{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--steel-600);margin-bottom:0;font-weight:500}.field-input{width:100%;border:1px solid var(--steel-300);background:#fff;padding:7px 10px;font-family:var(--font-body);font-size:var(--fs-14);color:var(--ink-900);outline:none;transition:border-color var(--dur-1);border-radius:var(--radius-1)}.field-input:focus{border-color:var(--ink-900)}.field-textarea{width:100%;border:1px solid var(--steel-300);background:#fff;padding:8px 10px;font-family:var(--font-body);font-size:var(--fs-14);color:var(--ink-900);outline:none;resize:vertical;border-radius:var(--radius-1)}.field-textarea:focus{border-color:var(--ink-900)}.mat-grid{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.mat-chip{font-family:var(--font-mono);font-size:11px;font-weight:500;letter-spacing:.04em;padding:5px 10px;border:1px solid var(--steel-300);background:#fff;color:var(--steel-600);cursor:pointer;transition:border-color var(--dur-1),color var(--dur-1),background var(--dur-1);border-radius:var(--radius-1);white-space:nowrap}.mat-chip:hover{border-color:var(--ink-900);color:var(--ink-900)}.mat-chip--active{border-color:var(--ink-900);background:var(--ink-900);color:var(--paper)}.req-material-link{background:none;border:none;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--steel-400);padding:8px 0 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px;display:block}.req-material-link:hover{color:var(--signal-500)}.req-material-form{background:var(--paper-alt);border:1px solid var(--steel-200);padding:14px 16px 16px;margin-top:-1px}.colour-grid{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.colour-swatch{width:28px;height:28px;border-radius:50%;background:var(--swatch,#999);border:2px solid #fff0;box-shadow:0 0 0 1px rgb(0 0 0 / .2);cursor:pointer;transition:transform var(--dur-1),border-color var(--dur-1),box-shadow var(--dur-1);position:relative}.colour-swatch:hover{transform:scale(1.15);box-shadow:0 0 0 1px rgb(0 0 0 / .35)}.colour-swatch--active{border-color:var(--ink-900);box-shadow:0 0 0 2px var(--paper),0 0 0 4px var(--ink-900);transform:scale(1.1)}.lucky-btn{color:var(--steel-500);margin-top:10px}.infill-val{font-family:var(--font-mono);font-size:11px;color:var(--signal-500);font-weight:500;letter-spacing:.04em}.infill-slider{width:100%;margin:12px 0 4px;-webkit-appearance:none;appearance:none;height:6px;border-radius:3px;outline:none;cursor:pointer;background:linear-gradient(to right,var(--ink-900) var(--slider-fill,20%),var(--steel-200) var(--slider-fill,20%))}.infill-slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--ink-900);border:3px solid var(--paper);box-shadow:0 0 0 2px var(--ink-900),0 2px 6px rgb(0 0 0 / .25);cursor:pointer}.infill-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:var(--ink-900);border:3px solid var(--paper);box-shadow:0 0 0 2px var(--ink-900);cursor:pointer}.infill-slider::-webkit-slider-runnable-track{border-radius:3px}.infill-marks{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:10px;color:var(--steel-400);letter-spacing:.04em;margin-top:4px}.qty-stepper{display:flex;align-items:stretch;border:1px solid var(--steel-300);background:#fff;border-radius:var(--radius-1);overflow:hidden;margin-top:10px;width:fit-content}.qty-step{width:40px;background:var(--paper-alt);border:none;font-family:var(--font-mono);font-size:18px;color:var(--ink-900);cursor:pointer;flex-shrink:0;transition:background var(--dur-1);line-height:1;display:flex;align-items:center;justify-content:center}.qty-step:hover{background:var(--steel-200)}.qty-stepper-input{width:72px;border:none;border-left:1px solid var(--steel-200);border-right:1px solid var(--steel-200);text-align:center;font-family:var(--font-mono);font-size:var(--fs-16);font-weight:500;color:var(--ink-900);padding:8px 4px;outline:none;background:#fff}.qty-presets{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.qty-preset{font-family:var(--font-mono);font-size:11px;padding:4px 10px;border:1px solid var(--steel-200);background:#fff;color:var(--steel-600);cursor:pointer;border-radius:var(--radius-1);transition:border-color var(--dur-1),color var(--dur-1),background var(--dur-1)}.qty-preset:hover{border-color:var(--steel-400);color:var(--ink-900)}.qty-preset--active{border-color:var(--ink-900);background:var(--ink-900);color:var(--paper)}.tooltip-wrap{position:relative;display:inline-flex;align-items:center;margin:0 4px}.tooltip-trigger{width:16px;height:16px;border-radius:50%;border:1px solid var(--steel-300);background:var(--paper-alt);font-family:var(--font-mono);font-size:10px;color:var(--steel-500);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:border-color var(--dur-1),color var(--dur-1);line-height:1}.tooltip-trigger:hover,.tooltip-trigger:focus-visible{border-color:var(--ink-900);color:var(--ink-900);outline:none}.tooltip-bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);background:var(--ink-900);color:var(--paper);font-family:var(--font-body);font-size:12px;line-height:1.5;padding:8px 12px;white-space:normal;width:220px;border-radius:var(--radius-1);z-index:100;pointer-events:none}.tooltip-bubble::after{content:"";position:absolute;top:100%;left:50%;transform:translateX(-50%);border:5px solid #fff0;border-top-color:var(--ink-900)}.post-list{display:flex;flex-direction:column;gap:5px;margin-top:10px}.post-chip{display:flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--steel-200);background:#fff;cursor:pointer;text-align:left;transition:border-color var(--dur-1),background var(--dur-1);border-radius:var(--radius-1)}.post-chip:hover{border-color:var(--steel-400)}.post-chip--active{border-color:var(--ink-900);background:var(--paper-alt)}.post-check{font-family:var(--font-mono);font-size:12px;color:var(--steel-400);width:14px;text-align:center;flex-shrink:0}.post-chip--active .post-check{color:var(--signal-500)}.post-label{font-family:var(--font-body);font-size:var(--fs-13);color:var(--ink-900);flex:1}.post-price{font-family:var(--font-mono);font-size:11px;color:var(--steel-500);letter-spacing:.02em;flex-shrink:0;margin-left:auto}.post-chip--inserts{flex-direction:column;align-items:stretch;padding:0;cursor:default}.post-chip-toggle{display:flex;align-items:center;gap:8px;width:100%;background:none;border:none;padding:9px 12px;cursor:pointer;text-align:left}.insert-qty-row{display:flex;align-items:center;gap:8px;padding:6px 12px 10px 34px;border-top:1px dashed var(--steel-200)}.insert-total{font-family:var(--font-mono);font-size:12px;color:var(--ink-900);font-weight:500}.qty-input{font-family:var(--font-mono);font-size:var(--fs-13);width:72px;padding:5px 8px;border:1px solid var(--steel-300);background:#fff;color:var(--ink-900);outline:none;border-radius:var(--radius-1)}.qty-input:focus{border-color:var(--ink-900)}.price-output{margin-top:20px;border:1px solid var(--ink-900);background:#fff}.price-output-head{padding:10px 14px;border-bottom:1px solid var(--steel-200)}.price-main{padding:18px 14px 14px;display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.price-range{font-family:var(--font-display);font-weight:600;font-size:var(--fs-28);letter-spacing:-.02em;color:var(--ink-900);line-height:1}.price-range-label{font-family:var(--font-mono);font-size:11px;color:var(--steel-500);letter-spacing:.06em;text-transform:uppercase}.price-details{padding:0 14px 4px;border-top:1px solid var(--steel-100)}.price-row{display:flex;justify-content:space-between;align-items:center;padding:7px 0;border-bottom:1px solid var(--steel-100);font-family:var(--font-body);font-size:var(--fs-13);color:var(--steel-600)}.price-row:last-child{border-bottom:none}.price-row--discount{color:var(--ok)}.price-mono{font-family:var(--font-mono);font-size:12px;color:var(--ink-900)}.price-row--discount .price-mono{color:var(--ok)}.price-note{padding:8px 14px 10px;font-family:var(--font-mono);font-size:11px;color:var(--steel-500);margin:0;border-top:1px dashed var(--steel-200);letter-spacing:.02em}.price-placeholder{margin-top:20px;border:1px dashed var(--steel-200);padding:24px 16px;text-align:center}.submit-wrap{margin-top:56px;padding-top:40px;border-top:1px solid var(--steel-200);max-width:640px}.contact-form-title{font-family:var(--font-display);font-weight:600;font-size:var(--fs-22);color:var(--ink-900);margin:0 0 20px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.confirm{text-align:center;padding:48px 24px}.confirm-check{width:40px;height:40px;border-radius:50%;background:var(--ink-900);color:var(--paper);display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.confirm h3{font-family:var(--font-display);font-size:var(--fs-24);margin:0 0 8px}.confirm p{color:var(--steel-600);margin:0 0 4px;font-size:var(--fs-14)}.ref{font-family:var(--font-mono);font-size:11px;color:var(--steel-400)}@media (max-width:1100px){.calc-layout{grid-template-columns:1fr 1fr;gap:32px}}@media (max-width:800px){.calc-layout{grid-template-columns:1fr}.calc-config-col{position:static;max-height:none;overflow-y:visible}.viewer-canvas-wrap{aspect-ratio:1 / 1}.field-row{grid-template-columns:1fr}.colour-swatch{width:36px;height:36px}.mat-chip{padding:10px 14px;min-height:40px;display:inline-flex;align-items:center}}@media (max-width:480px){.price-range{font-size:var(--fs-22)}.drop-zone{padding:36px 20px;min-height:220px}}.mat-consent-banner{position:fixed;left:0;right:0;bottom:0;z-index:1000;background:var(--ink-900);color:var(--paper);border-top:1px solid var(--steel-700)}.mat-consent-bar{max-width:1280px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.mat-consent-text{font-family:var(--font-body);font-size:var(--fs-14);color:var(--steel-100);margin:0;max-width:60ch}.mat-consent-actions{display:flex;gap:8px;flex-wrap:wrap}.mat-consent-banner .btn-secondary{background:none;border:1px solid var(--steel-600);color:var(--paper)}.mat-consent-banner .btn-secondary:hover{border-color:var(--paper)}.mat-consent-panel{max-width:1280px;margin:0 auto;padding:0 20px 20px;display:flex;flex-direction:column;gap:12px;border-top:1px solid var(--steel-700);padding-top:16px}.mat-consent-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.mat-consent-row strong{font-family:var(--font-body);font-size:var(--fs-14);color:var(--paper)}.mat-consent-row p{font-family:var(--font-body);font-size:var(--fs-13);color:var(--steel-400);margin:4px 0 0}.mat-consent-row input[type="checkbox"]{margin-top:3px;flex-shrink:0}.mat-consent-panel>.btn{align-self:flex-start}@media (max-width:640px){.mat-consent-bar{flex-direction:column;align-items:stretch}.mat-consent-actions{justify-content:stretch}.mat-consent-actions .btn{flex:1}}