@font-face{font-family:Mulish;src:url(/fonts/Mulish-400.woff2) format("woff2"),url(/fonts/Mulish-400.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Mulish;src:url(/fonts/Mulish-600.woff2) format("woff2"),url(/fonts/Mulish-600.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Mulish;src:url(/fonts/Mulish-700.woff2) format("woff2"),url(/fonts/Mulish-700.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Manrope;src:url(/fonts/Manrope.woff2) format("woff2"),url(/fonts/Manrope.ttf) format("truetype");font-weight:200 800;font-display:swap}:root{--navy:#000054;--ink:#222a4d;--muted:#626c8e;--bg:#f1f3f9;--line:#e4e7f1;--input:#d3d7e6;--ai:#7c3aed;font-family:Mulish,Arial,sans-serif;color:var(--ink);background:var(--bg);font-size:16px;line-height:1.55}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}a,button,select{touch-action:manipulation}a{color:inherit;text-decoration:none}.button,button{min-height:44px;padding:11px 17px;border:1px solid var(--input);border-radius:9px;background:white;font-size:14px;font-weight:700;display:inline-flex;gap:10px;align-items:center;justify-content:center;cursor:pointer}button:disabled{opacity:.55;cursor:not-allowed}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:3px solid #7c3aed;outline-offset:4px}.primary{background:var(--navy);color:white;border-color:var(--navy)}h1,h2,h3,p{margin:0}h1{font-size:40px;line-height:1.17;letter-spacing:-1.4px}h2{font-size:28px;line-height:1.25;letter-spacing:-.7px}h3{font-size:20px;line-height:1.35}p{margin:12px 0}small{color:var(--muted);font-size:13px}img,small{display:block}img{max-width:100%}.skip{position:absolute;top:-100px;z-index:100;background:white;padding:14px}.skip:focus{top:0}.platform-header{height:82px;padding:0 max(24px,5%);justify-content:space-between;gap:20px;background:white;border-bottom:1px solid var(--line)}.brand,.platform-header{display:flex;align-items:center}.brand{gap:10px;font-size:22px;font-weight:700;color:var(--navy);letter-spacing:-.8px}.brand img{width:30px;height:30px}.brand span{margin-left:18px;padding-left:20px;border-left:1px solid var(--line);color:#626c8e;font-size:13px;font-weight:400;letter-spacing:0}.actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.steps{max-width:840px;margin:30px auto 40px;display:flex;list-style:none;justify-content:space-between;gap:20px;padding:0 12px;font-size:13px;color:#7883a6}.steps li{display:flex;align-items:center;gap:10px}.steps b{width:32px;height:32px;border:1px solid var(--input);border-radius:50%;display:grid;place-items:center;font-weight:400}.steps .active{font-weight:700;color:var(--navy)}.steps .active b{background:var(--navy);color:white;border-color:var(--navy)}.creation{max-width:696px;margin:40px auto 70px}.eyebrow{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700;margin:0 0 10px}.intro{color:#59688e;line-height:1.7;margin:20px 0 26px;font-size:15px}.card{background:white;border:1px solid var(--line);border-radius:13px;padding:26px}.field{display:block;font-size:13px;font-weight:700;margin:22px 0}.field input,.field select,.field textarea{width:100%;display:block;min-height:46px;background:white;border:1px solid var(--input);border-radius:9px;padding:12px 13px;margin-top:7px;font-size:14px}.field textarea{min-height:100px;resize:vertical}.field small{font-weight:400;margin-top:5px}.field .optional{font-weight:400;color:#626c8e;margin-left:8px}.scope{border:0;padding:0;margin:24px 0}.scope legend{font-size:13px;font-weight:700;margin-bottom:10px}.scope-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.scope-options label{border:1px solid var(--input);border-radius:9px;padding:16px 12px;display:flex;gap:10px;align-items:center;cursor:pointer;font-size:14px}.scope-options label:has(input:checked){outline:2px solid var(--navy);outline-offset:-1px;background:#f0eff8}.scope-options input{accent-color:var(--navy)}.scope-options small{font-size:11px;margin-top:5px}.scope>small{margin-top:10px}.upload{border:1px dashed #bcc6e5;border-radius:9px;padding:24px;text-align:center;font-size:13px}.upload input{max-width:100%;margin:12px 0}.full-button{width:100%;margin-top:24px}.error{color:#b73528;font-size:14px;margin:12px 0}.hint,.setup-notice{padding:16px;background:#f7f8fc;border-radius:9px;font-size:14px;color:var(--muted)}.setup-notice{border:1px solid #d9c7ff;background:#f3edff}.login{max-width:430px;margin:80px auto}.login h1{font-size:44px}.login form{margin-top:30px}.platform-footer{text-align:center;padding:30px;color:var(--muted);font-size:12px}.workspace{max-width:1264px;margin:48px auto;padding:0 24px}.page-head{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px}.page-head h1{font-size:32px}.page-head p{color:var(--muted);font-size:14px}.reveal-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:28px 0 24px}.reveal-card{display:flex;align-items:center;gap:16px;background:white;border:2px solid #dbccff;border-radius:14px;padding:20px 24px;color:var(--navy)}.reveal-card .icon{width:46px;height:46px;display:grid;place-items:center;background:#f0e7ff;color:var(--ai);border-radius:12px;font-size:24px}.reveal-card strong{font-size:18px}.reveal-card small{margin-top:2px}.reveal-card .arrow{margin-left:auto;font-size:30px;color:var(--ai)}.preview-frame{padding:16px;background:#e2e6ee;border-radius:13px}.preview-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}.preview-frame iframe{border:0;width:100%;min-height:850px;background:white;display:block;margin:auto;border-radius:5px}.preview-frame.mobile iframe{max-width:390px}.reveal-heading{text-align:center;max-width:780px;margin:50px auto 30px}.reveal-heading h1{font-size:46px}.compare{margin:0;background:white;border:1px solid var(--line);padding:16px;border-radius:14px}.compare-stage{position:relative;height:480px;overflow:hidden;background:#f8f8f8;border-radius:8px}.compare-stage img{position:absolute;width:100%;height:100%;inset:0}.site-compare .compare-stage iframe{position:absolute;top:0;left:0;border:0;transform-origin:0 0;pointer-events:none;background:white}.site-compare figcaption{margin-top:8px;font-size:13px;color:var(--muted,#555)}.compare-label{position:absolute;top:16px;background:white;border-radius:5px;padding:5px 10px;font-size:12px}.compare-label.original{left:16px}.compare-label.result{right:16px}.compare-divider{position:absolute;top:0;bottom:0;border-left:2px solid white;display:flex;align-items:center;color:var(--navy);font-size:25px}.compare>label{display:flex;justify-content:space-between;font-size:13px;margin:16px 0 8px}.compare input{width:100%;accent-color:var(--navy);min-height:36px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0}.photo-grid img{width:100%;height:120px;object-fit:cover}.photo-grid button{display:block;text-align:left;padding:8px;white-space:normal}.photo-grid button[aria-pressed=true]{outline:2px solid var(--ai)}.next-reveal{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:38px;margin:24px 0;background:white;border:1px solid var(--line);border-radius:14px}.wordmark{font-size:clamp(28px,7vw,80px);font-weight:700;text-align:center;padding:65px 20px;letter-spacing:-2px}.progress-list{padding:0;list-style:none}.progress-list li{padding:16px 0;border-bottom:1px solid var(--line)}.progress-list .current{color:var(--ai);font-weight:700}.badge{font-size:12px;border-radius:20px;padding:6px 10px;background:#f0e7ff;color:#6831b3}.status-banner{padding:20px;border:1px solid #d4c1ff;background:#f5efff;border-radius:12px;margin:20px 0}dialog{max-width:500px;width:calc(100% - 32px);border:1px solid var(--line);border-radius:16px;padding:30px;color:var(--ink)}dialog::backdrop{background:#13173577}dialog .actions{margin-top:24px}.demo-note{padding:14px 18px;background:#f2f0ff;color:#4c4278;border-radius:8px;font-size:13px}.visitor-form{max-width:840px;margin:30px auto}.fields{gap:0 24px}.checks,.fields{display:grid;grid-template-columns:1fr 1fr}.checks{gap:12px;font-size:14px}.checks label,.consent{display:flex;gap:10px;align-items:baseline}.visitor-form fieldset{border:1px solid #0002;border-radius:9px;padding:20px;margin:24px 0}.visitor-form legend{padding:0 8px;font-size:14px;font-weight:700}.visitor-form details{padding:20px 0;border-bottom:1px solid #0002;margin-bottom:30px}.visitor-form summary{cursor:pointer;font-size:14px}.visitor-form>small{margin-top:14px}.confirmation{padding:40px;border:1px solid #0001}.confirmation,.payment{background:white;border-radius:12px}.payment{max-width:650px;padding:26px}.payment>div{display:flex;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid #0001}.payment>div:last-child{font-size:24px;font-weight:700}.consent{margin:24px 0}.chat-floating{position:fixed;right:20px;bottom:20px;z-index:10;max-width:350px}.chat-panel{padding:20px;background:white;color:#222a4d;box-shadow:0 6px 36px #0002;border-radius:12px;margin-top:10px;max-height:70vh;overflow:auto}.chat-panel p{font-size:13px}.chat-panel [role=log] p{background:#f1f3f9;padding:10px;border-radius:8px}.chat-inline{max-width:700px}@media (max-width:760px){h1{font-size:32px}.platform-header{height:72px;padding:0 18px}.brand{font-size:19px}.brand span{display:none}.platform-header .actions{gap:6px}.platform-header .button,.platform-header button{font-size:12px;padding:10px}.steps{gap:8px;margin:24px 12px;font-size:10px}.steps li{flex-direction:column;gap:6px;text-align:center;flex:1 1}.steps b{width:27px;height:27px}.creation{margin:30px 20px 50px}.scope-options{grid-template-columns:1fr}.card{padding:20px}.login{margin:50px 24px}.workspace{margin:30px auto;padding:0 18px}.page-head{display:block}.page-head .actions{margin-top:20px}.page-head h1{font-size:28px}.reveal-cards{grid-template-columns:1fr;gap:12px}.reveal-card{padding:16px}.preview-frame{padding:8px}.preview-toolbar{flex-wrap:wrap}.preview-toolbar button{font-size:12px}.preview-frame iframe{min-height:800px}.reveal-heading{margin:30px 0}.reveal-heading h1{font-size:34px}.compare-stage{height:310px}.compare-label{font-size:10px}.photo-grid{grid-template-columns:1fr 1fr}.next-reveal{display:block;padding:25px}.next-reveal .button{margin-top:20px}.checks,.fields{grid-template-columns:1fr}.visitor-form fieldset{padding:16px}.chat-floating{right:12px;bottom:12px;max-width:calc(100vw - 24px)}.payment{padding:18px}.confirmation{padding:24px}.preview-frame.mobile iframe{width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation:none!important;transition:none!important}}.cost-table{width:100%;border-collapse:collapse;background:white;margin:24px 0;text-align:left}.cost-table th{padding:16px;background:#e9edf7;color:#000054}.cost-table td{padding:16px;border-bottom:1px solid #e5e9f1;vertical-align:top}.cost-table td:last-child{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.cost-table summary{color:#586482;font-size:13px;margin-top:8px;cursor:pointer}.cost-table details p{font-size:12px;margin:6px 0}.cost-reference{overflow-wrap:anywhere;max-width:480px}.image-progress{display:flex;flex-direction:column;gap:8px;margin-top:12px;font-size:14px;font-weight:400;color:#59658b}.image-progress progress{width:100%;height:7px;accent-color:#7c3aed}.generation-loader{display:flex;align-items:center;gap:20px;padding:24px;margin-block:24px;background:#f5f1ff;border:1px solid #e2d8ff;border-radius:14px}.generation-loader strong{display:block;font-size:18px}.generation-loader p{margin:8px 0 0;color:var(--muted)}.generation-spinner{display:inline-block;flex:0 0 32px;width:32px;height:32px;border:3px solid #dfd5f7;border-top:3px solid var(--ai);border-radius:50%;animation:generation-spin 1s linear infinite}.progress-list .phase-state{display:block;margin-top:4px;font-size:12px;color:var(--muted);font-weight:400}@keyframes generation-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.generation-spinner{animation:none}}.creation-fields{border:0;padding:0;margin:0;min-width:0}.cost-duration{white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.cost-duration small{display:block;color:var(--muted);font-size:12px;margin-top:4px}.generation-total-duration{display:block;margin-top:16px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.generation-total-duration small{display:block;margin-top:6px;color:var(--muted)}.reveal-navigation{position:sticky;top:12px;z-index:25;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 14px;margin-bottom:24px;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 4px 16px #1113450a}.generation-tools,.reveal-navigation>span{font-size:13px;color:var(--muted)}.generation-tools{margin-top:24px}.generation-tools summary{cursor:pointer;padding-block:12px;width:fit-content}.generation-tools>div{display:flex;flex-wrap:wrap;gap:12px 24px;padding-block:10px}.generation-tools a{text-decoration:underline;text-underline-offset:3px;padding-block:6px}.preview-frame:fullscreen{display:flex;flex-direction:column;gap:12px;width:100%;height:100%;padding:16px;border-radius:0;overflow:auto}.preview-frame:fullscreen .preview-toolbar{flex-shrink:0;flex-wrap:wrap}.preview-frame:fullscreen iframe{flex:1 1;min-height:0;height:auto;max-width:100%}@media (max-width:600px){.reveal-navigation>span{display:none}.reveal-navigation .button{width:100%}.preview-toolbar,.preview-toolbar .actions{flex-wrap:wrap}}.public-link{margin-top:24px}.public-link input{width:100%;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.site-comparison{margin:24px 0}.site-v2{font-size:16px;color:#27313b;background:var(--site-bg);line-height:1.65;overflow-wrap:anywhere}.site-v2 *,.site-v2 :after,.site-v2 :before{box-sizing:border-box;min-width:0}.site-v2 figure,.site-v2 h1,.site-v2 h2,.site-v2 h3,.site-v2 p{margin:0}.site-v2 img{display:block;max-width:100%}.site-v2 h1{font-size:clamp(30px,5.2cqi,72px);line-height:1.08;letter-spacing:-.045em;text-wrap:balance}.site-v2 h2{font-size:clamp(25px,3.5cqi,44px);line-height:1.16;letter-spacing:-.035em;text-wrap:balance}.site-v2 h3{font-size:clamp(19px,2cqi,25px);line-height:1.3;letter-spacing:-.02em}.site-v2 p{max-width:70ch}.site-v2 :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid var(--site-accent);outline-offset:4px}.site-v2 .site-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 22px;min-height:48px;margin-top:24px;background:var(--site-primary);color:white;font-size:14px;border:0;border-radius:5px;text-decoration:none}.site-v2 .site-button span[aria-hidden]{font-size:21px}.library-page-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-items:stretch}.library-page-grid:has(>.size-small,>.size-medium){padding:24px;gap:24px}.library-cell{container:block/inline-size;grid-column:span 12;scroll-margin-top:24px}.library-cell.size-small{grid-column:span 4;--block-space:24px}.library-cell.size-medium{grid-column:span 8;--block-space:40px}.library-cell.size-large{--block-space:clamp(28px,5vw,72px)}.lib-block{padding:var(--block-space);height:100%;background:var(--site-bg)}.lib-heading{margin-bottom:30px}.lib-heading p{margin-top:18px;font-size:clamp(15px,1.5cqi,18px)}.lib-eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;margin-bottom:22px!important}.lib-empty{padding:28px;background:#ffffff99;border:1px dashed #17264240;border-radius:10px}.lib-block-contact-cta,.lib-block-hero,.lib-block-text-media{padding:0}.lib-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:440px;height:100%;align-items:stretch;position:relative;isolation:isolate}.lib-hero-copy{padding:var(--block-space);align-self:center}.lib-hero .lib-heading{margin:0}.lib-hero-image{width:100%;height:100%;object-fit:cover;min-height:320px}.lib-hero.lib-v-image-left .lib-hero-image{grid-column:1;grid-row:1}.lib-hero.lib-v-image-left .lib-hero-copy{grid-column:2;grid-row:1}.lib-hero.lib-v-background{display:block;background:var(--site-primary);color:white;min-height:580px}.lib-hero.lib-v-background .lib-hero-image{position:absolute;inset:0;z-index:-2}.lib-hero.lib-v-background:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#081a24ed,#081a2455)}.lib-hero.lib-v-background .lib-hero-copy{max-width:850px;min-height:580px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.lib-hero.lib-v-background .site-button{background:white;color:var(--site-primary)}.lib-hero.lib-v-centered-image{display:flex;flex-direction:column;text-align:center}.lib-hero.lib-v-centered-image .lib-hero-copy{max-width:980px}.lib-hero.lib-v-centered-image p{margin-inline:auto}.lib-hero.lib-v-centered-image .lib-hero-image{height:auto;aspect-ratio:21/8;min-height:0}.lib-hero.lib-v-editorial{grid-template-columns:1.4fr 1fr;align-items:center;gap:24px;padding:var(--block-space)}.lib-hero.lib-v-editorial .lib-hero-copy{padding:0}.lib-hero.lib-v-editorial .lib-hero-image{height:auto;aspect-ratio:4/5;border-radius:160px 160px 12px 12px}.lib-hero.lib-v-text-only{display:block;text-align:center;min-height:360px;border-block:1px solid #17264215}.lib-hero.lib-v-text-only .lib-hero-copy{max-width:1050px;margin:auto;padding-block:calc(var(--block-space) * 1.3)}.lib-hero.lib-v-text-only p{margin-inline:auto}.lib-hero.no-image:not(.lib-v-background){display:block}.lib-text-media{display:grid;grid-template-columns:1fr 1fr;gap:var(--block-space);padding:var(--block-space);align-items:center;background:white;height:100%}.lib-text-media>img{width:100%;object-fit:cover;aspect-ratio:5/4}.lib-text-media.lib-v-image-left>img{grid-column:1;grid-row:1}.lib-text-media.lib-v-image-left .lib-text-copy{grid-column:2;grid-row:1}.lib-text-media.lib-v-full-width{display:flex;flex-direction:column;align-items:stretch}.lib-text-media.lib-v-full-width>img{aspect-ratio:21/8}.lib-text-media.lib-v-two-column{display:block}.lib-text-media.lib-v-two-column .lib-heading{display:grid;grid-template-columns:1fr 1fr;gap:var(--block-space);align-items:start}.lib-text-media.lib-v-two-column .lib-heading p{margin:0}.lib-text-media.no-image{display:block}.lib-products,.lib-projects,.lib-team-members,.lib-testimonials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.lib-products article{background:white;border:1px solid #17264215;border-radius:8px}.lib-products article>img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px 8px 0 0}.lib-item-copy{padding:26px}.lib-item-copy p{margin-top:12px}.lib-item-copy ul{margin:16px 0;padding-left:20px}.lib-item-copy small{display:block;margin-top:14px;line-height:1.5}.lib-products.lib-v-tiles article{display:grid;background:var(--site-primary);color:white}.lib-products.lib-v-tiles article>img{grid-area:1/1;height:100%;min-height:360px;aspect-ratio:auto}.lib-products.lib-v-tiles .lib-item-copy{grid-area:1/1;align-self:end;background:linear-gradient(0deg,#081a24f5,#081a24cc);position:relative}.lib-products.lib-v-alternating,.lib-products.lib-v-split{grid-template-columns:1fr}.lib-products.lib-v-alternating article,.lib-products.lib-v-split article{display:grid;grid-template-columns:1fr 1fr;align-items:center}.lib-products.lib-v-alternating article>img,.lib-products.lib-v-split article>img{height:100%;aspect-ratio:5/3}.lib-products.lib-v-alternating article:nth-child(2n)>img{grid-column:2;grid-row:1}.lib-products.lib-v-alternating article:nth-child(2n) .lib-item-copy{grid-column:1;grid-row:1}.lib-products.lib-v-featured{grid-template-columns:2fr 1fr}.lib-products.lib-v-featured article:first-child{grid-row:span 2}.lib-products.lib-v-featured article:first-child>img{aspect-ratio:1}.lib-products.lib-v-wide{grid-template-columns:1fr}.lib-products.lib-v-wide article>img{aspect-ratio:21/8}.lib-products.lib-v-wide .lib-item-copy{display:grid;grid-template-columns:1fr 1fr;gap:14px 32px}.lib-products.lib-v-wide .lib-item-copy p{margin:0}.lib-products.lib-v-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-products.lib-v-gallery article{display:flex;flex-direction:column;border:0;background:transparent}.lib-products.lib-v-gallery article>img{aspect-ratio:1;border-radius:10px}.lib-products.lib-v-gallery .lib-item-copy{border-left:3px solid var(--site-accent);margin-top:18px;padding:0 24px}.lib-products article.no-image{display:block}.lib-projects figure{background:white;border:1px solid #17264215}.lib-projects figure>img{width:100%;aspect-ratio:4/3;object-fit:cover}.lib-projects figcaption{display:flex;align-items:flex-start}.lib-project-index{display:none}.lib-projects.lib-v-mosaic{grid-template-columns:repeat(4,minmax(0,1fr))}.lib-projects.lib-v-mosaic figure:first-child{grid-column:span 2;grid-row:span 2}.lib-projects.lib-v-mosaic figure:first-child>img{aspect-ratio:4/5}.lib-projects.lib-v-mosaic figure:not(:first-child) .lib-item-copy{padding:18px}.lib-projects.lib-v-featured{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-projects.lib-v-featured figure:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.6fr 1fr;align-items:center}.lib-projects.lib-v-featured figure:first-child>img{height:100%}.lib-projects.lib-v-list{grid-template-columns:1fr}.lib-projects.lib-v-list figure{display:grid;grid-template-columns:minmax(150px,1fr) 2fr;align-items:center;background:transparent;border:0;border-bottom:1px solid #17264230;padding-bottom:24px}.lib-projects.lib-v-list .lib-project-index{display:block;padding:28px 0 0 28px;font-size:12px;font-weight:800}.lib-team-members article{background:white}.lib-team-members article>img{width:100%;aspect-ratio:4/5;object-fit:cover}.lib-team.lib-v-portraits article>img{border-radius:48% 48% 4px 4px}.lib-team.lib-v-portraits .lib-item-copy{text-align:center}.lib-team.lib-v-collective{display:grid;grid-template-columns:1.3fr 1fr;gap:32px;align-items:start}.lib-team-collective{width:100%;object-fit:cover;aspect-ratio:4/3}.lib-team.lib-v-collective .lib-team-members{grid-template-columns:1fr;gap:0}.lib-team.lib-v-collective article{border-bottom:1px solid #17264220}.lib-team.lib-v-collective:not(:has(>.lib-team-collective)){grid-template-columns:1fr}.lib-team.lib-v-story .lib-team-members{grid-template-columns:1fr;gap:36px}.lib-team.lib-v-story article{display:grid;grid-template-columns:1fr 2fr;gap:24px;align-items:center;background:transparent}.lib-team.lib-v-story article:nth-child(2n)>img{grid-column:2;grid-row:1}.lib-team.lib-v-story article:nth-child(2n) .lib-item-copy{grid-column:1;grid-row:1}.lib-testimonials figure{padding:30px;background:white;border-radius:10px;border-top:3px solid var(--site-accent)}.lib-testimonials blockquote{margin:0 0 24px}.lib-testimonials blockquote p:before{content:"« "}.lib-testimonials blockquote p:after{content:" »"}.lib-testimonials figcaption{display:flex;gap:12px;align-items:center;font-size:13px;font-weight:700}.lib-testimonials figcaption img{width:40px;height:40px;object-fit:cover;border-radius:50%}.lib-testimonials.lib-v-quote{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-testimonials.lib-v-quote figure:first-child{grid-column:1/-1;padding:clamp(28px,5cqi,64px);background:var(--site-primary);color:white}.lib-testimonials.lib-v-quote figure:first-child blockquote{font-size:clamp(23px,3cqi,38px);line-height:1.45}.lib-testimonials.lib-v-list{grid-template-columns:1fr;gap:0}.lib-testimonials.lib-v-list figure{display:grid;grid-template-columns:2fr 1fr;gap:28px;border:0;border-bottom:1px solid #17264230;border-radius:0;background:transparent}.lib-faq details{padding:22px 0;border-bottom:1px solid #17264230}.lib-faq summary{font-weight:750;cursor:pointer;min-height:32px}.lib-faq details p{margin-top:16px}.lib-faq article{display:flex;gap:30px;padding:28px 0;border-bottom:1px solid #17264230}.lib-faq article p{margin-top:12px}.lib-question-index{font-size:14px;font-weight:800;padding-top:5px}.lib-faq.lib-v-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.lib-faq.lib-v-columns article{display:block;background:white;padding:28px;border:1px solid #17264215;border-radius:10px}.lib-faq.lib-v-columns .lib-question-index{display:block;margin-bottom:18px}.lib-contact{padding:var(--block-space);display:grid;grid-template-columns:2fr 1fr;gap:32px;align-items:center;background:var(--site-primary);color:white;height:100%}.lib-contact .lib-heading{margin:0}.lib-contact .site-button{background:white;color:var(--site-primary)}.lib-contact.lib-v-centered{display:flex;flex-direction:column;text-align:center;gap:8px}.lib-contact.lib-v-centered .lib-heading{max-width:750px}.lib-contact.lib-v-centered p{margin-inline:auto}.lib-contact.lib-v-split{grid-template-columns:1fr 1fr;padding:0;gap:0}.lib-contact.lib-v-split>img{grid-column:1;grid-row:1/3;width:100%;height:100%;object-fit:cover;min-height:320px}.lib-contact.lib-v-split .lib-heading{padding:var(--block-space) var(--block-space) 0}.lib-contact.lib-v-split .lib-contact-action{padding:0 var(--block-space) var(--block-space)}.lib-service.lib-v-integrated{max-width:900px;margin:auto}.lib-service.lib-v-summary{display:grid;grid-template-columns:1fr 1.5fr;gap:40px;align-items:start}.lib-service.lib-v-summary .lib-service-intro{background:var(--site-primary);color:white;padding:28px;border-radius:12px}.lib-service-intro>img{width:100%;aspect-ratio:16/9;object-fit:cover;margin:20px 0;border-radius:6px}.lib-service-steps{padding-left:24px;font-size:14px;line-height:2}.lib-service-note{font-size:12px;margin-top:20px!important}.lib-service .visitor-form{margin:24px 0 0;max-width:none}.lib-service .demo-note{margin-bottom:22px}.lib-service-form .payment{max-width:none}.lib-service.lib-v-disclosure{max-width:850px;margin:auto;border:1px solid #17264220;background:white;border-radius:16px;padding:clamp(20px,4cqi,48px)}.lib-service-disclosure>summary{display:flex;justify-content:space-between;align-items:center;gap:20px;cursor:pointer;padding:20px;border-radius:8px;background:var(--site-primary);color:white;font-weight:700;min-height:56px;list-style:none}.lib-service-disclosure>summary::-webkit-details-marker{display:none}.lib-service-disclosure[open]>summary span{transform:rotate(45deg)}.lib-service-disclosure .lib-service-form{margin-top:28px}.lib-chat.lib-v-inline{max-width:750px;margin:auto}.lib-chat.lib-v-floating{padding-bottom:20px}.lib-chat.lib-v-split{display:grid;grid-template-columns:1fr 1.2fr;gap:40px}.lib-chat.lib-v-split>div:first-child{padding:30px;border-left:5px solid var(--site-accent)}.lib-chat .chat-inline{max-width:none}.lib-chat .chat-panel{margin-bottom:8px}.lib-chat-explanation{margin-top:30px!important}.site-v2 .chat-floating{width:min(360px,calc(100vw - 24px))}.site-v2 .chat-floating>.chat-panel{max-height:65dvh}.site-v2 .chat-panel form{margin-top:20px}.site-v2 .chat-panel button{min-height:44px}.site-v2 .checks,.site-v2 .fields{min-width:0}.site-v2 .visitor-form input[type=file]{max-width:100%}.site-v2 .visitor-form :is(input,select,textarea){width:100%}.site-v2 .visitor-form input[type=checkbox]{width:auto}.site-v2 .consent input{flex:none}.site-v2 .demo-note{font-size:13px;padding:14px 18px}.site-v2 .payment div{flex-wrap:wrap}.site-v2 .payment dd{margin:0}.lib-header .mobile-nav{display:none}.lib-footer,.lib-header{--chrome-space:30px}.chrome-small{--chrome-space:18px}.chrome-large{--chrome-space:48px}.lib-header{background:white;position:relative;z-index:2}.lib-header-main{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:var(--chrome-space) 5%}.lib-brand{font-size:25px;font-weight:800;letter-spacing:-.04em;line-height:1.2;text-decoration:none}.lib-brand img{width:130px;height:auto;max-height:65px;object-fit:contain}.lib-desktop-nav{display:flex;gap:clamp(12px,2vw,28px);align-items:center;justify-content:flex-end;flex-wrap:wrap;font-size:13px;font-weight:700}.lib-desktop-nav a{text-decoration:none}.lib-desktop-nav a[aria-current=page]{text-decoration:underline;text-underline-offset:7px}.lib-header-centered .lib-header-main{flex-direction:column;gap:20px}.lib-contact-band{background:var(--site-primary);color:white;padding:12px 5%;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px}.lib-contact-band .lib-contact-details{display:flex;flex-wrap:wrap;gap:16px}.lib-contact-band .lib-contact-details p{margin:0}.lib-header-compact .lib-header-main{padding-block:calc(var(--chrome-space) * .7)}.lib-header-compact .lib-desktop-nav{margin-left:auto}.lib-header-action{padding:12px 18px;border-radius:4px;background:var(--site-primary);color:white;font-size:13px;font-weight:700}.lib-contact-details{font-style:normal;display:grid;gap:8px;font-size:14px}.lib-contact-details a{width:fit-content}.lib-footer{background:var(--site-primary);color:white;padding:calc(var(--chrome-space) * 1.4) 5%}.lib-footer strong{font-size:28px;letter-spacing:-.04em}.lib-footer h2{font-size:15px;margin-bottom:20px}.lib-footer nav{display:flex;flex-wrap:wrap;gap:14px 26px;font-size:14px}.lib-footer small{display:block;font-size:12px;opacity:.8}.lib-footer-compact{display:flex;align-items:center;flex-wrap:wrap;gap:24px;justify-content:space-between}.lib-footer-compact small{width:100%}.lib-footer-columns{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:36px}.lib-footer-columns nav{display:grid;gap:12px}.lib-footer-columns p,.lib-footer-columns small{margin-top:16px}.lib-footer-contact .lib-footer-lead{display:grid;grid-template-columns:1.4fr 1fr;gap:36px;padding-bottom:40px}.lib-footer-contact strong{font-size:clamp(30px,5vw,60px);line-height:1.15}.lib-footer-bottom{border-top:1px solid #fff4;padding-top:28px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px}@container block (max-width:800px){.lib-products,.lib-projects,.lib-projects.lib-v-mosaic,.lib-team-members,.lib-testimonials{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-projects.lib-v-mosaic figure:first-child{grid-row:auto}.lib-service.lib-v-summary{grid-template-columns:1fr;gap:28px}.lib-service.lib-v-summary .lib-service-steps{display:flex;flex-wrap:wrap;gap:12px 36px}.lib-service.lib-v-summary .lib-service-intro>img{max-width:300px}.lib-hero.lib-v-background,.lib-hero.lib-v-background .lib-hero-copy{min-height:460px}.lib-contact.lib-v-banner{grid-template-columns:1fr;gap:0}.lib-team.lib-v-collective{grid-template-columns:1fr}}@container block (max-width:560px){.site-v2 h1{font-size:34px}.lib-hero,.lib-hero.lib-v-editorial{display:flex;flex-direction:column;min-height:0;gap:0}.lib-hero.lib-v-editorial{gap:24px}.lib-hero-image{min-height:0;height:auto;aspect-ratio:4/3}.lib-hero.lib-v-background .lib-hero-image{height:100%}.lib-hero.lib-v-background,.lib-hero.lib-v-background .lib-hero-copy{min-height:400px}.lib-hero.lib-v-centered-image .lib-hero-image{aspect-ratio:4/3}.lib-hero.lib-v-text-only{min-height:0}.lib-text-media,.lib-text-media.lib-v-two-column .lib-heading{display:flex;flex-direction:column;align-items:stretch;gap:24px}.lib-text-media.lib-v-image-left>img{order:-1}.lib-text-media.lib-v-two-column .lib-heading p{margin-top:8px}.lib-faq.lib-v-columns,.lib-products,.lib-products.lib-v-featured,.lib-products.lib-v-gallery,.lib-projects,.lib-projects.lib-v-featured,.lib-projects.lib-v-mosaic,.lib-team-members,.lib-testimonials,.lib-testimonials.lib-v-quote{grid-template-columns:1fr}.lib-products.lib-v-featured article:first-child,.lib-projects.lib-v-featured figure:first-child,.lib-projects.lib-v-mosaic figure:first-child{grid-column:auto;grid-row:auto}.lib-products.lib-v-alternating article,.lib-products.lib-v-split article,.lib-products.lib-v-wide .lib-item-copy,.lib-projects.lib-v-featured figure:first-child,.lib-projects.lib-v-list figure,.lib-team.lib-v-story article,.lib-testimonials.lib-v-list figure{display:block}.lib-products.lib-v-wide .lib-item-copy p{margin-top:12px}.lib-products.lib-v-wide article>img,.lib-text-media.lib-v-full-width>img{aspect-ratio:4/3}.lib-contact.lib-v-split{display:block}.lib-contact.lib-v-split>img{min-height:0;aspect-ratio:4/3;height:auto}.lib-contact.lib-v-split .lib-heading{padding-top:var(--block-space)}.lib-chat.lib-v-split{gap:24px}.lib-chat.lib-v-split,.site-v2 .checks,.site-v2 .fields{grid-template-columns:1fr}.site-v2 .actions{flex-wrap:wrap}.lib-service .visitor-form fieldset{padding:14px}}@container chrome (max-width:800px){.lib-desktop-nav,.lib-header-action{display:none}.lib-header .mobile-nav{display:block}.lib-header-centered .lib-header-main{flex-direction:row}.lib-header .mobile-nav nav{position:absolute;top:100%;inset-inline:0;background:white;padding:24px;display:grid;gap:16px;box-shadow:0 8px 16px #0002}.lib-header .mobile-nav summary{padding:12px;cursor:pointer;font-weight:700}.lib-contact-band{flex-wrap:wrap;gap:8px}.lib-contact-band .lib-contact-details{flex-basis:100%}.lib-footer-columns,.lib-footer-contact .lib-footer-lead{grid-template-columns:1fr;gap:24px}}@media (max-width:760px){.library-cell.size-medium,.library-cell.size-small{grid-column:span 12}.library-page-grid:has(>.size-small,>.size-medium){padding:12px;gap:16px}.library-cell.size-large{--block-space:28px}}@keyframes library-arrive{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.motion-pending{opacity:0;transform:translateY(18px)}.motion-visible{animation:library-arrive .65s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--motion-delay,0s)}.lib-products>article,.lib-testimonials>figure{transition:box-shadow .25s ease,translate .25s ease}.lib-products>article:hover,.lib-testimonials>figure:hover{translate:0 -4px;box-shadow:0 16px 36px #14253412}.lib-projects figure>img{transition:filter .35s ease}.lib-projects figure:hover>img{filter:saturate(1.12) contrast(1.03)}.site-v2 .site-button span[aria-hidden]{transition:transform .2s ease}.site-v2 .site-button:hover span[aria-hidden]{transform:translateX(2px)}.lib-desktop-nav a{text-decoration-thickness:2px;transition:opacity .2s ease}.lib-desktop-nav a:hover{text-decoration:underline;text-underline-offset:7px}}@media (prefers-reduced-motion:reduce){.motion-pending,.motion-visible{opacity:1!important;transform:none!important;animation:none!important}.site-v2 *{transition:none!important;scroll-behavior:auto!important}}@media (prefers-reduced-motion:no-preference){.library-cell[data-animation=reveal] .lib-hero-copy{animation:library-arrive .8s cubic-bezier(.16,1,.3,1) both}.library-cell[data-animation=stagger] :is(.lib-products,.lib-projects,.lib-team-members,.lib-testimonials)>:not(.motion-pending):not(.motion-visible){animation:library-arrive .65s cubic-bezier(.16,1,.3,1) both}.library-cell[data-animation=stagger] :is(.lib-products,.lib-projects,.lib-team-members,.lib-testimonials)>:nth-child(2){animation-delay:.07s}.library-cell[data-animation=stagger] :is(.lib-products,.lib-projects,.lib-team-members,.lib-testimonials)>:nth-child(3){animation-delay:.14s}}.chrome-cell{container:chrome/inline-size}.fiction-banner{background:#fff7e8;padding:10px;text-align:center;color:#73512b;font-size:13px}.lib-team.lib-v-story article:nth-child(2n){grid-template-columns:2fr 1fr}.lib-text-media .lib-heading:not(:has(p)){display:block}.site-v2{color:#262924;line-height:1.6;--ink:#262924;--muted:#63675f}.site-v2 h1{font-size:clamp(34px,4.8cqi,66px);letter-spacing:-.055em;line-height:1.06}.site-v2 h2{font-size:clamp(26px,3cqi,42px);letter-spacing:-.045em}.site-v2 h3{font-size:clamp(19px,1.7cqi,24px)}.site-v2 p{text-wrap:pretty}.site-v2 .site-button{border-radius:100px;padding:14px 24px;font-weight:700;transition:filter .2s ease}.site-v2 .site-button:hover{filter:brightness(.94)}.lib-heading p{color:var(--muted);max-width:58ch}.lib-hero-copy .lib-heading p{font-size:clamp(16px,1.4cqi,19px)}.lib-eyebrow{color:var(--site-primary);font-size:11px;font-weight:800;letter-spacing:.18em;margin-bottom:22px}.lib-block-hero{padding:0}.lib-hero{min-height:0}.lib-hero-copy{padding-block:64px}.lib-hero-image{min-height:0;max-height:680px}.lib-hero.lib-v-editorial{grid-template-columns:1fr 1.1fr;gap:7%;padding-block:42px 70px}.lib-hero.lib-v-editorial .lib-hero-image{aspect-ratio:5/4;border-radius:6px 100px 6px 6px}.lib-hero.lib-v-background{min-height:620px}.lib-hero.lib-v-background .lib-eyebrow,.lib-hero.lib-v-background .lib-heading p{color:#fff}.lib-hero.lib-v-text-only{min-height:0;text-align:left;border:0}.lib-hero.lib-v-text-only .lib-hero-copy{max-width:1280px;padding-block:58px 38px}.lib-hero.lib-v-text-only p{margin-inline:0}.site-v2[data-page-kind=inner] .lib-hero h1{font-size:clamp(32px,3.5cqi,48px)}.site-v2[data-page-kind=inner] .lib-hero:not(.lib-v-background) .lib-hero-image{max-height:400px}.site-v2[data-page-kind=inner] .lib-hero-copy{padding-block:42px}.lib-header-main{max-width:1440px;margin:auto;gap:32px;padding-block:18px}.lib-brand{flex-shrink:0;max-width:250px}.lib-brand img{width:180px;max-height:78px}.lib-contact-band{font-size:11px;padding-block:8px}.lib-desktop-nav{gap:30px;font-size:14px}.lib-desktop-nav a{min-height:44px;display:inline-flex;align-items:center}.lib-nav-more{position:relative}.lib-nav-more summary{cursor:pointer;padding-block:12px}.lib-nav-more>div{position:absolute;z-index:20;top:100%;right:0;width:280px;display:grid;padding:16px;background:white;border:1px solid #e7e7e0;box-shadow:0 18px 50px #19231b18;border-radius:12px}.lib-nav-more a{padding:6px 12px;border-radius:6px}.lib-nav-more a:hover{background:#f5f5ef}.lib-products{gap:28px}.lib-products article{border-radius:12px;border:1px solid #e5e6de;overflow:hidden;background:#fff}.lib-products article>img{border-radius:0;transition:transform .4s}.lib-products article:hover>img{transform:scale(1.015)}.lib-item-copy{padding:24px}.lib-item-copy p{font-size:15px;color:var(--muted)}.lib-item-copy small{color:var(--muted);font-size:12px}.lib-product-details{margin-top:16px;border-top:1px solid #e5e6de}.lib-product-details summary{padding:12px 0;font-size:13px;font-weight:700;cursor:pointer;min-height:44px}.lib-product-details ul{font-size:14px}.site-v2 .lib-product-families .site-button{background:transparent;color:var(--site-primary);padding:6px 0;margin-top:12px;justify-content:flex-start;gap:18px}.site-v2 .lib-product-families .site-button:hover{filter:none}.site-v2 .lib-product-families .site-button:hover .site-button-label{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.lib-product-range.lib-v-split{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.lib-product-range.lib-v-split article{display:flex;flex-direction:column;align-items:stretch;gap:0;padding:0}.lib-product-range.lib-v-split article>img{width:100%;aspect-ratio:16/10;max-height:310px;height:auto}.lib-product-range.lib-v-split .lib-item-copy{flex:1 1;padding:24px}.lib-products.lib-v-tiles .lib-item-copy p,.lib-products.lib-v-tiles .lib-item-copy small{color:#fff}.site-v2 .lib-products.lib-v-tiles .site-button{background:transparent;color:#fff}.lib-products.lib-v-featured article:first-child{border:0;background:color-mix(in srgb,var(--site-primary) 5%,white)}.lib-contact{border-radius:0}.lib-contact .lib-heading p{color:inherit;opacity:.85}.lib-contact.lib-v-banner{padding-block:60px}.lib-contact.lib-v-banner .site-button{margin-top:0}.lib-text-media>img{border-radius:10px}.lib-footer{background:#252b27;color:#fff}.lib-footer small{color:#c4c9c3}.lib-footer nav a{padding-block:4px}.lib-footer h2{font-size:16px;letter-spacing:0}.lib-testimonials figure{border:0;border-radius:12px;background:#f5f5ef;padding:28px}.lib-testimonials blockquote{font-size:16px}.lib-faq details{border-color:#dedfd6;padding-block:8px}.lib-faq summary{min-height:48px}@container block (max-width: 650px){.lib-product-range.lib-v-split{grid-template-columns:1fr}}@media (max-width:760px){.site-v2 h1{font-size:36px}.site-v2 h2{font-size:28px}.lib-header-main{min-height:82px;padding:10px 20px}.lib-brand img{width:150px;max-height:58px}.lib-contact-band,.lib-header-action{display:none}.lib-hero-copy{padding:36px 22px 28px}.lib-hero-image{max-height:320px;aspect-ratio:4/3;height:auto}.lib-hero.lib-v-editorial{display:flex;flex-direction:column;padding:32px 22px;gap:28px}.lib-hero.lib-v-editorial .lib-hero-image{border-radius:6px 60px 6px 6px}.lib-hero.lib-v-background,.lib-hero.lib-v-background .lib-hero-copy{min-height:520px}.lib-hero.lib-v-text-only .lib-hero-copy{padding:34px 22px 20px}.site-v2[data-page-kind=inner] .lib-hero-copy{padding-block:28px}.lib-products{gap:20px}.lib-product-families.lib-v-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.lib-product-families.lib-v-cards .lib-item-copy{padding:16px 12px}.lib-product-families.lib-v-cards h3{font-size:18px}.lib-product-families.lib-v-cards p{font-size:13px}.lib-product-families.lib-v-cards .site-button{font-size:12px;gap:8px}.lib-product-range.lib-v-split{grid-template-columns:1fr}.lib-product-range.lib-v-split article>img{max-height:240px}.lib-contact.lib-v-banner{padding:36px 22px}.lib-contact.lib-v-banner .site-button{margin-top:22px}.lib-footer{padding:40px 22px}}@media (prefers-reduced-motion:reduce){.lib-products article>img,.site-v2 .site-button{transition:none}.lib-products article:hover>img,.site-v2 .site-button:hover{transform:none}}.reference-banner{padding:10px 24px;background:#eeeae1;color:#464c43;font-size:12px;display:flex;gap:16px;justify-content:space-between;flex-wrap:wrap}.reference-banner a{color:inherit;font-weight:700}@container block (min-width: 801px){.lib-projects.lib-v-mosaic:has(>figure:last-child:nth-child(-n+4)){grid-template-columns:repeat(3,minmax(0,1fr))}.lib-projects.lib-v-mosaic:has(>figure:last-child:nth-child(-n+4)) figure:first-child{grid-column:auto;grid-row:auto}.lib-projects.lib-v-mosaic:has(>figure:last-child:nth-child(-n+4)) figure:first-child>img{aspect-ratio:4/3}.lib-projects.lib-v-mosaic:has(>figure:last-child:nth-child(2)){grid-template-columns:repeat(2,minmax(0,1fr))}}.lib-products article.no-image{align-self:start}.lib-service.lib-v-summary .lib-service-intro .lib-heading p{color:inherit}.lib-brand{max-width:280px}.lib-brand-frame{--brand-width:280px;--brand-height:88px;display:block;position:relative;overflow:hidden;width:min(var(--brand-width),calc(var(--brand-height) * var(--logo-ratio)));aspect-ratio:var(--logo-ratio)}.lib-brand .lib-brand-frame img{position:absolute;left:0;top:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain}@media (max-width:760px){.lib-brand-frame{--brand-width:min(210px,calc(100vw - 140px));--brand-height:64px}}.lib-product-families.lib-v-cards{display:flex;flex-direction:column}.lib-card-row{display:flex;flex-wrap:wrap;gap:24px}.lib-card-row>article{flex-grow:1;flex-shrink:1;flex-basis:calc(25% - 24px);min-width:0}.lib-card-row>article.no-image{flex-basis:calc(33.333% - 24px);align-self:stretch}.lib-card-row>article>img{height:auto;aspect-ratio:4/3;object-fit:cover}.lib-projects.lib-v-grid[data-count="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-text-media.no-image:not(.lib-v-two-column) .lib-text-copy{max-width:72ch;margin-inline:auto;width:100%}.lib-text-media.no-image:not(.lib-v-two-column) .lib-heading p{max-width:none}.lib-contact.lib-v-split.no-image{display:block;text-align:center}.lib-contact.lib-v-split.no-image .lib-heading{max-width:72ch;margin-inline:auto}@media (max-width:700px){.lib-card-row{gap:16px}.lib-card-row>article{flex-basis:calc(50% - 16px)}.lib-card-row>article.no-image{flex-basis:100%}.lib-projects.lib-v-grid[data-count="4"]{grid-template-columns:1fr}}.preview-scope-banner{padding:8px 20px;text-align:center;font-size:12px;color:#4b5563;background:#f5f6f8;border-bottom:1px solid #e5e7eb}.site-v2 .lib-hero.has-long-title h1{font-size:clamp(30px,3.4cqi,46px);line-height:1.12;letter-spacing:-.04em}.lib-hero.has-long-title .lib-hero-copy{padding-block:clamp(28px,4cqi,52px)}@container block (min-width: 900px){.lib-hero.lib-v-centered-image.has-long-title.has-image{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:stretch;gap:clamp(24px,4cqi,64px);padding:clamp(28px,4cqi,56px);text-align:left}.lib-hero.lib-v-centered-image.has-long-title .lib-hero-copy{padding:16px 0}.lib-hero.lib-v-centered-image.has-long-title p{margin-inline:0}.lib-hero.lib-v-centered-image.has-long-title .lib-hero-image{align-self:stretch;height:100%;min-height:400px;max-height:620px;aspect-ratio:auto;border-radius:18px}}.library-cell.size-large{--block-space:clamp(24px,4vw,56px)}.lib-text-media:is(.lib-v-two-column,.no-image) .lib-text-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);column-gap:var(--block-space);align-items:start}.lib-text-media:is(.lib-v-two-column,.no-image) .lib-heading{display:contents}.lib-text-media:is(.lib-v-two-column,.no-image) .lib-heading>:first-child{grid-column:1;grid-row:1/span 2;margin:0}.lib-text-media:is(.lib-v-two-column,.no-image) .lib-heading>p{grid-column:2;margin:0}.lib-text-media:is(.lib-v-two-column,.no-image) .lib-text-copy>.site-button{grid-column:2;justify-self:start;margin-top:24px}.lib-item-copy>.site-button,.lib-text-copy>.site-button{align-self:start;justify-self:start;height:auto}.lib-products.lib-v-wide .lib-item-copy{align-items:start}.lib-testimonials.lib-v-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.lib-testimonials.lib-v-list figure{display:flex;flex-direction:column;justify-content:space-between;gap:16px;padding:26px;background:white;border:1px solid #17264215;border-radius:10px}.lib-testimonials.lib-v-list blockquote{margin:0}.lib-projects.lib-v-list:not([data-count="1"],[data-count="2"],[data-count="3"],[data-count="4"]){grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.lib-projects.lib-v-list:not([data-count="1"],[data-count="2"],[data-count="3"],[data-count="4"]) figure{display:block;border:1px solid #17264215;border-radius:10px;overflow:hidden;padding:0;background:white}.lib-projects.lib-v-list:not([data-count="1"],[data-count="2"],[data-count="3"],[data-count="4"]) figure>img{width:100%;aspect-ratio:4/3;object-fit:cover}.lib-projects.lib-v-list:not([data-count="1"],[data-count="2"],[data-count="3"],[data-count="4"]) .lib-project-index{display:none}.lib-header :is(.lib-nav-more,.mobile-nav)>summary{list-style:none;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.lib-header :is(.lib-nav-more,.mobile-nav)>summary::-webkit-details-marker{display:none}.lib-header :is(.lib-nav-more,.mobile-nav)>summary:after{content:"";width:7px;height:7px;border-right:2px solid;border-bottom:2px solid;transform:translateY(-2px) rotate(45deg);transition:transform .15s}.lib-header :is(.lib-nav-more,.mobile-nav)[open]>summary:after{transform:translateY(2px) rotate(-135deg)}.lib-footer-logo{display:inline-flex;padding:12px 16px;background:white;border-radius:10px;max-width:260px}.lib-footer-logo .lib-brand-frame{--brand-width:228px;--brand-height:64px}.lib-footer-logo .lib-brand-frame img{position:absolute;max-width:none;max-height:none}.site-v2 .chat-floating{position:fixed;right:24px;bottom:24px;z-index:40;width:auto;max-width:none;display:flex;flex-direction:column;align-items:flex-end;gap:14px}.site-v2 .chat-fab{width:62px;height:62px;min-height:62px;padding:0;display:grid;place-items:center;border:0;border-radius:50%;background:var(--chat-color,var(--site-primary));color:white;font-size:30px;line-height:1;cursor:pointer;box-shadow:0 8px 24px #0003}.site-v2 .chat-floating>.chat-panel,.site-v2 .chat-inline>.chat-panel{width:min(370px,calc(100vw - 32px));max-height:min(560px,70dvh);display:flex;flex-direction:column;padding:0;margin:0;overflow:hidden;border-radius:16px;background:white;box-shadow:0 16px 48px #0003}.site-v2 .chat-inline>.chat-panel{width:100%;box-shadow:none;border:1px solid #17264220}.site-v2 .chat-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;background:var(--chat-color,var(--site-primary));color:white}.site-v2 .chat-head strong{display:block;font-size:15px}.site-v2 .chat-head small{color:#ffffffd9;font-size:12px}.site-v2 .chat-close{min-height:0;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:#ffffff26;color:white;font-size:20px;cursor:pointer}.site-v2 .chat-log{flex:1 1;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:10px;background:#f6f7f9}.site-v2 .chat-log p{max-width:85%;margin:0;padding:10px 14px;border-radius:14px;font-size:14px;line-height:1.45;background:white;color:#1d2433}.site-v2 .chat-log p.me{align-self:flex-end;background:var(--chat-color,var(--site-primary));color:white}.site-v2 .chat-shortcuts{display:flex;flex-wrap:wrap;gap:8px}.site-v2 .chat-shortcuts a{padding:8px 12px;border:1px solid var(--site-primary);border-radius:999px;font-size:13px;font-weight:700;color:var(--site-primary);text-decoration:none;background:white}.site-v2 .chat-form{display:flex;gap:8px;padding:12px;border-top:1px solid #17264215;margin:0}.site-v2 .chat-form input{flex:1 1;min-height:44px;padding:0 14px;border:1px solid #17264230;border-radius:999px;font:inherit}.site-v2 .chat-form button{width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:var(--chat-color,var(--site-primary));color:white;cursor:pointer}@media (max-width:760px){.lib-text-media:is(.lib-v-two-column,.no-image) .lib-text-copy{grid-template-columns:1fr}.lib-text-media:is(.lib-v-two-column,.no-image) .lib-heading>:first-child,.lib-text-media:is(.lib-v-two-column,.no-image) .lib-heading>p,.lib-text-media:is(.lib-v-two-column,.no-image) .lib-text-copy>.site-button{grid-column:1;grid-row:auto}.lib-text-media:is(.lib-v-two-column,.no-image) .lib-heading>p{margin-top:14px}.lib-projects.lib-v-list:not([data-count="1"],[data-count="2"],[data-count="3"],[data-count="4"]),.lib-testimonials.lib-v-list{grid-template-columns:1fr}.site-v2 .chat-floating{right:16px;bottom:16px}.site-v2 .chat-fab{width:56px;height:56px;min-height:56px}}@media (min-width:761px) and (max-width:1100px){.lib-projects.lib-v-list:not([data-count="1"],[data-count="2"],[data-count="3"],[data-count="4"]){grid-template-columns:repeat(2,minmax(0,1fr))}}.lib-product-details>summary{list-style:none;display:inline-flex;align-items:center;gap:8px}.lib-product-details>summary::-webkit-details-marker{display:none}.lib-product-details>summary:after{content:"";width:6px;height:6px;border-right:2px solid;border-bottom:2px solid;transform:translateY(-2px) rotate(45deg)}.lib-product-details[open]>summary:after{transform:translateY(2px) rotate(-135deg)}.site-v2 .chat-panel .chat-head button.chat-close{flex:none;width:34px;height:34px;min-width:34px;min-height:34px;padding:0;display:grid;place-items:center;border-radius:50%;font-size:20px;line-height:1}.site-v2 .chat-floating>button.chat-fab{flex:none;aspect-ratio:1}.lib-products.lib-product-range.lib-range-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:stretch}.lib-products.lib-product-range.lib-range-grid article,.lib-products.lib-product-range.lib-range-grid article.no-image{display:flex;flex-direction:column;align-self:stretch;overflow:hidden;padding:0;border:1px solid #1726421a;border-radius:14px;background:white}.lib-range-grid .lib-range-mat{contain:size;aspect-ratio:1;box-sizing:border-box;padding:24px;display:flex;align-items:center;justify-content:center;background:#f3f2ee}.lib-range-grid .lib-range-mat img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;aspect-ratio:auto;object-fit:contain;border-radius:4px;box-shadow:0 1px 2px #17203314,0 10px 24px #1720331f}.lib-products.lib-product-range.lib-range-grid .lib-item-copy.lib-range-copy{display:flex;flex:1 1;flex-direction:column;gap:8px;margin:0;padding:22px 22px 24px;border:0}.lib-range-grid .lib-range-brand{font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--site-primary)}.lib-range-grid .lib-range-copy h3{margin:0;font-size:19px;line-height:1.3}.lib-range-grid .lib-range-copy>p{margin:0;font-size:14px;line-height:1.55;color:var(--muted,#63675f)}.lib-range-grid .lib-range-features{display:grid;gap:8px;margin:4px 0 0;padding:0;list-style:none;font-size:13px;line-height:1.5}.lib-range-grid .lib-range-features li{position:relative;padding-left:26px}.lib-range-grid .lib-range-features li:before{content:"";position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:50%;background:color-mix(in srgb,var(--site-primary) 10%,white)}.lib-range-grid .lib-range-features li:after{content:"";position:absolute;left:6px;top:5px;width:4px;height:8px;border-right:1.7px solid var(--site-primary);border-bottom:1.7px solid var(--site-primary);transform:rotate(45deg)}.site-v2 .lib-range-grid .lib-range-link{display:inline-flex;align-items:center;gap:8px;margin-top:auto;padding-top:14px;font-size:14px;font-weight:700;color:var(--site-primary);text-decoration:none}.site-v2 .lib-range-grid .lib-range-link:hover{text-decoration:underline;text-underline-offset:4px}.lib-products.lib-product-range.lib-range-grid[data-columns="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}@container block (max-width: 1100px){.lib-products.lib-product-range.lib-range-grid,.lib-products.lib-product-range.lib-range-grid[data-columns="4"]{grid-template-columns:repeat(3,minmax(0,1fr))}}@container block (max-width: 820px){.lib-products.lib-product-range.lib-range-grid,.lib-products.lib-product-range.lib-range-grid[data-columns="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}}@container block (max-width: 540px){.lib-products.lib-product-range.lib-range-grid,.lib-products.lib-product-range.lib-range-grid[data-columns="4"]{grid-template-columns:1fr}.lib-range-grid .lib-range-mat{aspect-ratio:4/3}}.lib-range-tabs-cell .lib-block-range-tabs{padding-bottom:0}.lib-range-tabs-cell .lib-heading{margin-bottom:24px}.lib-range-tablist{display:flex;flex-wrap:wrap;gap:10px}.site-v2 .lib-range-tablist [role=tab]{min-height:48px;margin:0;padding:10px 22px;border:1.5px solid color-mix(in srgb,var(--site-primary) 25%,transparent);border-radius:100px;background:white;color:inherit;font:inherit;font-size:15px;font-weight:700;line-height:1.2;cursor:pointer;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.site-v2 .lib-range-tablist [role=tab]:hover{border-color:var(--site-primary)}.site-v2 .lib-range-tablist [role=tab][aria-selected=true]{border-color:var(--site-primary);background:var(--site-primary);color:white}.site-v2 .lib-project-filters button:focus-visible,.site-v2 .lib-range-tablist [role=tab]:focus-visible{outline:3px solid color-mix(in srgb,var(--site-primary) 45%,white);outline-offset:2px}section[role=tabpanel][hidden]{display:none}section[role=tabpanel]>.lib-block{padding-top:32px}.lib-range-panel{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:32px;align-items:start}.lib-range-panel-intro{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:28px;border-radius:16px;background:color-mix(in srgb,var(--site-primary) 4%,#f6f5f1)}.lib-range-panel-intro h3{margin:0;font-size:22px;line-height:1.2}.lib-range-panel-intro p{margin:0;font-size:15px;line-height:1.6;color:var(--muted,#63675f)}.lib-range-panel-cards{container:range-panel/inline-size}.lib-range-panel .lib-products.lib-product-range.lib-range-grid[data-columns]{grid-template-columns:repeat(3,minmax(0,1fr))}.lib-range-panel .lib-products.lib-product-range.lib-range-grid[data-columns="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-range-panel .lib-products.lib-product-range.lib-range-grid[data-columns="1"]{grid-template-columns:minmax(0,1fr)}.lib-range-panel .lib-products.lib-product-range.lib-range-grid[data-columns="1"] article.has-image{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.lib-range-grid .lib-range-mat-drawing svg{width:42%;height:auto;fill:none;stroke:color-mix(in srgb,var(--site-primary) 35%,transparent);stroke-width:.7;stroke-linejoin:round}@container range-panel (max-width: 700px){.lib-range-panel .lib-products.lib-product-range.lib-range-grid[data-columns]{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-range-panel .lib-products.lib-product-range.lib-range-grid[data-columns="1"]{grid-template-columns:minmax(0,1fr)}}@container range-panel (max-width: 480px){.lib-range-panel .lib-products.lib-product-range.lib-range-grid[data-columns]{grid-template-columns:minmax(0,1fr)}.lib-range-panel .lib-products.lib-product-range.lib-range-grid[data-columns="1"] article.has-image{display:flex}}@container block (max-width: 900px){.lib-range-panel{grid-template-columns:minmax(0,1fr);gap:20px}.lib-range-panel-intro{padding:22px}}@container block (max-width: 540px){.lib-range-tablist{flex-wrap:nowrap;overflow-x:auto;margin-inline:calc(var(--block-space) * -1);padding:2px var(--block-space) 6px;scrollbar-width:none}.site-v2 .lib-range-tablist [role=tab]{flex:none}}.lib-project-filters{display:flex;flex-wrap:wrap;gap:8px;margin:-6px 0 24px}.site-v2 .lib-project-filters button{min-height:40px;margin:0;padding:8px 16px;border:1px solid color-mix(in srgb,var(--site-primary) 22%,transparent);border-radius:100px;background:white;color:inherit;font:inherit;font-size:14px;font-weight:700;line-height:1.2;cursor:pointer}.site-v2 .lib-project-filters button:hover{border-color:var(--site-primary)}.site-v2 .lib-project-filters button[aria-pressed=true]{border-color:var(--site-primary);background:var(--site-primary);color:white}.lib-projects.lib-project-tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:24px}.lib-projects.lib-project-tiles>figure{grid-column:span 2}.lib-projects.lib-project-tiles>figure[data-wide]{grid-column:span 3}.lib-projects.lib-project-tiles>figure{position:relative;display:flex;flex-direction:column;justify-content:flex-end;aspect-ratio:4/5;margin:0;padding:0;border:0;border-radius:12px;background:#d9d8d2}.lib-projects.lib-project-tiles>figure[data-wide]{aspect-ratio:4/3}.lib-projects.lib-project-tiles>figure[hidden]{display:none}.lib-projects.lib-project-tiles>figure>img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;border-radius:12px}.lib-projects.lib-project-tiles>figure>figcaption{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:44px 18px 18px;border-radius:0 0 12px 12px;background:linear-gradient(0deg,rgb(12 15 21/.84),rgb(12 15 21/.66) 65%,rgb(12 15 21/0));color:white}.lib-project-tag{display:inline-flex;padding:4px 10px;border-radius:100px;background:white;color:var(--site-primary);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.lib-project-tiles figcaption strong{font-size:16px;line-height:1.3}.lib-project-tiles figcaption ul,.lib-project-tiles figcaption>span:not(.lib-project-tag){margin:0;font-size:13px;line-height:1.45;color:#e6e7eb}.lib-project-tiles figcaption ul{padding-left:18px}.site-v2 .lib-project-tiles figcaption a{color:white;font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px}.lib-projects.lib-project-tiles figure:hover>img{filter:none}.lib-project-notes{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px 24px;margin:24px 0 0;padding:0;list-style:none}.lib-project-notes li{display:flex;flex-direction:column;gap:4px;padding-top:12px;border-top:1px solid #17264220;font-size:14px}.lib-project-notes span{font-size:13px;color:var(--muted,#63675f)}@container block (max-width: 900px){.lib-projects.lib-project-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-projects.lib-project-tiles>figure,.lib-projects.lib-project-tiles>figure[data-wide]{grid-column:auto;aspect-ratio:4/5}.lib-projects.lib-project-tiles>figure[data-last-odd]{grid-column:1/-1;aspect-ratio:16/9}}@container block (max-width: 540px){.lib-projects.lib-project-tiles{grid-template-columns:minmax(0,1fr);gap:16px}.lib-projects.lib-project-tiles>figure,.lib-projects.lib-project-tiles>figure[data-last-odd],.lib-projects.lib-project-tiles>figure[data-wide]{grid-column:auto;aspect-ratio:4/3}}.lib-service.lib-v-integrated{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5cqi,64px);align-items:start;max-width:none}.lib-service.lib-v-integrated .lib-service-form{padding:clamp(20px,3cqi,36px);border:1px solid #1726421f;border-radius:16px;background:white}.lib-service.lib-v-integrated .visitor-form{margin-top:0}.lib-service-phone{display:flex;flex-direction:column;gap:2px;margin:0}.lib-service-phone span{font-size:12px;color:var(--muted,#63675f)}.site-v2 .lib-service-phone :is(a,strong){font-size:20px;font-weight:800;color:inherit;text-decoration:none}@container block (max-width: 1000px){.lib-service.lib-v-integrated{grid-template-columns:minmax(0,1fr)}}.lib-products.lib-v-tiles{grid-template-columns:repeat(6,minmax(0,1fr))}.lib-products.lib-v-tiles>article{grid-column:span 2;align-self:stretch}.lib-products.lib-v-tiles:has(>article:last-child:nth-child(3n+1))>article:nth-last-child(-n+4),.lib-products.lib-v-tiles:has(>article:last-child:nth-child(3n+2))>article:nth-last-child(-n+2){grid-column:span 3}.lib-products.lib-v-tiles>article.no-image{display:flex;align-items:flex-end}.lib-products.lib-v-alternating article{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}.lib-products.lib-v-alternating article:nth-child(2n)>img{grid-column:1}.lib-products.lib-v-alternating article:nth-child(2n) .lib-item-copy{grid-column:2}.lib-products.lib-v-alternating article>img{border-radius:8px 0 0 8px}.lib-products.lib-v-featured{grid-template-columns:repeat(12,minmax(0,1fr))}.lib-products.lib-v-featured>article{grid-column:span 4;grid-row:auto;align-self:stretch}.lib-products.lib-v-featured>article:first-child,.lib-products.lib-v-featured>article:nth-child(2):last-child{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:center}.lib-products.lib-v-featured>article:first-child>img,.lib-products.lib-v-featured>article:nth-child(2):last-child>img{height:100%;aspect-ratio:16/10;border-radius:8px 0 0 8px}.lib-products.lib-v-featured:has(>article:last-child:nth-child(3n))>article:nth-last-child(-n+2):not(:first-child),.lib-products.lib-v-featured:has(>article:last-child:nth-child(3n+2))>article:nth-last-child(-n+4):not(:first-child,:nth-child(2):last-child){grid-column:span 6}@container block (max-width: 800px){.lib-products.lib-v-featured,.lib-products.lib-v-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.lib-products.lib-v-featured:has(>article:last-child:nth-child(3n))>article:nth-last-child(-n+2):not(:first-child),.lib-products.lib-v-featured:has(>article:last-child:nth-child(3n+2))>article:nth-last-child(-n+4):not(:first-child,:nth-child(2):last-child),.lib-products.lib-v-featured>article,.lib-products.lib-v-tiles:has(>article:last-child:nth-child(3n+1))>article:nth-last-child(-n+4),.lib-products.lib-v-tiles:has(>article:last-child:nth-child(3n+2))>article:nth-last-child(-n+2),.lib-products.lib-v-tiles>article{grid-column:auto}.lib-products.lib-v-featured>article:first-child,.lib-products.lib-v-featured>article:last-child:nth-child(2n),.lib-products.lib-v-tiles>article:last-child:nth-child(odd){grid-column:1/-1}.lib-products.lib-v-featured>article:first-child,.lib-products.lib-v-featured>article:nth-child(2):last-child{display:block}.lib-products.lib-v-featured>article:first-child>img,.lib-products.lib-v-featured>article:nth-child(2):last-child>img{border-radius:8px 8px 0 0}.lib-products.lib-v-alternating article{grid-template-columns:minmax(0,1fr)}.lib-products.lib-v-alternating article>img{border-radius:8px 8px 0 0}}@container block (max-width: 540px){.lib-products.lib-v-featured,.lib-products.lib-v-tiles{grid-template-columns:minmax(0,1fr)}.lib-products.lib-v-featured>article,.lib-products.lib-v-tiles>article{grid-column:1/-1}}.lib-team.lib-v-story article,.lib-team.lib-v-story article:nth-child(2n){grid-template-columns:minmax(0,240px) minmax(0,1fr)}.lib-team.lib-v-story article:nth-child(2n)>img{grid-column:1}.lib-team.lib-v-story article:nth-child(2n) .lib-item-copy{grid-column:2}.lib-team.lib-v-story .lib-team-members{gap:24px}@container block (max-width: 540px){.lib-team.lib-v-story article,.lib-team.lib-v-story article:nth-child(2n){grid-template-columns:minmax(0,120px) minmax(0,1fr)}}.lib-testimonials:is(.lib-v-cards,.lib-v-quote){display:flex;flex-wrap:wrap}.lib-testimonials:is(.lib-v-cards,.lib-v-quote)>figure{flex:1 1 300px}.lib-testimonials.lib-v-quote>figure:first-child{flex-basis:100%}.lib-testimonials.lib-v-list{grid-template-columns:minmax(0,1fr)}.lib-faq.lib-v-columns{display:flex;flex-wrap:wrap}.lib-faq.lib-v-columns>article{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 12px);min-width:min(100%,300px)}.lib-contact.lib-v-split{grid-template-rows:1fr auto auto 1fr}.lib-contact.lib-v-split>img{grid-row:1/-1}.lib-contact.lib-v-split>.lib-heading{grid-row:2}.lib-contact.lib-v-split>.lib-contact-action{grid-row:3;padding-top:24px}.lib-contact.lib-v-centered{justify-content:center}.lib-products-more{display:flex;flex-wrap:wrap;gap:16px;margin-top:24px}.lib-products-more>article{flex:1 1 260px;background:white;border:1px solid #17264215;border-radius:8px}.lib-products-more .lib-item-copy{padding:22px}.lib-projects.lib-project-tiles>figure[data-solo]{grid-column:1/-1;aspect-ratio:21/9}@container block (max-width: 540px){.lib-projects.lib-project-tiles>figure[data-solo]{aspect-ratio:4/3}}.lib-brand-frame.is-light{box-sizing:content-box;padding:6px 12px;border-radius:8px;background:var(--site-primary)}.lib-footer-logo:has(.is-light){padding:0;background:transparent}.catalogue{max-width:1600px;margin:auto;padding:54px 36px 80px}.catalogue-heading{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;padding-bottom:36px;border-bottom:1px solid #dce1ef}.catalogue-heading h1{font-size:clamp(32px,3.2vw,50px);letter-spacing:-2px;margin:12px 0}.catalogue-heading p:not(.eyebrow){color:#6e7895}.catalogue-count{display:flex;align-items:center;gap:18px;flex:none}.catalogue-count strong{font-size:64px;line-height:1;letter-spacing:-4px;color:#08005d}.catalogue-count span{font-size:12px;line-height:1.7;color:#6e7895}.catalogue-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:36px;margin-top:34px;align-items:start}.catalogue-sidebar{position:sticky;top:20px}.catalogue-search{display:grid;gap:8px;font-size:12px;font-weight:700}.catalogue-search input{width:100%;padding:12px;border:1px solid #d5dcee;border-radius:8px;background:white;margin-bottom:14px;font-size:12px}.catalogue-sidebar nav{display:grid;gap:4px}.catalogue-sidebar nav button{display:flex;align-items:center;gap:10px;padding:12px 10px;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left;font-size:12px;color:#4e5b7d}.catalogue-sidebar nav button[aria-pressed=true]{background:#e9e8f5;color:#09005d;border-color:#d8d6ee;font-weight:800}.catalogue-family-number{font-size:10px;opacity:.55}.catalogue-sidebar nav small{margin-left:auto;background:white;border-radius:5px;padding:1px 6px;font-size:10px}.catalogue-rule{font-size:12px;color:#697593;margin-top:26px;padding:18px 0;border-top:1px solid #dce1ef;line-height:1.7}.catalogue-family-heading{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:24px}.catalogue-family-heading h2{font-size:30px;margin:8px 0;letter-spacing:-1px}.catalogue-family-heading p:not(.eyebrow){font-size:14px;color:#6e7895}.catalogue-status{color:#33755d;background:#e6f2e9;padding:7px 10px;border-radius:20px;font-size:10px;white-space:nowrap}.catalogue-variants{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.catalogue-variant{display:block;width:100%;padding:0;border:1px solid #dce1ef;border-radius:12px;background:white;text-align:left;min-width:0;overflow:hidden;transition:border-color .2s,box-shadow .2s}.catalogue-variant.selected{border:2px solid #09005d;box-shadow:0 0 0 3px #09005d0b}.catalogue-variant:hover{border-color:#807aa5;box-shadow:0 10px 24px #222a4d0a}.catalogue-thumbnail{pointer-events:none;background:#e9edea;height:188px;overflow:hidden}.catalogue-variant>span{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;font-size:12px}.catalogue-variant i{font-style:normal;background:#f1f2f8;border-radius:50%;width:23px;height:23px;display:grid;place-items:center}.catalogue-variant.selected i{background:#09005d;color:white}.catalogue-inspector{margin-top:30px;padding:24px;border:1px solid #dce1ef;border-radius:12px;background:white;display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center}.catalogue-inspector h3{font-size:16px;margin:0 0 8px}.catalogue-inspector p{font-size:12px;color:#6e7895;max-width:40ch}.catalogue-sizes{display:flex;gap:8px}.catalogue-sizes button{display:grid;justify-items:center;align-content:center;min-width:80px;min-height:88px;gap:5px;border:1px solid #dce1ef;border-radius:9px;background:white;padding:10px 16px;font-size:12px}.catalogue-sizes button[aria-pressed=true]{background:#f0eff9;border-color:#09005d;color:#09005d}.catalogue-sizes small{font-size:10px;color:#6e7895}.widget-icon{height:13px;width:13px;border:1.5px solid;border-radius:3px;background:currentColor;opacity:.7}.widget-medium{width:26px}.widget-large{width:38px}.catalogue-options{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:20px;padding-top:18px;border-top:1px solid #edf0f7}.catalogue-options label{display:grid;gap:7px;font-size:11px;font-weight:700}.catalogue-options select{background:#f9fafc;border:1px solid #dce1ef;border-radius:7px;padding:10px;font-size:12px;width:100%}.catalogue-preview-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:32px 0 14px}.catalogue-preview-head>div:first-child{display:grid;gap:4px;font-size:14px}.catalogue-preview-head span{font-size:11px;color:#6e7895}.catalogue-preview-head [role=group]{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.catalogue-preview-head a,.catalogue-preview-head button{padding:8px 12px;font-size:11px;border:1px solid #dce1ef;border-radius:6px;background:white}.catalogue-preview-head button[aria-pressed=true]{background:#09005d;color:white;border-color:#09005d}.catalogue-preview{background:#e6e9e5;border:1px solid #dce1ef;border-radius:12px;padding:20px;overflow:hidden}.catalogue-preview.mobile{padding:24px}.catalogue-preview.mobile .catalogue-frame{max-width:390px;margin:auto;border:6px solid #25322f;border-radius:26px;box-sizing:content-box}.catalogue-frame{position:relative;width:100%;background:white;overflow:hidden}.catalogue-frame iframe{display:block;border:0;transform-origin:top left;max-width:none}.catalogue-loading{position:absolute;inset:0;display:grid;place-items:center;font-size:11px;color:#6e7895;background:#f4f6f5}.catalogue-frame.is-mini{pointer-events:none}.catalogue-guidelines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:28px 0}.catalogue-guidelines h3{font-size:12px;margin:0 0 8px}.catalogue-guidelines p{font-size:12px;line-height:1.75;color:#6e7895}.catalogue-config{border-block:1px solid #dce1ef;padding:18px 0}.catalogue-config summary{cursor:pointer;font-size:12px;font-weight:700}.catalogue-config button{margin:18px 0;font-size:12px}.catalogue-config pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;padding:18px;background:#e9edf5;border-radius:8px}.catalogue-footnote{margin-top:24px;font-size:11px;color:#6e7895;line-height:1.7}@media (max-width:1100px){.catalogue{padding:32px 20px}.catalogue-layout{grid-template-columns:190px minmax(0,1fr);gap:24px}.catalogue-inspector{grid-template-columns:1fr}.catalogue-sizes{justify-content:start}.catalogue-thumbnail{height:150px}}@media (max-width:760px){.catalogue{padding:26px 16px}.catalogue-heading{align-items:start}.catalogue-heading h1{letter-spacing:-1px}.catalogue-count{display:none}.catalogue-layout{display:block;margin-top:20px}.catalogue-sidebar{position:static;margin-bottom:28px}.catalogue-sidebar nav{display:flex;overflow-x:auto;gap:8px;padding-bottom:12px}.catalogue-sidebar nav button{flex:none;background:white;border-color:#dce1ef}.catalogue-rule{display:none}.catalogue-variants{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.catalogue-variant>span{padding:12px 10px;font-size:11px}.catalogue-thumbnail{height:120px}.catalogue-family-heading{align-items:center}.catalogue-family-heading h2{font-size:26px}.catalogue-status{display:none}.catalogue-guidelines,.catalogue-options{grid-template-columns:1fr}.catalogue-preview-head{align-items:start;flex-direction:column}.catalogue-preview,.catalogue-preview.mobile{padding:10px}.catalogue-preview.mobile .catalogue-frame{border:0;border-radius:12px}.catalogue-inspector{padding:18px}.catalogue-sizes{justify-content:stretch}.catalogue-sizes button{flex:1 1;min-width:0;padding-inline:12px}.catalogue-variants{grid-template-columns:1fr}.catalogue-thumbnail{height:190px}}@media (max-width:760px){.platform-header:has(a[href="/espace/bibliotheque"]){height:auto;min-height:82px;flex-wrap:wrap;padding:16px 18px;gap:12px}.platform-header .brand{white-space:nowrap;flex-shrink:0}.platform-header:has(a[href="/espace/bibliotheque"]) .actions{width:100%;gap:6px}.platform-header:has(a[href="/espace/bibliotheque"]) .actions :is(button,a){padding:8px 10px;font-size:11px}}