@font-face{font-family:'DM Sans';src:url('/assets/dm-sans.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
@font-face{font-family:'Manrope';src:url('/assets/manrope.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}
.project-card[hidden]{display:none}
.project-copy{min-width:0}
.project-copy h3{overflow-wrap:anywhere;hyphens:auto}
.image-error{font-size:.85rem;color:#a44e39;text-align:center}
.flag-api-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(30px,7vw,100px);align-items:start}
.flag-api h2{font-size:clamp(2.2rem,4vw,4rem);margin:18px 0 22px}
.flag-api-grid>div:first-child>p{max-width:520px}
.flag-caveat{font-size:.83rem;border-left:3px solid var(--orange);padding-left:16px;margin:25px 0}
.flag-panel{min-width:0;background:#fff;border:1px solid #e0e4df;padding:clamp(22px,3vw,38px)}
.flag-panel label{display:block;font-size:.75rem;font-weight:700;margin-bottom:10px}
.flag-status{min-height:24px;font-size:.85rem;margin:22px 0 13px}
.flag-results{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:8px}
.flag-results li{display:grid;grid-template-columns:95px 1fr;gap:12px;align-items:start;background:#f4f5f0;padding:13px 15px;font-size:.85rem}
.flag-results time{font-weight:700;color:#a45d3a}
.flag-results span{color:#607078;font-size:.75rem}
.flag-panel .demo-note{overflow-wrap:anywhere;line-height:1.7}
.flag-docs{display:inline-block;margin-top:16px;font-size:.83rem;font-weight:700;text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.flag-api-grid{grid-template-columns:1fr}}
.dive-teaser{background:#142530;color:#f8f7f2;overflow:hidden}
.dive-teaser-inner{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:8vw;align-items:center}
.dive-teaser .demo-index{color:#ee8856;letter-spacing:.15em}
.dive-teaser h2{max-width:680px;margin:20px 0 24px}
.dive-teaser p{max-width:560px;color:#bdccd1;line-height:1.8;margin-bottom:32px}
.dive-teaser-art{height:320px;position:relative;border:1px solid #718e9860;border-radius:50%;background:radial-gradient(circle at 50% 60%,#2f5260,#182f3a 60%,#142530 70%)}
.dive-teaser-art:before,.dive-teaser-art:after{content:"";position:absolute;border:1px solid #c5dce84f;border-radius:50%;inset:15%}
.dive-teaser-art:after{inset:30%}
.dive-depth,.dive-gauge{position:absolute;z-index:1;color:#f8f7f2;font-family:var(--font-head);font-weight:800}
.dive-depth{left:14%;top:22%;font-size:1.2rem}.dive-gauge{right:22%;bottom:23%;font-size:3.1rem;color:var(--orange)}
.dive-line{position:absolute;left:16%;right:16%;top:54%;height:2px;background:var(--orange);transform:rotate(-18deg)}
.dive-bubble{position:absolute;border:2px solid #9dc2cf;border-radius:50%}.bubble-one{width:20px;height:20px;right:23%;top:17%}.bubble-two{width:11px;height:11px;right:18%;top:11%}.bubble-three{width:7px;height:7px;right:14%;top:8%}
.dive-intro{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}
.dive-intro p{font-size:1.1rem;max-width:700px;margin:0}.dive-intro span{font-size:.73rem;color:#9b6548;text-transform:uppercase;letter-spacing:.13em;font-weight:700;white-space:nowrap}
.dive-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.dive-tool-card{display:flex;flex-direction:column;min-height:340px;padding:36px;background:#fff;border:1px solid #e1e3dd;transition:transform .2s,box-shadow .2s}
.dive-tool-card:hover{transform:translateY(-4px);box-shadow:0 16px 35px #10202c16}
.dive-tool-card:last-child{grid-column:1/-1;min-height:260px;background:#e1e9e5}
.dive-tool-top{display:flex;justify-content:space-between;align-items:center;color:#a35f3d;font-size:.7rem;letter-spacing:.14em;font-weight:700}
.dive-tool-top b{color:#b8c3c1;font-size:1.2rem}.dive-tool-card h2{font-size:clamp(1.8rem,2.5vw,2.5rem);margin:48px 0 12px}.dive-tool-card:last-child h2{margin-top:35px}
.dive-tool-card p{max-width:520px;margin-bottom:28px}.dive-tool-card .text-link{margin-top:auto;align-self:start}
.dive-resource-grid,.dive-safety-inner{display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw;align-items:start}
.dive-resource-grid h2,.dive-safety h2{font-size:clamp(2rem,3.5vw,3.5rem);margin:20px 0}.dive-resource-grid>div:last-child{display:grid;gap:0;padding-top:15px}
.dive-resource-grid>div:last-child a{padding:20px 0;border-bottom:1px solid #bbc7c1;font-weight:700}.dive-resource-grid>div:last-child a:hover{color:#a45d3a}
.dive-safety{background:#f5ddcc}.dive-safety p{max-width:700px;line-height:1.8}.dive-safety .text-link{margin-top:9px}
@media(max-width:760px){.dive-teaser-inner,.dive-resource-grid,.dive-safety-inner{grid-template-columns:1fr}.dive-teaser-art{max-width:360px;width:100%;margin-inline:auto}.dive-intro{align-items:start;flex-direction:column;gap:12px}.dive-tool-grid{grid-template-columns:1fr}.dive-tool-card:last-child{grid-column:auto}}
@media(max-width:520px){.dive-tool-card{padding:26px;min-height:300px}.dive-teaser-art{height:270px}}

:root{--ink:#14212d;--ink-soft:#3f4b55;--navy:#111d29;--cream:#f8f7f2;--white:#fff;--line:#dddeda;--orange:#ee8856;--orange-light:#f9d9c4;--mint:#d9e8dd;--blue:#dce5eb;--sand:#e9dfd1;--radius:18px;--font-head:'Manrope',system-ui,sans-serif;--font-body:'DM Sans',system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased}img,svg{max-width:100%}svg{width:1.1em;height:1.1em}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{font-family:var(--font-head);letter-spacing:-.055em;line-height:1.1}h1{font-size:clamp(3.1rem,6.2vw,6.7rem);font-weight:700}h2{font-size:clamp(2.3rem,4.2vw,4.7rem);font-weight:700}h3{font-size:clamp(1.35rem,2vw,1.8rem);font-weight:700}em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.075em}p{color:var(--ink-soft)}:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.container{width:min(100% - 48px,1240px);margin-inline:auto}.section-pad{padding-block:clamp(76px,9vw,144px)}.alt-section{background:#eeeee8}.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:.73rem;line-height:1.2;font-weight:700;letter-spacing:.17em;text-transform:uppercase}.eyebrow-line{display:inline-block;width:28px;height:2px;background:var(--orange)}.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:58px;padding:15px 25px;font-size:.88rem;font-weight:700;border:1px solid transparent;transition:transform .2s,background .2s,color .2s,border-color .2s}.button:hover{transform:translateY(-3px)}.button svg,.text-link svg{transition:transform .2s}.button:hover svg,.text-link:hover svg{transform:translateX(4px)}.button-primary{background:var(--orange);color:var(--navy)}.button-primary:hover{background:#ff9f6f}.button-outline{border-color:rgba(255,255,255,.4);color:#fff}.button-outline:hover{background:#fff;color:var(--navy)}.button-light{border-color:#bac1c1;background:transparent;color:var(--ink)}.button-light:hover{border-color:var(--ink);background:var(--ink);color:#fff}.button-dark{background:var(--navy);color:#fff}.button-dark:hover{background:#263747}.text-link{display:inline-flex;align-items:center;gap:12px;font-weight:700;font-size:.9rem;border-bottom:1px solid currentColor;padding-bottom:5px}.text-link svg{width:16px;height:16px}

/* Header */
.site-header{background:var(--navy);color:#fff;position:relative;z-index:20}.header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--font-head);font-size:1.36rem;font-weight:800;letter-spacing:-.07em;white-space:nowrap}.brand>span>span{color:var(--orange)}.brand-mark{width:39px;height:39px;flex:none}.site-nav{display:flex;align-items:center;gap:clamp(20px,2.5vw,38px)}.site-nav>a{font-size:.87rem;font-weight:600;white-space:nowrap;transition:color .2s}.site-nav>a:hover,.site-nav>a.is-active{color:var(--orange)}.site-nav .nav-contact{display:inline-flex;align-items:center;gap:12px;padding:12px 18px;border:1px solid #64707a;margin-left:8px}.site-nav .nav-contact:hover{background:var(--orange);border-color:var(--orange);color:var(--navy)}.menu-button{display:none;background:none;border:0;color:inherit;padding:8px}.menu-button svg{width:27px;height:27px}

/* Hero */
.hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 78% 44%,#263847 0,#111d29 48%,#0c1721 100%)}.hero-grid{position:absolute;inset:0;opacity:.22;background-image:linear-gradient(to right,#7f9aaa35 1px,transparent 1px),linear-gradient(to bottom,#7f9aaa35 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(to right,transparent,#000 43%,#000)}.hero:after{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;top:-140px;background:#d9815540;filter:blur(110px);pointer-events:none}.hero-content{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;min-height:660px;gap:4vw;padding-block:65px 90px}.hero-copy{max-width:650px}.hero .eyebrow{color:#e6a987}.hero h1{margin:28px 0 25px;max-width:760px}.hero h1 em{color:var(--orange)}.hero-copy>p{max-width:510px;font-size:1.12rem;line-height:1.8;color:#c5cdd1}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin-top:34px}.hero-meta{display:flex;align-items:center;gap:14px;margin-top:58px;font-size:.77rem;color:#a5b4bf;letter-spacing:.04em}.hero-meta i{width:4px;height:4px;border-radius:50%;background:var(--orange)}.hero-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #455662;padding-block:22px;font-size:.67rem;font-weight:700;letter-spacing:.15em;color:#9dafb9}.hero-scroll{letter-spacing:0;font-weight:500;font-size:.78rem}.hero-art{height:440px;position:relative}.art-orbit{position:absolute;inset:4% 8%;border:1px solid #72909e3d;border-radius:50%;transform:rotate(-24deg)}.orbit-two{inset:-8% 1%;transform:rotate(24deg)}.art-main-card{position:absolute;top:14%;left:8%;width:86%;height:68%;border:1px solid #57717b;border-radius:15px;background:#20313d;box-shadow:0 42px 85px #07111caa;transform:rotate(-6deg);overflow:hidden}.art-card-top{display:flex;justify-content:space-between;align-items:center;height:45px;padding:0 18px;background:#1a2b37;color:#7f9ba7;font-size:.65rem;letter-spacing:.04em}.art-dots{display:flex;gap:5px}.art-dots i{width:6px;height:6px;border-radius:50%;background:#899ca4}.art-dots i:first-child{background:var(--orange)}.art-card-body{display:flex;height:calc(100% - 45px)}.art-side{width:20%;border-right:1px solid #384c58;padding:25px 17px;display:flex;flex-direction:column;gap:15px}.art-side span{width:75%;height:5px;background:#47606b;border-radius:4px}.art-side .art-side-active{background:var(--orange);width:95%}.art-lines{flex:1;padding:32px 30px}.art-lines>span{display:block;height:7px;border-radius:8px;background:#49636f;margin-bottom:16px}.art-lines .line-small{width:32%}.art-lines .line-large{width:64%;height:11px;background:#e8eeeb}.art-lines .line-medium{width:76%}.art-panels{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.art-panels b{height:80px;border-radius:6px;background:linear-gradient(145deg,#365b66,#72a09b)}.art-panels b:nth-child(2){background:linear-gradient(145deg,#7f6558,#df9a6c)}.art-panels b:nth-child(3){background:linear-gradient(145deg,#496677,#8ca6ac)}.art-float{position:absolute;display:flex;gap:11px;align-items:center;padding:12px 17px;background:#f8f7f2;color:var(--ink);box-shadow:0 15px 35px #07111c80;border-radius:9px}.art-float svg{width:26px;height:26px;stroke:var(--orange)}.art-float span{display:flex;flex-direction:column;line-height:1.3}.art-float b{font-size:.75rem}.art-float small{font-size:.62rem;color:#708087}.art-float-top{top:3%;right:0;transform:rotate(7deg)}.art-float-bottom{bottom:2%;left:0;transform:rotate(4deg)}

/* Sections */
.intro-grid{display:grid;grid-template-columns:1fr .67fr;gap:10vw;align-items:end}.intro h2{margin:25px 0 0;max-width:710px}.intro h2 em{color:#b96841}.intro-grid>div:last-child{padding-bottom:8px}.intro-grid p{font-size:1.08rem;line-height:1.85;margin-bottom:26px}.section-heading{margin-bottom:48px}.section-heading h2{margin:24px 0 0}.heading-row{display:flex;justify-content:space-between;align-items:end;gap:30px}.heading-row .button{margin-bottom:8px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service-card{position:relative;display:flex;flex-direction:column;min-height:365px;padding:30px;background:#fff;border:1px solid #e3e4df;transition:transform .25s,box-shadow .25s}.service-card:hover{transform:translateY(-7px);box-shadow:0 20px 45px #27323d16}.service-number{font-family:var(--font-head);font-size:.77rem;color:#8b938e;font-weight:700}.service-icon{display:grid;place-items:center;width:61px;height:61px;border-radius:50%;background:#f6e6d9;color:#bb7049;margin:35px 0 30px}.service-icon svg{width:27px;height:27px}.service-card h3{margin-bottom:12px}.service-card p{font-size:.9rem;line-height:1.75;margin-bottom:45px}.service-arrow{position:absolute;right:30px;bottom:28px;display:grid;place-items:center;width:30px;height:30px;color:var(--orange)}.service-arrow svg{width:23px;height:23px}.work{background:var(--cream)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project-card{background:#fff;display:grid;grid-template-columns:43% 57%;min-height:290px;overflow:hidden;border:1px solid #e3e3de;transition:transform .25s,box-shadow .25s}.project-card:hover{transform:translateY(-5px);box-shadow:0 20px 45px #27323d17}.project-visual{position:relative;display:grid;place-items:center;overflow:hidden;background:#f5ded0}.tone-blue .project-visual{background:#dae5e9}.tone-sand .project-visual{background:#e8ded1}.tone-mint .project-visual{background:#dbe9de}.project-visual:before,.project-visual:after{content:"";position:absolute;border:1px solid #ffffff88;border-radius:50%}.project-visual:before{width:280px;height:280px;right:-95px;bottom:-130px}.project-visual:after{width:180px;height:180px;left:-90px;top:-75px}.project-monogram{font-family:var(--font-head);font-size:clamp(2.1rem,4vw,4.5rem);font-weight:800;letter-spacing:-.1em;color:#6c4035;transform:rotate(-8deg);position:relative;z-index:1}.tone-blue .project-monogram{color:#355463}.tone-sand .project-monogram{color:#76604f}.tone-mint .project-monogram{color:#3e6657}.project-visual-icon{position:absolute;bottom:22px;right:22px;display:grid;place-items:center;width:39px;height:39px;background:#ffffffaa;border-radius:50%;z-index:2}.project-copy{padding:30px;display:flex;flex-direction:column}.project-group{color:#b86b44;text-transform:uppercase;font-size:.62rem;letter-spacing:.15em;font-weight:700}.project-copy h3{margin:14px 0 12px}.project-copy p{font-size:.83rem;line-height:1.6;margin-bottom:22px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.project-copy .text-link{align-self:flex-start;margin-top:auto;font-size:.77rem}.approach{background:var(--navy);color:#fff}.approach-grid{display:grid;grid-template-columns:.9fr 1fr;gap:10vw}.approach h2{margin:28px 0}.approach p{color:#b8c4c9;line-height:1.8}.approach-grid>div:first-child>p{max-width:470px;margin-bottom:30px}.approach-steps{border-top:1px solid #53616b}.approach-steps>div{display:grid;grid-template-columns:65px 1fr;gap:20px;padding:30px 0;border-bottom:1px solid #53616b}.approach-steps span{font-size:.77rem;color:var(--orange);font-weight:700}.approach-steps h3{font-size:1.25rem;margin-bottom:8px}.approach-steps p{margin:0;font-size:.88rem}.tools-teaser{background:#e4e6de}.tools-teaser-inner{display:grid;grid-template-columns:1fr .75fr;gap:8vw;align-items:center}.tools-teaser h2{margin:24px 0}.tools-teaser h2 em{color:#ad6545}.tools-teaser p{max-width:600px;margin-bottom:28px}.tool-stack{height:280px;position:relative}.tool-stack>span{position:absolute;display:flex;align-items:center;justify-content:space-between;width:70%;min-height:80px;padding:16px 25px;background:#fff;border:1px solid #d7dcd8;box-shadow:0 18px 45px #23313d19;font-family:var(--font-head);font-size:1.25rem;font-weight:800;color:#2b4348}.tool-stack>span:first-child{top:2%;left:5%;transform:rotate(-8deg)}.tool-stack>span:nth-child(2){top:34%;right:0%;transform:rotate(7deg);letter-spacing:.17em}.tool-stack>span:nth-child(2) small{font-size:.6rem;letter-spacing:.1em}.tool-stack>span:last-child{bottom:0;left:9%;transform:rotate(-4deg);font-size:1.35rem;letter-spacing:.14em}.tool-stack>span span{color:var(--orange)}.contact-band{background:var(--orange-light)}.contact-band-inner{display:flex;align-items:end;justify-content:space-between;gap:30px}.contact-band h2{margin:24px 0}.contact-band p{max-width:580px;margin-bottom:0}.site-footer{background:#0c1721;color:#fff;padding:72px 0 24px}.footer-grid{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:55px}.site-footer .brand{font-size:1.5rem}.site-footer p{color:#a5b3ba;font-size:.85rem;margin-top:22px;max-width:240px}.site-footer h3{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#fff;margin:4px 0 20px}.site-footer a:not(.brand){display:block;margin-bottom:11px;color:#a5b3ba;font-size:.83rem}.site-footer a:hover{color:var(--orange)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #354550;margin-top:65px;padding-top:23px;color:#8d9aa2;font-size:.71rem}

/* Inner pages */
.page-hero{background:var(--navy);color:#fff;padding:80px 0 105px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:360px;height:360px;right:5%;top:-170px;border:1px solid #6783935c;border-radius:50%;box-shadow:0 0 0 70px #7897a009,0 0 0 140px #7897a009}.page-hero .container{position:relative;z-index:1}.page-hero .eyebrow{color:#e6a987}.page-hero h1{max-width:900px;font-size:clamp(3rem,5.8vw,5.6rem);margin:25px 0}.page-hero h1 em{color:var(--orange)}.page-hero p{color:#bcc7cc;max-width:670px;font-size:1.05rem;line-height:1.8}.listing{padding-top:58px}.filter-list{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:35px}.filter-button{background:transparent;border:1px solid #bfc7c7;padding:10px 17px;color:#58626b;font-size:.78rem;font-weight:700}.filter-button:hover,.filter-button.active{background:var(--ink);border-color:var(--ink);color:#fff}.filter-empty{padding:35px 0}.service-list{padding-top:40px}.service-row{display:grid;grid-template-columns:80px 1fr 30px;gap:35px;align-items:start;padding:42px 0;border-bottom:1px solid #cdd2d0;transition:padding .2s}.service-row:first-child{border-top:1px solid #cdd2d0}.service-row:hover{padding-left:16px}.service-row>span{font-size:.8rem;color:#b86b44;font-weight:700}.service-row h2{font-size:clamp(1.8rem,3vw,3rem);margin-bottom:12px}.service-row p{max-width:700px;margin:0;font-size:.94rem}.service-row>svg{color:#a36b51;width:24px;height:24px}.simple-cta{text-align:center;background:#e5e9e4}.simple-cta p{margin:18px auto 30px}.tool-demos{background:var(--cream)}.demo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.demo-card{padding:35px;background:#fff;border:1px solid #e0e4df}.demo-heading{display:flex;gap:20px;align-items:start;padding-bottom:32px;border-bottom:1px solid #e0e5e1;margin-bottom:28px}.demo-index{font-size:.7rem;color:#ad7354;font-weight:700}.demo-heading h2{font-size:1.8rem;margin:0 0 6px}.demo-heading p{font-size:.88rem;margin:0}.demo-card label{display:block;font-size:.75rem;font-weight:700;margin-bottom:10px}.input-row{display:flex;gap:8px}.input-row input{min-width:0;flex:1;border:1px solid #c9d0cd;padding:12px 13px;border-radius:0;background:#fff;color:var(--ink);font-size:.85rem}.input-row button,.reference-button{border:0;background:var(--navy);color:#fff;padding:12px 20px;font-size:.79rem;font-weight:700}.input-row button:hover,.reference-button:hover{background:#324755}.demo-result{min-height:195px;margin:25px 0;background:#f4f5f0;border:1px solid #e2e6e2;display:grid;place-items:center;padding:25px}.demo-result img{max-height:175px;object-fit:contain}.barcode-result img{max-width:100%;height:auto}.demo-note{font-size:.7rem;margin:0;color:#7c888b}.demo-note code{font-size:.7rem}.reference-card{grid-column:1/-1}.reference-card .demo-result{min-height:120px;display:flex;flex-direction:column;gap:5px}.reference-result strong{font-family:var(--font-head);font-size:2.4rem;letter-spacing:.08em}.reference-result span{font-size:.78rem;color:#7d888a}.reference-button{display:inline-flex;align-items:center;gap:20px}.reference-button svg{width:16px;height:16px}.contact-page-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:8vw}.contact-primary{padding:50px;background:var(--orange-light)}.contact-primary>span,.contact-details span{display:block;text-transform:uppercase;letter-spacing:.14em;font-size:.7rem;font-weight:700;color:#9f6044;margin-bottom:22px}.contact-primary>a{display:inline-flex;align-items:center;gap:20px;font-family:var(--font-head);font-size:clamp(1.5rem,3vw,3rem);font-weight:700;letter-spacing:-.05em;word-break:break-word}.contact-primary>a svg{flex:none;width:24px;height:24px}.contact-primary p{max-width:460px;margin:28px 0 0}.contact-details>div{padding:5px 0 25px;margin-bottom:25px;border-bottom:1px solid #cbd1cb}.contact-details a{font-size:1.05rem;font-weight:700}.contact-details p{margin:0}.article-hero{background:var(--navy);color:#fff;padding:65px 0 90px}.article-hero-inner{max-width:990px}.back-link{font-size:.8rem;color:#a9c3c6;display:block;margin-bottom:75px}.back-link:hover{color:var(--orange)}.article-hero .eyebrow{color:#e6a987}.article-hero h1{font-size:clamp(2.9rem,5.4vw,5.5rem);max-width:850px;margin:24px 0}.article-hero p{font-size:1.05rem;line-height:1.75;max-width:770px;color:#b8c4c9}.article-date{font-size:.72rem;color:#9aa9b1}.article-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:10vw}.article-content{font-size:1.02rem;line-height:1.8;overflow-wrap:anywhere}.article-content p{margin:0 0 23px}.article-content h2{font-size:2rem;margin:52px 0 20px}.article-content h3{font-size:1.45rem;margin:40px 0 15px}.article-content h4{font-size:1.18rem;margin:30px 0 12px}.article-content ul,.article-content ol{padding-left:25px;margin-bottom:26px;color:var(--ink-soft)}.article-content li{margin-bottom:9px}.article-content strong{color:var(--ink)}.article-content a{color:#a55e3e;text-decoration:underline;text-underline-offset:3px}.article-content img{height:auto;border-radius:3px}.article-content figure{margin:30px 0}.article-aside{position:sticky;top:30px;padding:32px;background:#e6e9e3}.article-aside>span{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;color:#ad7354;font-weight:700}.article-aside h2{font-size:1.65rem;margin:18px 0}.article-aside p{font-size:.85rem}.article-aside .text-link{margin-top:15px}.related .section-heading{margin-bottom:35px}.related .heading-row h2{font-size:2.3rem;margin:0}

@media(max-width:1000px){.hero-content{grid-template-columns:1fr .8fr}.hero-art{height:350px}.art-panels b{height:55px}.hero h1{font-size:clamp(3rem,5.7vw,5.3rem)}.project-card{grid-template-columns:1fr}.project-visual{min-height:190px}.project-copy{min-height:230px}.footer-grid{grid-template-columns:1.5fr repeat(3,1fr);gap:25px}.article-grid{gap:5vw}.site-nav{gap:16px}.site-nav>a{font-size:.78rem}}
@media(max-width:760px){.container{width:min(100% - 32px,1240px)}.section-pad{padding-block:72px}.header-inner{min-height:72px}.menu-button{display:block}.site-nav{display:none;position:absolute;left:0;right:0;top:72px;background:var(--navy);padding:15px 24px 26px;box-shadow:0 18px 25px #06101970;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav>a{font-size:1rem;padding:12px 0}.site-nav .nav-contact{margin:12px 0 0;justify-content:center}.hero-content{grid-template-columns:1fr;min-height:auto;padding-block:70px 20px}.hero h1{font-size:clamp(3.2rem,10vw,5rem)}.hero-copy>p{font-size:1rem}.hero-meta{margin-top:35px}.hero-art{height:345px;max-width:490px;width:100%;margin-inline:auto}.hero-bottom span:nth-child(2){display:none}.intro-grid,.approach-grid,.tools-teaser-inner,.contact-page-grid,.article-grid{grid-template-columns:1fr;gap:35px}.intro h2{margin-bottom:0}.service-grid{grid-template-columns:1fr}.service-card{min-height:300px}.service-icon{margin:25px 0}.project-grid{grid-template-columns:1fr}.project-card{grid-template-columns:42% 58%;min-height:260px}.project-visual{min-height:260px}.project-copy{min-height:260px}.heading-row{align-items:start;flex-direction:column}.tools-teaser-inner{gap:45px}.tool-stack{max-width:480px;width:100%;margin-inline:auto}.contact-band-inner{align-items:start;flex-direction:column}.footer-grid{grid-template-columns:repeat(2,1fr);gap:42px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}.page-hero{padding:65px 0 80px}.page-hero h1{font-size:clamp(3rem,8vw,4.8rem)}.article-aside{position:static}.demo-grid{grid-template-columns:1fr}.reference-card{grid-column:auto}.back-link{margin-bottom:45px}}
@media(max-width:520px){.hero h1{font-size:3.2rem}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{justify-content:space-between}.hero-art{height:280px}.art-main-card{top:20%;height:60%}.art-float-top{right:0;top:3%}.art-float-bottom{bottom:0}.art-float{padding:8px 10px}.art-float svg{width:20px;height:20px}.art-float b{font-size:.63rem}.art-float small{font-size:.54rem}.art-panels{gap:6px}.art-panels b{height:40px}.art-lines{padding:20px 16px}.art-side{padding:20px 8px}.project-card{grid-template-columns:1fr}.project-visual{min-height:190px}.project-copy{min-height:220px}.service-row{grid-template-columns:42px 1fr 18px;gap:12px}.service-row h2{font-size:1.7rem}.footer-grid{gap:30px}.footer-grid>div:nth-child(2){grid-column:1}.contact-primary{padding:30px}.input-row{flex-direction:column}.input-row button{min-height:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
