:root{--ink:#151817;--paper:#f3f3ed;--white:#fff;--lime:#d8fa70;--muted:#646a62;--line:#d5d8ce;--dark-line:#3a3f39;--light-text:#bac1b8;--font:Arial,Helvetica,sans-serif;--mono:"SFMono-Regular",Consolas,"Liberation Mono",monospace;--ease:cubic-bezier(.2,.7,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:106px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--font);-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button{border-radius:0}button:disabled{cursor:default}img,svg{display:block;max-width:100%}img{height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:500;line-height:1.07;letter-spacing:-.052em}h1{font-size:clamp(3rem,5.8vw,5.55rem)}h2{font-size:clamp(2rem,3.8vw,3.6rem)}h3{font-size:1.55rem;letter-spacing:-.035em;line-height:1.2}p{margin:0 0 1em}p:last-child{margin-bottom:0}ul,ol{padding-left:1.2em}button{background:none}::selection{background:var(--lime);color:var(--ink)}:focus-visible{outline:3px solid #698324;outline-offset:5px}.site-header :focus-visible,.site-footer :focus-visible,.hero :focus-visible,.system-section :focus-visible{outline-color:var(--lime)}[hidden]{display:none!important}.container{width:min(1280px,calc(100% - 96px));margin-inline:auto}.section{padding:108px 0}.eyebrow,.mono{font-family:var(--mono);font-size:11px;line-height:1.6;font-weight:400;letter-spacing:.06em;text-transform:uppercase}.eyebrow{margin-bottom:24px;display:flex;align-items:center;gap:12px}.small{font-size:13px;line-height:1.65}.lead-text{font-size:clamp(1.2rem,1.8vw,1.6rem);line-height:1.6;letter-spacing:-.015em}.icon{width:24px;height:24px;flex:0 0 24px}.category-icon{width:36px;height:38px;flex-shrink:0}.brand-mark{width:42px;height:42px;flex-shrink:0}.brand-mark .logo-accent{color:var(--lime)}.button{min-height:54px;padding:15px 22px;display:inline-flex;align-items:center;justify-content:center;gap:26px;border:1px solid transparent;line-height:1.25;font-size:14px;font-weight:500;text-align:center;transition:background .2s,color .2s,border-color .2s}.button .arrow{width:20px;height:20px;transition:transform .25s var(--ease)}.button:hover .arrow{transform:translateX(4px)}.button.primary{background:var(--lime);color:var(--ink)}.button.primary:hover{background:#e7ffab}.button.dark{background:var(--ink);color:var(--paper)}.button.dark:hover{background:#343b31}.button.outline{border-color:#939b8e;background:transparent}.button.outline:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.button.text-light{color:var(--paper);border-color:transparent;padding-left:0;padding-right:0}.button-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.inline-link{display:inline-flex;gap:8px;align-items:center;text-decoration:underline;text-underline-offset:4px}.inline-link .arrow{width:17px;height:17px}.text-button{border:0;padding:0;text-align:left;text-decoration:underline;text-underline-offset:4px;font-size:inherit}.status-dot{display:inline-block;width:6px;height:6px;flex-shrink:0;background:var(--lime);border-radius:50%;box-shadow:0 0 0 4px #d8fa7015}.js-only{display:none!important}.js .js-only{display:inline-flex!important}.skip-link{position:fixed;top:-100px;left:20px;padding:14px 24px;background:var(--lime);z-index:150;color:var(--ink)}.skip-link:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* The frame */
.site-header{position:sticky;z-index:40;top:0;background:var(--ink);color:var(--paper);border-bottom:1px solid #ffffff1a}.header-inner{height:94px;display:flex;align-items:center;gap:36px}.brand{display:flex;align-items:center;gap:13px;margin-right:auto}.brand>span{font-size:24px;letter-spacing:.055em;font-weight:600;line-height:1}.brand small{display:block;font:8px/1.8 var(--mono);letter-spacing:.13em;margin-top:7px;color:var(--light-text)}.desktop-nav{display:flex;align-items:center;gap:30px;font-size:13px}.desktop-nav a{position:relative;padding:16px 0;color:#d6dbd2}.desktop-nav a:after{content:"";position:absolute;bottom:6px;left:0;width:0;height:1px;background:var(--lime);transition:width .25s}.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{width:100%}.desktop-nav a[aria-current]{color:var(--lime)}.header-tools{display:flex;align-items:center;gap:24px}.language-switch{display:flex;gap:11px;font:11px var(--mono)}.language-switch a{padding:10px 2px;color:#969f93}.language-switch a[aria-current]{color:var(--paper);text-decoration:underline;text-underline-offset:5px}.header-cta{border:1px solid #727a6c;width:43px;height:43px;display:grid;place-items:center}.header-cta:hover{background:var(--lime);color:var(--ink);border-color:var(--lime)}.menu-toggle{display:none!important;width:44px;height:44px;border:1px solid #727a6c;padding:12px;flex-direction:column;justify-content:center;gap:6px}.menu-toggle span{display:block;width:100%;height:1px;background:var(--paper);transition:transform .2s}.menu-open .menu-toggle span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-open .menu-toggle span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-nav{display:none}.js .menu-toggle{display:none!important}
/* Sculptural heroes */
.hero{background:var(--ink);color:var(--paper);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;min-height:608px;padding-top:70px;padding-bottom:66px}.hero-copy{position:relative;z-index:1}.hero h1{font-weight:500;margin-bottom:27px;max-width:700px}.hero .eyebrow{color:#c0cabb;margin-bottom:34px}.hero-intro{font-size:17px;line-height:1.75;max-width:490px;color:var(--light-text)}.hero .button-row{margin-top:35px}.hero-art{position:relative;align-self:center;margin-right:-30px;min-width:0}.hero-art img{width:100%;aspect-ratio:3/2;object-fit:contain}.hero-art figcaption{display:flex;justify-content:space-between;gap:14px;margin:24px 0 0;font:8px/1.5 var(--mono);letter-spacing:.09em;color:#aab4a5;text-transform:uppercase}.art-corner{position:absolute;width:20px;height:20px;opacity:.45}.art-corner.tl{top:5px;left:0;border-left:1px solid #adb7a7;border-top:1px solid #adb7a7}.art-corner.br{bottom:42px;right:0;border-right:1px solid #adb7a7;border-bottom:1px solid #adb7a7}.hero-foot{display:flex;align-items:center;justify-content:space-between;gap:26px;padding:24px 0 28px;border-top:1px solid var(--dark-line);font:10px/1.7 var(--mono);color:#b4bcae;letter-spacing:.02em}.scroll-link{display:flex;gap:28px;align-items:center;white-space:nowrap;color:var(--paper)}.scroll-link span{font:28px/1 var(--font);color:var(--lime)}.inner-hero .hero-grid{min-height:575px}.inner-hero h1{font-size:clamp(2.7rem,4.65vw,4.5rem)}.inner-hero .hero-art{margin-right:0}.section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:72px;align-items:end;margin-bottom:55px}.section-heading h2{max-width:700px}.section-intro{color:var(--muted);max-width:445px;font-size:16px;line-height:1.8;justify-self:end}.section-end{margin-top:38px;display:flex;justify-content:flex-end}.split-heading{display:grid;grid-template-columns:1fr 1.3fr;gap:100px}.split-heading h2{margin-bottom:26px}
/* Expertise as an editorial index */
.expertise-list{border-top:1px solid var(--line)}.expertise-row{display:grid;grid-template-columns:50px 55px minmax(200px,1.1fr) minmax(220px,1fr) 30px;gap:20px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line);transition:padding .3s,background .3s}.expertise-number{font:12px var(--mono);color:var(--muted)}.expertise-row .category-icon{width:31px;height:33px}.expertise-row h3{font-size:clamp(1.3rem,2.1vw,1.9rem)}.expertise-services{font-size:12px;line-height:1.9;color:var(--muted)}.expertise-row>.arrow{transition:transform .3s}.expertise-row:hover{padding-left:16px;padding-right:16px;background:#e8edde}.expertise-row:hover>.arrow{transform:rotate(-45deg)}
/* Service catalogue */
.selection-section{background:#e8ebe1}.js .goal-select{display:grid!important;grid-template-columns:repeat(5,1fr);border-top:1px solid #bec6b6;border-bottom:1px solid #bec6b6;margin-bottom:38px}.goal-button{min-width:0;text-align:left;border:0;border-right:1px solid #bec6b6;padding:20px 17px;font-size:13px;line-height:1.45;display:grid;grid-template-columns:1fr auto;gap:8px;align-content:space-between;transition:background .2s;min-height:120px}.goal-button:last-child{border-right:0}.goal-button>span{grid-column:1/-1;font:10px var(--mono);opacity:.65}.goal-button>.arrow{width:18px;height:18px;align-self:end}.goal-button[aria-pressed=true]{background:var(--ink);color:var(--lime)}.goal-button:hover:not([aria-pressed=true]){background:#dce4cf}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 32px}.goal-panel+.goal-panel{margin-top:50px}.js .goal-panel+.goal-panel{margin-top:0}.service-card{min-width:0}.card-image{display:block;position:relative;overflow:hidden;background:#dfe2d8;isolation:isolate}.card-image img{width:100%;aspect-ratio:3/2;object-fit:contain;transition:filter .45s var(--ease)}.card-image:hover img{filter:brightness(1.08)}.card-image-index{position:absolute;top:16px;left:16px;padding:5px 10px;background:#151817d9;color:#fff;font:10px var(--mono);letter-spacing:.08em}.image-arrow{position:absolute;right:16px;bottom:16px;display:grid;place-items:center;width:45px;height:45px;background:var(--paper);color:var(--ink);transition:background .2s,transform .2s}.card-image:hover .image-arrow{background:var(--lime);transform:rotate(-45deg)}.card-copy{padding:25px 0 0}.card-copy .eyebrow{font-size:10px;color:var(--muted);margin-bottom:12px}.card-copy h3{font-size:clamp(1.5rem,2.4vw,2rem);margin-bottom:13px;max-width:550px}.card-copy h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.card-copy>p{color:var(--muted);font-size:14px;max-width:500px}.card-bottom{border-top:1px solid #c4ccba;display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:24px;padding-top:18px}.price{font-size:20px;letter-spacing:-.035em;white-space:nowrap}.price>span{font-size:11px;letter-spacing:0;margin-right:6px;color:var(--muted)}.card-time{font:10px var(--mono);color:var(--muted)}.price-note{font-size:12px;max-width:800px;line-height:1.8;color:var(--muted);margin-top:40px}.catalog-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:25px}.catalog-toolbar h2{font-size:2rem}.filter-row{gap:8px;flex-wrap:wrap;margin-bottom:45px}.filter-row button{border:1px solid #b8c1ad;padding:11px 17px;font-size:12px;line-height:1.5}.filter-row button[aria-pressed=true]{background:var(--ink);color:var(--lime);border-color:var(--ink)}.filter-row button:hover:not([aria-pressed=true]){background:#e2e8d7}.category-flow{background:#e8ebe1}.three-node-flow{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #b8c0b0}.three-node-flow>div{position:relative;padding:38px 30px 50px;border-right:1px solid #b8c0b0;min-width:0}.three-node-flow>div:last-child{border:0}.three-node-flow h3{margin-top:35px;font-size:clamp(1.3rem,2.6vw,2.3rem)}.flow-dot{position:absolute;bottom:22px;left:30px;width:6px;height:6px;border-radius:50%;background:var(--ink)}.three-node-flow>div:after{content:"";height:1px;background:#a4b396;position:absolute;left:40px;right:0;bottom:25px}.three-node-flow>div:last-child:after{right:30px}
/* Live, explanatory system diagram */
.system-section{background:var(--ink);color:var(--paper)}.system-section .section-intro{color:var(--light-text)}.system-section .eyebrow{color:var(--lime)}.architecture{max-width:970px;margin:65px auto 0;display:flex;flex-direction:column;align-items:center}.arch-top,.arch-bottom{width:46%;padding:22px 26px;border:1px solid #515b49;display:flex;align-items:center;gap:20px;background:#1c211b;min-height:90px}.arch-top strong,.arch-bottom strong,.arch-node strong{font-size:15px;letter-spacing:-.015em;font-weight:400}.arch-code{font:9px/1.4 var(--mono);color:#a8b99a}.mini-window{margin-left:auto;display:grid;grid-template-columns:18px 18px;gap:4px;border:1px solid #879b6f;width:52px;padding:5px}.mini-window span{grid-column:1/-1;height:6px;border-bottom:1px solid #879b6f}.mini-window i{height:15px;background:#d8fa7030}.mini-window i:last-child{background:var(--lime)}.arch-middle{width:100%;display:grid;grid-template-columns:1fr .3fr 1.3fr .3fr 1fr;align-items:center}.arch-node{border:1px solid #515b49;min-height:150px;padding:23px;display:flex;flex-direction:column;gap:16px}.arch-node .category-icon{width:28px;height:30px;color:#a9b69e}.arch-node.core{border-color:#a6c863;background:#d8fa700a;align-items:center;text-align:center;padding:26px;min-height:198px;box-shadow:inset 0 0 60px #d8fa7005}.arch-node.core .brand-mark{width:48px;height:48px;color:var(--paper)}.arch-line{position:relative;background:#4d5e3a;overflow:hidden}.arch-line.vertical{width:1px;height:42px}.arch-line.horizontal{height:1px;width:100%}.arch-line:after{content:"";position:absolute;background:var(--lime)}.arch-line.vertical:after{width:1px;height:16px;top:-16px;animation:flow-down 3s linear infinite}.arch-line.horizontal:after{width:20px;height:1px;left:-20px;animation:flow-right 3s linear infinite}.arch-bottom{justify-content:space-between}.signal-dots{display:flex;gap:5px;margin-left:auto}.signal-dots i{width:4px;height:13px;background:var(--lime);animation:signal 2s ease-in-out infinite}.signal-dots i:nth-child(2){animation-delay:.2s}.signal-dots i:nth-child(3){animation-delay:.4s}.diagram-note{font:10px/1.7 var(--mono);color:#9cac8f;text-align:center;margin-top:32px}
/* Principles and process */
.principles-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:46px}.principles-grid article{border-top:1px solid var(--line);padding-top:20px}.principles-grid article .mono{color:var(--muted)}.principles-grid h3{margin:42px 0 16px;font-size:1.65rem}.principles-grid p{font-size:14px;color:var(--muted)}.process-section{background:#e8ebe1}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:0}.process-grid li{border-top:1px solid #b1bba5;padding:30px 30px 0 0;position:relative}.process-grid li:before{content:"";width:7px;height:7px;position:absolute;left:0;top:-4px;background:var(--ink);border-radius:50%}.process-number{font-size:56px;font-weight:400;line-height:1;letter-spacing:-.06em;color:#8d9980}.process-grid h3{margin:30px 0 14px;font-size:1.65rem}.process-grid p{font-size:13px;color:var(--muted);min-height:66px}.gate-label{display:block;font:9px/1.7 var(--mono);text-transform:uppercase;margin-top:27px;max-width:200px}.audience-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.audience-grid article{border-top:1px solid var(--line);padding-top:25px}.audience-grid h3{margin-top:35px;font-size:2rem}.audience-grid p{max-width:510px;font-size:15px;margin:22px 0 26px;color:var(--muted)}.faq-section{border-top:1px solid var(--line)}.faq-list{border-top:1px solid #b8c2ac}.faq-list details{border-bottom:1px solid #b8c2ac}.faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:25px;list-style:none;padding:25px 0;cursor:pointer;font-size:16px;line-height:1.45;letter-spacing:-.02em}.faq-list summary::-webkit-details-marker{display:none}.plus{font:26px/1 var(--font);font-weight:300;transition:transform .2s}.faq-list details[open] .plus{transform:rotate(45deg)}.answer{color:var(--muted);font-size:14px;line-height:1.85;padding:0 25px 25px 0}.cta{background:var(--lime);overflow:hidden}.cta .container{position:relative}.cta h2{font-size:clamp(2.6rem,4.65vw,4.5rem);max-width:970px;position:relative;z-index:1}.cta-bottom{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:end;gap:50px;margin-top:50px;padding-top:40px;border-top:1px solid #15181740}.cta-bottom>p{max-width:545px;font-size:15px;line-height:1.8}.cta-watermark{position:absolute;right:-30px;top:-80px;opacity:.055;transform:rotate(10deg);pointer-events:none}.cta-watermark .brand-mark{width:420px;height:420px}.cta-watermark .logo-accent{color:var(--ink)}
/* Detailed service pages */
.service-hero{padding-top:38px;background:var(--ink);color:var(--paper)}.breadcrumbs{font:10px/1.7 var(--mono);display:flex;flex-wrap:wrap;align-items:center;gap:15px;color:#b9c4af}.breadcrumbs a:hover{color:var(--lime)}.service-title-grid{display:grid;grid-template-columns:1.65fr 1fr;gap:100px;align-items:start;padding:65px 0 55px}.service-title-grid h1{font-size:clamp(2.7rem,4.8vw,4.6rem);max-width:780px}.service-title-grid .eyebrow{color:var(--lime)}.service-title-grid .hero-intro{margin-top:26px;max-width:610px}.service-price{border-left:1px solid #4b5443;padding-left:35px;max-width:390px}.service-price>span{font:12px var(--mono);color:#b7c4aa}.service-price strong{display:block;font-size:clamp(2.4rem,4vw,3.5rem);font-weight:400;line-height:1.2;letter-spacing:-.06em;margin:10px 0 20px}.service-price p{font-size:12px;line-height:1.7;color:#bac6ae;margin-bottom:26px}.service-price p b{font-size:15px;font-weight:400;color:var(--paper)}.service-price .button{font-size:13px;width:100%;gap:12px}.service-photo{position:relative;width:min(1040px,100%);margin:0 auto}.service-photo img{width:100%;aspect-ratio:3/2;object-fit:contain}.service-photo figcaption{position:absolute;left:20px;bottom:20px;font:9px/1.6 var(--mono);padding:6px 12px;background:#151817d9;color:#fff}.service-detail-layout{display:grid;grid-template-columns:1.7fr 1fr;gap:85px;align-items:start}.detail-main h2{font-size:clamp(1.8rem,3vw,2.8rem);margin-bottom:28px}.scope-panel{background:#e6eadf;border-left:3px solid #9bad7f;padding:34px;margin:45px 0 60px}.scope-panel .eyebrow{margin-bottom:16px}.scope-panel p{color:#526048;font-size:15px}.scope-panel h2{font-size:1.8rem}.deliverables{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.deliverables li{display:grid;grid-template-columns:25px 1fr 24px;gap:25px;padding:23px 0;border-bottom:1px solid var(--line);align-items:center}.deliverables li>span{font:11px var(--mono);color:var(--muted)}.deliverables li>p{font-size:16px;margin:0}.deliverables li>.arrow{width:17px;height:17px}.service-aside{border:1px solid #c3ccb7;padding:30px;position:sticky;top:126px}.service-aside h3{margin:30px 0 15px;font-size:1.4rem}.service-aside p,.service-aside li{font-size:13px;color:var(--muted);line-height:1.8}.service-aside ul{padding-left:18px;margin-bottom:25px}.service-aside li{margin-bottom:8px}.service-aside .small{font-size:11px;margin-top:20px}.service-aside .button{font-size:12px;gap:14px;width:100%;padding-inline:12px}.service-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.service-steps li{border-top:1px solid #adb89f;padding-top:20px}.service-steps span{font-size:48px;line-height:1;letter-spacing:-.04em;color:#859578}.service-steps h3{margin-top:30px;font-size:1.55rem}.limits-panel{margin-top:65px;padding-top:30px;border-top:1px solid #adb89f;display:grid;grid-template-columns:1fr 1.8fr;gap:80px}.limits-panel h3{font-size:1.45rem}.limits-panel p{font-size:14px;color:var(--muted)}.related-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.all-expertise{background:var(--ink);color:var(--paper);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:42px;min-height:380px}.all-expertise .category-icon{width:50px;height:54px;color:var(--lime)}.all-expertise h3{font-size:clamp(2rem,3.5vw,3.3rem);max-width:450px;margin:70px 0}.all-expertise>span{display:flex;justify-content:space-between;width:100%;font-size:13px;color:var(--lime)}.all-expertise:hover{background:#24311f}
/* Studio and method */
.studio-statement{background:#e8ebe1}.studio-statement h2{font-size:clamp(2.6rem,5.6vw,5.4rem);max-width:1020px;margin-top:38px}.statement-bottom{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:60px;padding-top:30px;border-top:1px solid #bec8b2;align-items:center}.statement-mark .brand-mark{width:70px;height:70px}.statement-mark .logo-accent{color:#6a8044}.statement-bottom p{font-size:17px;color:#536047;max-width:550px}.identity-section{border-top:1px solid var(--line)}.identity-section .split-heading>div>p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:24px}.identity-list{margin:0;border-top:1px solid var(--line)}.identity-list>div{display:grid;grid-template-columns:1fr 2fr;gap:24px;padding:24px 0;border-bottom:1px solid var(--line)}.identity-list dt{font:11px/1.7 var(--mono);color:var(--muted)}.identity-list dd{margin:0;font-size:15px}.region-section{background:var(--ink);color:var(--paper)}.region-section p{color:var(--light-text)}.region-section .eyebrow{color:var(--lime)}.region-orbits{display:block;position:relative;height:160px;max-width:400px;overflow:hidden;margin-top:36px}.region-orbits i{border:1px solid #a5c18b4a;position:absolute;width:260px;height:140px;left:40px;top:10px;border-radius:50%}.region-orbits i:nth-child(2){transform:rotate(25deg)}.region-orbits i:nth-child(3){transform:rotate(-25deg)}.region-orbits b{position:absolute;left:130px;top:49px;color:var(--lime);font:10px var(--mono);padding:3px;background:var(--ink)}.region-orbits b:last-child{left:240px;top:82px}.method-timeline article{display:grid;grid-template-columns:100px 1.5fr 1fr;gap:45px;padding:50px 0;border-top:1px solid var(--line);align-items:start}.method-timeline article:last-child{border-bottom:1px solid var(--line)}.timeline-number{font-size:65px;line-height:1;letter-spacing:-.075em;color:#a3ad99}.method-timeline h2{font-size:2.8rem;margin-bottom:22px}.method-timeline .eyebrow{font-size:9px;color:var(--muted)}.method-timeline article p:not(.eyebrow){font-size:15px;color:var(--muted);max-width:580px}.approval-gate{border:1px solid #bcc8af;background:#e7eddf;position:relative;padding:30px;display:flex;flex-direction:column;align-items:start;gap:15px;margin-left:30px}.approval-gate .status-dot{background:#4d662c;box-shadow:0 0 0 4px #4d662c12}.approval-gate small{font:9px/1.7 var(--mono);text-transform:uppercase;letter-spacing:.04em;color:#526545}.approval-gate strong{font-size:16px;line-height:1.4;font-weight:400;max-width:180px}
/* Human contact; no pretend submission */
.contact-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:80px;align-items:start}.contact-details h2{margin-bottom:36px}.contact-mail{display:flex;gap:15px;align-items:center;font-size:clamp(1rem,1.6vw,1.45rem);letter-spacing:-.035em;text-decoration:underline;text-underline-offset:6px;overflow-wrap:anywhere}.contact-mail .icon{width:20px;height:20px}.contact-phone{display:block;margin-top:25px;font-size:20px;letter-spacing:-.03em}.contact-note{display:flex;align-items:center;gap:13px;padding:26px 0;font-size:12px}.contact-note .status-dot{background:#5f713b}.contact-region{border-top:1px solid var(--line);padding-top:30px;margin-top:20px}.contact-region h3{font-size:1.25rem;margin-bottom:16px}.contact-region p{font-size:14px;color:var(--muted);max-width:410px}.contact-region .small{font-size:12px}.contact-form-panel{background:#e7ebdf;padding:36px}.contact-form-panel h2{font-size:2rem;margin-bottom:32px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px 20px}.field{min-width:0}.field.full{grid-column:1/-1}.field label{display:block;font-size:12px;line-height:1.4;margin-bottom:10px}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid #a6b299;background:#f8f9f5;border-radius:0;padding:12px;min-height:48px;line-height:1.5;font-size:14px;box-shadow:none}.field textarea{resize:vertical;min-height:140px}.field input:focus,.field select:focus,.field textarea:focus{background:#fff;outline:2px solid #627c3e;outline-offset:1px}.field textarea::placeholder{color:#6f7965}.form-bottom{margin-top:25px}.form-bottom .small{font-size:11px;color:#526048;line-height:1.9;margin-bottom:24px}.form-bottom .button{width:100%;background:var(--ink);color:var(--lime)}.form-bottom .button:hover{background:#303d25}
/* Policy pages */
.legal-hero{padding:80px 0 60px;border-bottom:1px solid var(--line)}.legal-hero h1{font-size:clamp(2.7rem,5vw,4.7rem);margin-bottom:26px;max-width:1100px}.legal-hero p:not(.eyebrow){max-width:630px;color:var(--muted);font-size:17px}.legal-hero .mono{display:block;margin-top:30px;color:var(--muted);font-size:10px}.legal-layout{display:grid;grid-template-columns:260px 1fr;gap:100px;align-items:start}.legal-sidebar{position:sticky;top:125px}.legal-sidebar nav{display:flex;flex-direction:column;border-top:1px solid var(--line)}.legal-sidebar nav a{padding:17px 0;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);font-size:13px}.legal-sidebar nav a[aria-current]{font-weight:600}.legal-sidebar nav .arrow{width:16px;height:16px}.legal-sidebar p{margin-top:30px;font-size:11px;color:var(--muted)}.legal-copy{max-width:800px}.legal-copy>section{margin-bottom:43px}.legal-copy>section>.mono{font-size:10px;color:#798470;display:block;margin-bottom:12px}.legal-copy h2{font-size:1.65rem;letter-spacing:-.025em;line-height:1.25;margin-bottom:18px}.legal-copy>section>p{font-size:15px;line-height:1.95;color:#50594a;overflow-wrap:anywhere}.legal-copy a{text-decoration:underline;text-underline-offset:3px}.legal-copy .inline-link{font-size:12px}.withdrawal-section{margin-top:60px;padding:30px;background:#e7ebdf}.withdrawal-section>p{font-size:13px!important}.withdrawal-section .form-grid{margin-top:30px}.withdrawal-section .field:has(#reference){grid-column:1/-1}.not-found{min-height:65vh}.not-found h1{max-width:880px;margin:35px 0}.not-found .button-row{margin-top:40px}
/* Closing frame */
.site-footer{padding:80px 0 25px;background:var(--ink);color:var(--paper);overflow:hidden}.footer-top{display:flex;justify-content:space-between;gap:70px}.footer-top h2{font-size:clamp(1.7rem,3vw,2.7rem);margin-bottom:30px}.footer-top .eyebrow{color:#a4b098;font-size:10px}.footer-mail{font-size:clamp(1rem,1.7vw,1.5rem);display:flex;align-items:center;gap:18px;color:var(--lime);letter-spacing:-.025em}.footer-mail .arrow{width:18px;height:18px}.footer-phone{display:inline-block;margin-top:14px;font-size:14px;color:#c6cebf}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:14px 40px;font-size:13px;align-content:start}.footer-nav a:hover{color:var(--lime)}.footer-nav span{grid-column:1/-1;font-size:11px;margin-top:16px;color:#acb5a5}.footer-bottom{border-top:1px solid #4b5443;padding-top:27px;display:grid;grid-template-columns:1fr 1.4fr 40px;gap:60px;align-items:start}.footer-bottom>p{font-size:10px;line-height:1.9;color:#aeb8a6}.legal-links{display:flex;flex-wrap:wrap;gap:12px 20px;max-width:580px;font-size:10px;color:#c3ccba}.legal-links a:hover{color:var(--lime);text-decoration:underline}.legal-links .text-button{line-height:inherit}.back-top{width:38px;height:38px;border:1px solid #707e61;display:grid;place-items:center;font-size:20px}.back-top:hover{background:var(--lime);color:var(--ink)}.image-note{font-size:9px;line-height:1.8;color:#95a289;margin-top:28px;max-width:780px}
/* Logo: detailed first entrance, brief internal transition */
.site-loader,.page-transition{display:none;position:fixed;inset:0;background:#111510;color:var(--paper);z-index:120;pointer-events:none}.show-intro .site-loader{display:flex;align-items:center;justify-content:center;animation:intro-exit .55s var(--ease) 1.6s both}.loader-grid{position:absolute;inset:26px;border:1px solid #4c60432e;background-image:linear-gradient(#63765512 1px,transparent 1px),linear-gradient(90deg,#63765512 1px,transparent 1px);background-size:90px 90px;mask-image:radial-gradient(ellipse at center,#000,transparent 75%)}.loader-meta,.loader-coordinates{position:absolute;left:46px;right:46px;display:flex;justify-content:space-between;gap:20px;font:9px/1.5 var(--mono);color:#a9b59e;letter-spacing:.1em}.loader-meta{top:40px}.loader-coordinates{bottom:40px}.loader-center{display:flex;flex-direction:column;align-items:center;position:relative}.loader-orbit{width:184px;height:184px;display:grid;place-items:center;position:relative;margin-bottom:25px}.loader-orbit>span{position:absolute;border:1px solid #819b6566;inset:0;animation:orbit-intro 1.5s var(--ease) both}.loader-orbit>span:nth-child(2){inset:18px;transform:rotate(45deg);border-color:#819b6530;animation-delay:.1s}.loader-orbit>span:nth-child(3){inset:-22px;border:0;background:linear-gradient(var(--lime),var(--lime)) 0 0/14px 1px no-repeat,linear-gradient(var(--lime),var(--lime)) 0 0/1px 14px no-repeat,linear-gradient(var(--lime),var(--lime)) 100% 100%/14px 1px no-repeat,linear-gradient(var(--lime),var(--lime)) 100% 100%/1px 14px no-repeat}.loader-orbit .brand-mark{width:85px;height:85px;animation:mark-assemble 1.2s var(--ease) both}.loader-orbit .logo-accent{animation:accent-assemble 1.4s var(--ease) both}.loader-word{font-size:25px;letter-spacing:.27em;margin-left:.27em;animation:letter-arrive 1.2s var(--ease) both}.loader-tag{font:8px/1.5 var(--mono);color:#a9b59e;letter-spacing:.2em;margin-top:12px}.loader-progress{width:142px;height:1px;background:#3c4d31;margin-top:28px;position:relative;overflow:hidden}.loader-progress:before{content:"";position:absolute;inset:0;background:var(--lime);transform-origin:left;animation:progress 1.6s ease both}.reveal-ready{transition:opacity .65s var(--ease),transform .65s var(--ease)}.reveal-ready.is-before{opacity:0;transform:translateY(18px)}
/* Local dialogs and privacy choice */
dialog{border:1px solid #a7b696;background:var(--paper);color:var(--ink);padding:42px;width:min(680px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow-y:auto;box-shadow:0 30px 100px #0004}dialog::backdrop{background:#0e130ccc;backdrop-filter:blur(6px)}dialog h2{font-size:2rem;margin-bottom:24px;max-width:520px}dialog>p:not(.eyebrow){font-size:14px;color:var(--muted)}.dialog-close{position:absolute;top:12px;right:14px;width:35px;height:35px;display:grid;place-items:center;border:0;font-size:29px;font-weight:300}.preference-row{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding:23px 0}.preference-row h3,.preference-row label{font-size:15px;letter-spacing:0;display:block;line-height:1.3}.preference-row p{font-size:12px;color:var(--muted);margin-top:7px}.fixed-status{font:9px/1.5 var(--mono);min-width:84px;color:#5a6f47}.preference-row input{accent-color:#536d36;width:22px;height:22px;flex-shrink:0;cursor:pointer}.preferences-dialog .button-row{margin:22px 0}.preferences-dialog .button{font-size:12px;padding:13px 17px;min-height:47px}.draft-dialog{width:min(790px,calc(100% - 32px))}.draft-dialog textarea{width:100%;resize:vertical;padding:18px;margin:10px 0 22px;border:1px solid #a5b696;background:#fff;font:12px/1.7 var(--mono);min-height:240px}.draft-dialog .button{font-size:12px}.draft-dialog .text-button{font-size:12px}.draft-dialog #draft-status{margin-top:14px;min-height:21px}.privacy-notice{position:fixed;z-index:60;left:24px;bottom:24px;max-width:540px;padding:26px;background:var(--paper);border:1px solid #9aad86;box-shadow:0 15px 80px #1119}.privacy-notice strong{font-size:16px;font-weight:500;letter-spacing:-.02em}.privacy-notice p{font-size:12px;color:var(--muted);margin:10px 0 20px}.privacy-notice .button{font-size:11px;min-height:42px;padding:10px 14px;flex:1}.privacy-notice .button-row{gap:10px}
@keyframes flow-down{to{transform:translateY(60px)}}@keyframes flow-right{to{transform:translateX(160px)}}@keyframes signal{0%,100%{transform:scaleY(.45);opacity:.6}50%{transform:scaleY(1);opacity:1}}@keyframes intro-exit{to{opacity:0;visibility:hidden;transform:translateY(-12px)}}@keyframes orbit-intro{from{opacity:0;transform:scale(1.2) rotate(-15deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes mark-assemble{from{opacity:0;transform:scale(.8) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}@keyframes accent-assemble{0%,30%{opacity:0;transform:translate(14px,-20px)}100%{opacity:1;transform:translate(0,0)}}@keyframes letter-arrive{from{opacity:0;letter-spacing:.5em}to{opacity:1;letter-spacing:.27em}}@keyframes progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes transition-in{from{opacity:0}to{opacity:1}}@keyframes transition-out{from{opacity:1}to{opacity:0;visibility:hidden}}
/* Responsive composition */
@media(min-width:1550px){.hero-grid{min-height:665px;padding-top:90px;padding-bottom:80px}.hero-art{margin-right:-70px}.home-hero h1{font-size:88px}.inner-hero .hero-grid{min-height:620px}}
@media(max-width:1180px){.container{width:calc(100% - 64px)}.header-inner{gap:25px}.desktop-nav{gap:22px}.header-tools{gap:18px}.hero-grid{min-height:560px;gap:22px;padding-top:65px;padding-bottom:55px}.hero h1{font-size:clamp(3rem,5.9vw,4.5rem)}.hero .eyebrow{font-size:9px}.hero-intro{font-size:15px}.hero-art{margin-right:0}.hero-art figcaption{font-size:7px}.inner-hero h1{font-size:clamp(2.6rem,4.8vw,4rem)}.section{padding:85px 0}.section-heading{gap:50px}.split-heading{gap:65px}.expertise-row{grid-template-columns:35px 42px 1.1fr 1fr 24px;gap:16px}.expertise-services{font-size:11px}.goal-button{padding:18px 12px;font-size:12px}.service-detail-layout{gap:50px;grid-template-columns:1.6fr 1fr}.contact-layout{gap:45px;grid-template-columns:1fr 1.3fr}.contact-form-panel{padding:28px}.method-timeline article{grid-template-columns:70px 1.5fr 1fr;gap:30px}.approval-gate{margin-left:10px;padding:23px}.service-title-grid{gap:70px}.legal-layout{gap:65px}.footer-bottom{gap:40px}}
@media(max-width:920px){.desktop-nav{display:none}.js .menu-toggle{display:flex!important}.header-inner{height:80px}.header-tools{gap:22px}.mobile-nav{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--dark-line);padding:16px 32px;gap:20px;font-size:14px}.js .mobile-nav{display:none}.js .menu-open .mobile-nav{display:grid}.header-cta{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:15px;min-height:530px;padding-top:55px;padding-bottom:40px}.hero h1{font-size:clamp(2.8rem,5.9vw,4rem)}.hero-copy .button{font-size:12px;gap:14px;padding:13px 16px;min-height:50px}.hero-intro{font-size:14px}.hero .button-row{gap:10px}.hero-art figcaption{flex-direction:column;gap:5px;margin-top:15px}.hero-foot{font-size:9px;gap:20px;padding:20px 0}.section-heading{grid-template-columns:1.2fr 1fr;gap:40px}.section-intro{font-size:14px}.section-heading h2{font-size:2.5rem}.expertise-row{grid-template-columns:30px 40px 1fr 25px;gap:15px}.expertise-services{display:none}.expertise-row h3{font-size:1.7rem}.goal-button .arrow{display:none}.goal-button{display:flex;flex-direction:column;gap:8px;align-items:flex-start;min-height:110px}.service-grid{gap:45px 24px}.card-copy h3{font-size:1.65rem}.card-bottom{align-items:flex-start;flex-direction:column;gap:8px}.split-heading{grid-template-columns:1fr 1.2fr;gap:45px}.principles-grid{gap:30px}.principles-grid h3{font-size:1.45rem}.process-grid{grid-template-columns:repeat(2,1fr);gap:40px 30px}.process-grid li{padding-right:0}.process-grid p{min-height:0}.gate-label{margin-top:16px}.audience-grid{gap:40px}.audience-grid h3{font-size:1.6rem}.cta-bottom{gap:30px}.cta-bottom .button{font-size:12px;white-space:nowrap}.service-title-grid{grid-template-columns:1.4fr 1fr;gap:40px}.service-price{padding-left:25px}.service-title-grid h1{font-size:3.1rem}.service-detail-layout{grid-template-columns:1.4fr 1fr;gap:35px}.service-aside{padding:24px;top:110px}.scope-panel{padding:26px}.service-steps{gap:35px}.service-steps h3{font-size:1.35rem}.limits-panel{gap:40px}.method-timeline article{grid-template-columns:50px 1.5fr .9fr;gap:24px}.timeline-number{font-size:48px}.approval-gate{padding:18px;margin:0}.contact-layout{grid-template-columns:1fr;gap:55px}.contact-details{display:grid;grid-template-columns:1fr 1fr;column-gap:60px}.contact-details>.eyebrow{grid-column:1/-1}.contact-details h2{grid-column:1;grid-row:2}.contact-mail{grid-column:1;grid-row:3;font-size:1.3rem}.contact-phone{grid-column:1;grid-row:4;margin-top:15px}.contact-note{grid-column:1;grid-row:5}.contact-region{grid-column:2;grid-row:2/6;margin:0;padding-top:20px}.contact-form-panel{padding:40px}.legal-layout{grid-template-columns:210px 1fr;gap:45px}.footer-top{gap:45px}.footer-nav{gap:12px 30px}.footer-bottom{grid-template-columns:1fr 1.4fr 38px;gap:28px}}
@media(max-width:700px){html{scroll-padding-top:80px}.container{width:calc(100% - 40px)}.section{padding:65px 0}h2{font-size:2.25rem}.header-inner{height:75px;gap:15px}.brand{gap:9px}.brand .brand-mark{width:33px;height:33px}.brand>span{font-size:19px}.brand small{font-size:6px;margin-top:5px}.header-tools{gap:15px}.language-switch{gap:8px;font-size:10px}.menu-toggle{width:36px;height:36px;padding:9px}.mobile-nav{grid-template-columns:1fr 1fr;padding:22px 20px;gap:20px}.hero-grid{display:flex;flex-direction:column;align-items:stretch;gap:28px;padding-top:43px;padding-bottom:28px;min-height:0}.hero-copy{max-width:570px}.hero h1{font-size:clamp(2.85rem,10.7vw,4.5rem);margin-bottom:20px;letter-spacing:-.06em}.hero .eyebrow{font-size:8px;margin-bottom:26px;gap:10px}.hero-intro{font-size:15px;line-height:1.75;max-width:520px}.hero .button-row{margin-top:28px;gap:22px}.hero .button{padding:14px 18px;min-height:50px;font-size:12px}.hero .button.text-light{padding-inline:0}.hero-art{width:100%;max-width:580px;margin:0 auto}.hero-art figcaption{font-size:7px;flex-direction:row;gap:15px;margin-top:13px}.art-corner{width:15px;height:15px}.art-corner.br{bottom:30px}.hero-foot{gap:18px;align-items:flex-start;padding-bottom:22px;font-size:8px}.hero-foot>span{max-width:250px}.scroll-link{gap:12px;font-size:8px}.scroll-link span{font-size:22px}.inner-hero .hero-grid{min-height:0}.inner-hero h1{font-size:clamp(2.7rem,9.6vw,4rem)}.inner-hero .hero-art{max-width:500px}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:34px}.section-heading .eyebrow{font-size:9px;margin-bottom:20px}.section-heading h2{font-size:clamp(2rem,7.8vw,2.8rem)}.section-intro{max-width:530px;justify-self:start;font-size:14px}.expertise-row{grid-template-columns:25px 35px 1fr 22px;gap:12px;padding:24px 0}.expertise-row .category-icon{width:27px;height:29px}.expertise-row h3{font-size:clamp(1.2rem,4.8vw,1.6rem)}.expertise-number{font-size:9px}.expertise-row:hover{padding-inline:7px}.js .goal-select{grid-template-columns:1fr 1fr;border-bottom:0;margin-bottom:28px}.goal-button{min-height:95px;border-bottom:1px solid #bec6b6;padding:16px;font-size:12px;line-height:1.45}.goal-button:nth-child(even){border-right:0}.goal-button:last-child{grid-column:1/-1;display:grid;grid-template-columns:25px 1fr;align-items:center;min-height:60px;gap:10px}.goal-button:last-child span{grid-column:auto}.service-grid{grid-template-columns:1fr;gap:38px}.card-copy{padding-top:20px}.card-copy h3{font-size:1.65rem}.card-copy p{font-size:14px}.card-bottom{flex-direction:row;align-items:center;margin-top:20px;padding-top:16px}.card-time{font-size:9px}.price{font-size:21px}.price>span{font-size:10px}.card-image-index{font-size:9px;left:12px;top:12px}.image-arrow{right:12px;bottom:12px;width:38px;height:38px}.price-note{font-size:11px;line-height:1.8;margin-top:30px}.catalog-toolbar h2{font-size:1.7rem}.catalog-toolbar>.mono{font-size:10px}.filter-row{gap:6px;margin-bottom:32px}.filter-row button{padding:9px 11px;font-size:10px}.three-node-flow{grid-template-columns:1fr}.three-node-flow>div{padding:25px;border-right:0;border-bottom:1px solid #b8c0b0;display:grid;grid-template-columns:35px 1fr;align-items:center;gap:20px;min-height:110px}.three-node-flow h3{font-size:1.8rem;margin-top:0}.flow-dot{display:none}.three-node-flow>div:after{display:none}.architecture{margin-top:38px}.arch-top,.arch-bottom{width:80%;min-height:75px;padding:17px;gap:12px}.arch-top strong,.arch-bottom strong,.arch-node strong{font-size:12px}.arch-code{font-size:7px}.mini-window{width:37px;padding:4px;grid-template-columns:10px 10px;gap:3px}.mini-window i{height:10px}.arch-middle{grid-template-columns:1fr 15px 1.2fr 15px 1fr}.arch-node{min-height:135px;padding:14px 10px;gap:13px}.arch-node.core{padding:18px 10px;min-height:170px}.arch-node .category-icon{width:23px;height:25px}.arch-node.core .brand-mark{width:36px;height:36px}.arch-line.vertical{height:30px}.diagram-note{font-size:8px;margin-top:24px}.principles-grid{grid-template-columns:1fr;gap:28px}.principles-grid article{display:grid;grid-template-columns:35px 1fr;gap:12px 15px;padding-top:20px}.principles-grid h3{margin:0;font-size:1.5rem}.principles-grid article>p{grid-column:2;font-size:14px}.principles-grid article>.mono{padding-top:5px;font-size:10px}.process-grid{gap:35px 25px}.process-number{font-size:48px}.process-grid h3{font-size:1.45rem;margin-top:24px}.process-grid p{font-size:12px}.gate-label{font-size:8px}.split-heading{grid-template-columns:1fr;gap:28px}.split-heading h2{margin-bottom:0}.split-heading .eyebrow{font-size:9px;margin-bottom:20px}.audience-grid{grid-template-columns:1fr;gap:38px}.audience-grid h3{font-size:1.8rem;margin-top:27px}.audience-grid p{font-size:14px}.faq-list summary{font-size:15px;padding:22px 0}.answer{font-size:13px;padding-right:10px}.cta h2{font-size:clamp(2.1rem,8vw,3rem)}.cta-bottom{flex-direction:column;align-items:start;gap:25px;margin-top:32px;padding-top:25px}.cta-bottom>p{font-size:14px}.cta-watermark{right:-85px;top:-30px}.cta-watermark .brand-mark{width:300px;height:300px}.service-hero{padding-top:25px}.breadcrumbs{font-size:8px;gap:9px}.service-title-grid{grid-template-columns:1fr;gap:30px;padding:38px 0}.service-title-grid h1{font-size:clamp(2.7rem,10vw,3.8rem)}.service-title-grid .eyebrow{font-size:9px;margin-bottom:20px}.service-title-grid .hero-intro{margin-top:18px;font-size:15px}.service-price{border-left:0;border-top:1px solid #4b5443;padding:23px 0 0;max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:0 18px;align-items:center}.service-price>span{font-size:10px;grid-column:1;grid-row:1}.service-price strong{font-size:2.75rem;grid-column:1;grid-row:2;margin:7px 0 0}.service-price p{grid-column:2;grid-row:1/3;font-size:10px;margin:0}.service-price p b{font-size:14px}.service-price .button{grid-column:1/-1;margin-top:22px;width:auto;justify-self:start}.service-photo figcaption{left:10px;bottom:10px;font-size:7px;padding:5px 9px;max-width:calc(100% - 20px)}.service-detail-layout{grid-template-columns:1fr;gap:42px}.detail-main h2{font-size:2rem;margin-bottom:22px}.detail-main .eyebrow{font-size:9px}.lead-text{font-size:1.2rem}.scope-panel{margin:30px 0 40px;padding:25px}.scope-panel h2{font-size:1.7rem}.scope-panel p{font-size:14px}.deliverables li{gap:14px;padding:20px 0;grid-template-columns:20px 1fr 20px}.deliverables li>p{font-size:15px}.service-aside{position:static;padding:27px}.service-aside h3{margin-top:25px}.service-aside .button{max-width:300px}.service-steps{grid-template-columns:1fr;gap:27px}.service-steps li{display:grid;grid-template-columns:50px 1fr;gap:24px;align-items:start;padding-top:20px}.service-steps span{font-size:38px}.service-steps h3{margin:0;font-size:1.45rem}.limits-panel{grid-template-columns:1fr;gap:20px;margin-top:38px;padding-top:25px}.limits-panel h3{font-size:1.45rem}.related-grid{grid-template-columns:1fr;gap:34px}.all-expertise{min-height:280px;padding:30px}.all-expertise h3{font-size:2.6rem;margin:30px 0}.all-expertise .category-icon{width:35px;height:38px}.studio-statement h2{font-size:clamp(2.5rem,9.5vw,3.8rem);margin-top:27px}.studio-statement .eyebrow{font-size:8px}.statement-bottom{grid-template-columns:60px 1fr;gap:30px;margin-top:38px;padding-top:25px}.statement-mark .brand-mark{width:55px;height:55px}.statement-bottom p{font-size:14px}.identity-section h2{margin-bottom:24px}.identity-list>div{grid-template-columns:1fr 1.7fr;gap:20px;padding:20px 0}.identity-list dt{font-size:10px}.identity-list dd{font-size:13px}.region-section .lead-text{font-size:1.2rem}.method-timeline article{grid-template-columns:45px 1fr;gap:25px;padding:35px 0}.timeline-number{font-size:42px}.method-timeline .eyebrow{font-size:8px;margin-bottom:17px}.method-timeline h2{font-size:2.3rem}.method-timeline article p:not(.eyebrow){font-size:14px}.approval-gate{grid-column:2;margin:0;padding:18px;display:grid;grid-template-columns:8px 1fr;gap:7px 15px;max-width:420px}.approval-gate .status-dot{margin-top:5px}.approval-gate small{font-size:8px}.approval-gate strong{grid-column:2;max-width:none;font-size:14px}.contact-details{display:block}.contact-details h2{margin-bottom:28px}.contact-mail{font-size:clamp(1.1rem,4.8vw,1.5rem)}.contact-region{margin-top:15px;padding-top:24px}.contact-form-panel{padding:25px 20px}.contact-form-panel h2{font-size:1.85rem}.contact-form-panel .eyebrow{font-size:9px}.form-grid{grid-template-columns:1fr;gap:21px}.field label{font-size:12px}.field input,.field select,.field textarea{font-size:16px}.field.full{grid-column:1}.form-bottom .small{font-size:11px}.form-bottom .button{font-size:13px}.legal-hero{padding:50px 0 40px}.legal-hero h1{font-size:2.9rem}.legal-hero p:not(.eyebrow){font-size:15px}.legal-layout{grid-template-columns:1fr;gap:45px}.legal-sidebar{position:static}.legal-sidebar nav{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.legal-sidebar nav a{font-size:11px;gap:8px}.legal-sidebar p{display:none}.legal-copy h2{font-size:1.6rem}.legal-copy>section>p{font-size:14px;line-height:1.9}.legal-copy>section{margin-bottom:36px}.withdrawal-section{padding:25px 20px}.site-footer{padding:60px 0 25px}.footer-top{flex-direction:column;gap:40px}.footer-top h2{font-size:1.9rem}.footer-mail{font-size:clamp(.95rem,4.5vw,1.3rem);gap:12px;overflow-wrap:anywhere}.footer-phone{font-size:13px}.footer-nav{font-size:12px;gap:13px 35px;max-width:420px}.footer-nav span{font-size:10px}.footer-bottom{grid-template-columns:1fr 40px;gap:27px 20px;padding-top:25px}.footer-bottom>p{grid-column:1;grid-row:1;font-size:9px}.legal-links{grid-column:1/-1;grid-row:2;gap:12px 18px;font-size:9px}.back-top{grid-column:2;grid-row:1}.image-note{font-size:8px;margin-top:23px}.loader-meta,.loader-coordinates{left:22px;right:22px;font-size:7px;gap:20px}.loader-meta{top:25px}.loader-coordinates{bottom:25px}.loader-meta span:last-child{max-width:100px;text-align:right}.loader-coordinates span:last-child{max-width:150px;text-align:right}.loader-orbit{width:150px;height:150px}.loader-orbit .brand-mark{width:70px;height:70px}.loader-word{font-size:22px}.loader-grid{inset:14px;background-size:60px 60px}dialog{padding:32px 23px;max-height:calc(100dvh - 28px)}dialog h2{font-size:1.7rem}dialog .eyebrow{font-size:9px;margin-bottom:20px}.preference-row{gap:18px}.preference-row p{font-size:11px}.preference-row h3,.preference-row label{font-size:14px}.preferences-dialog .button-row{align-items:stretch;flex-direction:column}.privacy-notice{left:12px;right:12px;bottom:12px;max-width:none;padding:20px}.privacy-notice .button{font-size:10px;padding:10px;min-height:42px}.privacy-notice p{font-size:11px;line-height:1.7}.draft-dialog .button-row{gap:12px}.draft-dialog .button{font-size:11px;padding:13px 15px}.draft-dialog textarea{font-size:11px;min-height:210px}.draft-dialog .text-button{font-size:11px}}
@media(max-width:380px){.container{width:calc(100% - 30px)}.brand>span{font-size:17px}.brand .brand-mark{width:30px;height:30px}.header-tools{gap:11px}.language-switch{font-size:9px}.hero h1{font-size:2.75rem}.hero .button-row{gap:15px}.hero .button{font-size:11px;padding:13px 15px}.arch-node{padding:12px 8px}.arch-middle{grid-template-columns:1fr 10px 1.1fr 10px 1fr}.arch-node strong{font-size:11px}.card-bottom{gap:10px}.price{font-size:19px}.price>span{font-size:9px}.card-time{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.site-loader,.page-transition{display:none!important}.reveal-ready.is-before{opacity:1;transform:none}.arch-line:after{display:none}.signal-dots i{opacity:1;transform:none}}
html.reduce-motion{scroll-behavior:auto}.reduce-motion *,.reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important}.reduce-motion .site-loader,.reduce-motion .page-transition{display:none!important}.reduce-motion .reveal-ready.is-before{opacity:1;transform:none}.reduce-motion .arch-line:after{display:none}
@media print{.site-header,.site-footer,.site-loader,.page-transition,.button-row,.privacy-notice,.js-only,.service-aside .button{display:none!important}.hero,.service-hero,.system-section,.region-section,.all-expertise{background:#fff;color:#111}.container{width:100%}.section{padding:30px 0}.hero-grid{min-height:0!important;padding:20px 0}.hero-intro,.section-intro{color:#333}.hero-art{max-width:380px}.service-photo{max-width:450px}.service-detail-layout,.legal-layout{display:block}.service-aside{position:static;margin-top:30px}.legal-sidebar{display:none}.reveal-ready.is-before{opacity:1;transform:none}.cta{display:none}.service-card{break-inside:avoid}a{text-decoration:underline}body{font-size:11pt}.hero h1,.service-title-grid h1{font-size:30pt}.card-copy h3{font-size:17pt}}


/* Service photography is a full-width background, with content above it. */
.service-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  min-height: 640px;
  min-height: clamp(620px, calc(100svh - 90px), 780px);
  padding-top: 32px;
  background: #111813;
  color: #f7f8f1;
}
.service-hero > .service-photo {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  margin: 0;
}
.service-hero > .service-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(8, 15, 12, .91) 0%, rgba(8, 15, 12, .79) 34%, rgba(8, 15, 12, .27) 72%, rgba(8, 15, 12, .4) 100%),
              linear-gradient(0deg, rgba(8, 15, 12, .65), transparent 52%, rgba(8, 15, 12, .2));
}
.service-hero > .service-photo > img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  object-fit: cover;
  object-position: center 44%;
}
.service-hero > .service-photo > figcaption {
  z-index: 1;
  left: auto;
  right: 24px;
  bottom: 15px;
  padding: 4px 8px;
  max-width: calc(100% - 48px);
  color: #d5ddd2;
  background: rgba(10, 18, 13, .6);
  font-size: 8px;
}
.service-hero > .container {
  position: relative;
  z-index: 2;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.service-hero .breadcrumbs { color: #e2e8db; }
.service-hero .service-title-grid {
  flex: 1;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, .85fr);
  align-items: end;
  gap: clamp(36px, 6vw, 88px);
  padding: 110px 0 78px;
}
.service-hero .service-title-grid h1 {
  max-width: 760px;
  font-size: clamp(2.8rem, 5vw, 4.8rem);
  line-height: 1.04;
  text-wrap: balance;
  overflow-wrap: break-word;
  text-shadow: 0 2px 30px rgba(0, 0, 0, .18);
}
.service-hero .service-title-grid .hero-intro {
  color: #e5eadf;
  max-width: 570px;
  line-height: 1.75;
}
.service-hero .service-price {
  width: 100%;
  max-width: 390px;
  justify-self: end;
  padding: 30px;
  border: 1px solid rgba(223, 236, 211, .28);
  background: rgba(12, 22, 15, .8);
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
  box-shadow: 0 18px 50px rgba(0, 0, 0, .1);
}
.service-hero .service-price > span,
.service-hero .service-price p { color: #d4dfca; }
.service-hero .service-price p b { color: #f7f8f1; }
.service-hero :focus-visible { outline-color: var(--lime); }
.footer-bottom { margin-top: 48px; }

/* One continuous, opaque logo screen across document navigations. */
html.transition-pending { background: #111710; }
html.transition-pending body { visibility: hidden; }
.page-transition {
  display: flex;
  position: fixed;
  inset: 0 auto auto 0;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  z-index: 10000;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0;
  background: #111710;
  color: var(--paper);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  touch-action: none;
  animation: none;
  transform: none;
  transition: opacity .22s ease, visibility 0s linear .22s;
  will-change: opacity;
}
.show-transition .page-transition,
.transition-pending .page-transition {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity .22s ease, visibility 0s;
}
.transition-pending .page-transition { transition: none; }
.transition-revealing .page-transition {
  opacity: 0;
  visibility: visible;
  pointer-events: auto;
  transition: opacity .32s ease;
}
.transition-emblem {
  position: relative;
  width: 154px;
  height: 154px;
  display: grid;
  place-items: center;
  margin-bottom: 31px;
}
.transition-emblem .brand-mark {
  width: 84px;
  height: 84px;
  animation: none;
  transform: none;
}
.transition-ring {
  position: absolute;
  inset: 0;
  border: 1px solid rgba(204, 238, 155, .35);
}
.transition-ring.inner {
  inset: 14px;
  border-color: rgba(204, 238, 155, .15);
  transform: rotate(45deg);
}
.page-transition .transition-word { font-size: 25px; line-height: 1.2; letter-spacing: .23em; padding-left: .23em; }
.page-transition .transition-tag { font: 8px/1.5 var(--mono); letter-spacing: .2em; color: #b4c6a4; margin-top: 11px; }
.transition-progress { display: block; width: 76px; height: 1px; margin-top: 26px; background: #b0cc83; }
.page-transition *, .page-transition *::before, .page-transition *::after { animation: none; }
@media (max-width: 1000px) and (min-width: 701px) {
  .service-hero .service-title-grid { grid-template-columns: minmax(0, 1.3fr) minmax(250px, .85fr); gap: 32px; }
  .service-hero .service-price { padding: 25px; }
}
@media (max-width: 700px) {
  .service-hero { min-height: 680px; padding-top: 24px; }
  .service-hero > .service-photo > img { object-position: 64% center; }
  .service-hero > .service-photo::after {
    background: linear-gradient(90deg, rgba(8, 15, 12, .78), rgba(8, 15, 12, .36)),
                linear-gradient(0deg, rgba(8, 15, 12, .82), rgba(8, 15, 12, .24) 65%, rgba(8, 15, 12, .4));
  }
  .service-hero .service-title-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; padding: 65px 0 58px; align-items: start; }
  .service-hero .service-title-grid h1 { font-size: clamp(2.5rem, 9.5vw, 3.8rem); }
  .service-hero .service-title-grid .hero-intro { font-size: 15px; margin-top: 22px; }
  .service-hero .service-price { max-width: none; padding: 22px; justify-self: stretch; }
  .service-hero .service-price .button { width: 100%; justify-self: stretch; }
  .service-hero > .service-photo > figcaption { right: 16px; bottom: 12px; font-size: 7px; }
  .footer-bottom { margin-top: 32px; }
  .transition-emblem { width: 130px; height: 130px; margin-bottom: 26px; }
  .transition-emblem .brand-mark { width: 72px; height: 72px; }
  .page-transition .transition-word { font-size: 22px; }
}
@media print {
  .service-hero { min-height: 0; display: block; padding: 0; }
  .service-hero > .service-photo { display: none; }
  .service-hero > .container { display: block; }
  .service-hero .service-title-grid { padding: 24px 0; }
  .service-hero .service-price { background: transparent; box-shadow: none; color: #111; }
  .service-hero .breadcrumbs, .service-hero .service-title-grid .hero-intro,
  .service-hero .service-price > span, .service-hero .service-price p,
  .service-hero .service-price p b { color: #333; }
}
