/* Shared merch shell. Colour and editorial direction follow merch.mt. */
:root{--m-blue:#2935d4;--m-ink:#111;--m-muted:#666661;--m-paper:#f5f4f0;--m-line:#dcdcd5}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--m-paper);color:var(--m-ink);font-family:Arial,"Segoe UI",sans-serif;font-size:16px;line-height:1.6}a{color:inherit}button,input,textarea{font:inherit}img{max-width:100%}.m-wrap{width:min(1140px,calc(100% - 64px));margin:auto}.m-header{position:sticky;top:12px;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:22px;margin:12px 16px 0;padding:10px 12px 10px 18px;background:#fffffff2;border:1px solid #e1e1dc;border-top:4px solid var(--m-blue);border-radius:8px;box-shadow:0 10px 34px #1111110c;backdrop-filter:blur(15px)}.m-brand{display:flex;align-items:center;gap:10px;border:1.5px solid #111;padding:3px 8px;text-decoration:none;white-space:nowrap;line-height:1.05}.m-brand strong{font-size:25px;letter-spacing:-1.5px;font-weight:900}.m-brand small{border-left:1px solid #aaa;padding-left:9px;font-size:8px;letter-spacing:1.6px;line-height:1.4;font-weight:800}.m-nav{display:flex;align-items:center;gap:22px}.m-nav a{font-size:13px;font-weight:700;text-decoration:none}.m-nav a:hover,.m-langs a:hover{color:var(--m-blue)}.m-actions{display:flex;gap:16px;align-items:center}.m-langs{display:flex;gap:9px;font-size:12px;white-space:nowrap}.m-langs a{text-decoration:none}.m-langs [aria-current]{border-bottom:2px solid var(--m-blue);font-weight:800}.m-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--m-blue);color:white!important;padding:15px 20px;border:1px solid var(--m-blue);border-radius:5px;font-size:14px;font-weight:800;text-decoration:none;cursor:pointer;line-height:1.35;transition:background .18s,transform .18s}.m-button:hover{background:#1722a6;transform:translateY(-1px)}.m-button.secondary{color:#111!important;background:transparent;border-color:#c7c7c0}.m-button.secondary:hover{background:#e9e9e2}.m-menu{display:none;border:1px solid #ccc;background:white;border-radius:4px;padding:9px 12px}.m-hero{display:grid;grid-template-columns:1.08fr 1fr;align-items:center;gap:58px;padding:54px 0 48px}.m-eyebrow{display:block;font-family:monospace;font-size:10px;font-weight:700;letter-spacing:1.7px;text-transform:uppercase;color:#51514c;margin:0 0 22px}.m-eyebrow:before{content:"";display:inline-block;width:6px;height:6px;background:var(--m-blue);margin-right:10px;vertical-align:2px}.m-hero h1{font-size:clamp(40px,4.5vw,66px);line-height:1.07;letter-spacing:-2.8px;font-weight:900;margin:0 0 28px;max-width:650px}.m-hero p{font-size:17px;line-height:1.75;color:var(--m-muted);max-width:520px;margin:0 0 28px}.m-buttons{display:flex;flex-wrap:wrap;gap:12px}.m-facts{display:flex;gap:20px;flex-wrap:wrap;padding-top:24px;margin-top:32px;border-top:1px solid var(--m-line);font-family:monospace;font-size:10px;font-weight:700;letter-spacing:.7px}.m-facts span:before{content:"▪";color:var(--m-blue);margin-right:8px}.m-photo{position:relative;margin:0}.m-photo>img{display:block;width:100%;height:560px;object-fit:cover;border:1px solid #d5d5ce;border-radius:7px}.m-photo .m-tag{position:absolute;right:18px;top:18px;color:white;background:var(--m-blue);font:700 11px monospace;letter-spacing:1px;padding:12px}.m-photo figcaption{padding-top:12px;font-size:11px;color:#666;font-family:monospace}.m-section{padding:76px 0;border-top:1px solid var(--m-line)}.m-section h2,.m-contact h2{font-size:clamp(28px,3.3vw,44px);line-height:1.15;letter-spacing:-1.5px;margin:0 0 18px;font-weight:850}.m-section .m-intro{max-width:650px;color:var(--m-muted);margin-bottom:30px}.m-heading-row{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:28px}.m-heading-row a{font-size:13px;white-space:nowrap}.m-projects{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.m-projects figure{margin:0}.m-projects img{display:block;width:100%;height:300px;object-fit:cover;border-radius:6px}.m-projects figcaption{display:flex;justify-content:space-between;gap:12px;padding:12px 0;font-size:13px}.m-projects small{color:#777}.m-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--m-line);border-left:1px solid var(--m-line)}.m-card{padding:28px;border-right:1px solid var(--m-line);border-bottom:1px solid var(--m-line);text-decoration:none;display:block}.m-card .m-number{color:var(--m-blue);font:11px monospace}.m-card h3{font-size:20px;margin:24px 0 12px;line-height:1.35;letter-spacing:-.5px}.m-card p{color:var(--m-muted);font-size:14px;margin:0}.m-card:hover{background:#eeeee8}.m-dark{background:#151515;color:white}.m-dark .m-eyebrow{color:#bbb}.m-dark .m-card{border-color:#444}.m-dark .m-cards{border-color:#444}.m-dark .m-card p{color:#bbb}.m-dark .m-card:hover{background:#222}.m-dark .m-number{color:#a5aeff}.m-process{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:34px}.m-process article{border-top:2px solid var(--m-blue);padding-top:20px}.m-process h3{font-size:19px;margin:12px 0}.m-process p{font-size:14px;color:var(--m-muted)}.m-contact{padding:74px 0;background:#e8ebff;border-top:1px solid #d4d9fa}.m-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.m-contact-copy>p{color:#555;max-width:450px}.m-contact-links{margin-top:28px;display:flex;flex-direction:column;gap:12px;font-size:17px}.m-contact-links a{text-underline-offset:5px}.m-form{background:white;border:1px solid #d3d6ec;padding:28px;border-radius:6px}.m-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.m-form label{display:block;font-size:12px;font-weight:700}.m-form input,.m-form textarea{display:block;width:100%;margin:6px 0 16px;padding:12px;border:1px solid #d5d5d0;border-radius:3px;background:#fff;color:#111}.m-form input:focus,.m-form textarea:focus{outline:2px solid #8b96ff;outline-offset:1px}.m-form textarea{min-height:120px;resize:vertical}.m-form .m-consent{display:flex;gap:9px;align-items:flex-start;font-size:11px;color:#666;font-weight:400;margin:4px 0 20px}.m-consent input{width:16px;height:16px;margin:0;flex-shrink:0}.m-form-status{margin-top:12px;font-size:13px;color:#2530a3}.m-test-note{font-size:11px!important;color:#666!important;margin:12px 0 0!important}.m-footer{padding:40px 0 26px;background:#fff;border-top:1px solid var(--m-line)}.m-footer-row{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap}.m-footer-links{display:flex;gap:20px;font-size:13px;flex-wrap:wrap}.m-footer p{font-size:11px;color:#777;margin:28px 0 0}.m-preview{position:fixed;right:16px;bottom:12px;z-index:150;background:#111;color:#fff;border-radius:4px;padding:7px 12px;font:10px monospace;letter-spacing:1px;box-shadow:0 3px 14px #0003;pointer-events:none}.m-library{padding:56px 0 80px}.m-library h1{font-size:42px;letter-spacing:-1.5px;margin:0 0 16px}.m-search{width:min(100%,600px);padding:14px 16px;border:1px solid #bbb;border-radius:4px;font:inherit;background:white;margin:20px 0 30px}.m-library-list{display:grid;grid-template-columns:1fr 1fr;gap:8px 28px}.m-library-list a{padding:14px 0;border-bottom:1px solid #ddd;font-size:14px;text-decoration:none}.m-library-list a:hover{color:var(--m-blue)}.m-library-list small{display:block;color:#888;font-size:10px}.m-library [hidden]{display:none!important}
/* Legacy editorial pages keep their original body content and shared stylesheet. */
.m-inner .legacy-content{max-width:1140px;margin:0 auto;padding:36px 0 60px}.m-inner .legacy-content .container{width:100%;max-width:100%;padding-left:0;padding-right:0}.m-inner .legacy-content h1{font-size:clamp(32px,4vw,54px);line-height:1.15;color:#111;letter-spacing:-1.5px}.m-inner .legacy-content h2{font-size:28px;line-height:1.25;color:#111}.m-inner .legacy-content .hero{background:none;color:#111;padding:35px 0}.m-inner .legacy-content .section{padding:38px 0;background:transparent;color:#111}.m-inner .legacy-content .hero p,.m-inner .legacy-content .hero-subtitle{color:#62625f}.m-inner .legacy-content .service-card{background:#fff;border:1px solid #deded7;border-radius:5px;box-shadow:none}.m-inner .legacy-content .btn,.m-inner .legacy-content .btn-primary{background:var(--m-blue);color:white;border-color:var(--m-blue);border-radius:4px}.m-inner .legacy-content table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}.m-inner .legacy-content td,.m-inner .legacy-content th{padding:12px;border:1px solid #ddd}.m-inner .legacy-content .breadcrumbs{font-size:12px;color:#666}.m-inner .legacy-content img{height:auto;max-width:100%}.m-inner .legacy-content>p{max-width:900px}.m-inner .legacy-content a{overflow-wrap:anywhere}.m-inner .legacy-content .section-header{text-align:left}.m-inner .legacy-content .hero-content{max-width:900px}.m-inner .legacy-content .hero-subtitle{max-width:850px}.m-inner .legacy-content .section-alt{background:transparent}
@media(min-width:1500px){.m-wrap{max-width:1320px}.m-hero{gap:85px}.m-photo>img{height:610px}}
@media(max-width:1050px){.m-nav{gap:12px}.m-nav a{font-size:11px}.m-brand strong{font-size:22px}.m-header{gap:12px}.m-actions{gap:10px}.m-actions .m-button{padding:12px;font-size:12px}.m-hero{gap:32px}.m-photo>img{height:500px}.m-hero h1{font-size:48px}.m-contact-grid{gap:32px}}
@media(max-width:800px){.m-wrap{width:calc(100% - 40px)}.m-header{top:8px;margin:8px 10px 0;padding:10px 12px}.m-menu{display:block}.m-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px;background:white;border:1px solid #ddd;border-radius:5px;flex-direction:column;align-items:start}.m-nav.open{display:flex}.m-nav a{font-size:15px}.m-actions>.m-button{display:none}.m-hero{grid-template-columns:1fr;padding-top:42px;gap:32px}.m-hero h1{font-size:48px;letter-spacing:-2px;max-width:650px}.m-hero p{max-width:650px;font-size:16px}.m-photo>img{height:440px}.m-photo .m-tag{font-size:10px}.m-section{padding:52px 0}.m-projects{gap:12px}.m-projects img{height:220px}.m-projects figcaption{flex-direction:column;gap:2px}.m-cards{grid-template-columns:1fr 1fr}.m-card{padding:22px}.m-process{grid-template-columns:1fr;gap:15px}.m-process h3{margin:8px 0}.m-process p{margin:0}.m-contact-grid{grid-template-columns:1fr;gap:30px}.m-contact{padding:50px 0}.m-library-list{grid-template-columns:1fr}.m-inner .legacy-content{width:calc(100% - 40px)}.m-heading-row{align-items:start;flex-direction:column;gap:0}.m-inner .legacy-content .services-grid{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.m-brand small{font-size:7px}.m-brand strong{font-size:23px}.m-brand{gap:7px;padding:4px 6px}.m-langs{font-size:11px}.m-header{gap:8px}.m-actions{gap:12px}.m-menu{font-size:13px;padding:7px}.m-hero h1{font-size:39px;letter-spacing:-1.7px}.m-hero{padding-top:36px}.m-photo>img{height:390px}.m-eyebrow{font-size:9px;letter-spacing:1px}.m-projects{grid-template-columns:1fr}.m-projects img{height:350px}.m-cards{grid-template-columns:1fr}.m-card h3{margin-top:16px}.m-fields{grid-template-columns:1fr;gap:0}.m-form{padding:22px}.m-footer-links{gap:12px}.m-section h2,.m-contact h2{font-size:30px}.m-facts{gap:12px;font-size:9px}.m-inner .legacy-content .services-grid{grid-template-columns:1fr}.m-library h1{font-size:32px}.m-buttons .m-button{font-size:12px;padding:14px}.m-preview{font-size:9px;bottom:8px;right:8px}.m-header .m-brand{max-width:170px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.m-button{transition:none}}
