:root{--navy:#17364a;--navy2:#102b3b;--ink:#182b35;--muted:#53636b;--line:#d8e1e2;--paper:#f7f8f6;--mist:#eaf0ee;--lime:#c9df83;--green:#397463;--white:#fff;--max:1340px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:'DM Sans',system-ui,sans-serif;font-size:16px;line-height:1.58}button,input,select,textarea{font:inherit}a{color:inherit}img{max-width:100%;display:block}.container{width:min(var(--max),calc(100% - 84px));margin-inline:auto}.section{padding-block:clamp(78px,9vw,138px)}.skip{position:absolute;z-index:99;left:20px;top:-80px;background:#fff;padding:10px}.skip:focus{top:20px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,'DM Sans',sans-serif;line-height:1.14;letter-spacing:-.045em}h1{font-size:clamp(3.1rem,6.6vw,7rem);font-weight:700}h2{font-size:clamp(2.35rem,4.3vw,4.9rem);font-weight:700}h3{font-size:clamp(1.35rem,1.75vw,1.8rem)}p{max-width:66ch}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:700;color:var(--green);margin-bottom:23px}.eyebrow.light{color:var(--lime)}em{font-style:normal;color:var(--lime)}:focus-visible{outline:3px solid #80b89d;outline-offset:4px}
.site-header{position:relative;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.header-inner{width:min(1440px,calc(100% - 64px));margin:auto;min-height:88px;display:flex;align-items:center;gap:36px}.brand{text-decoration:none;display:flex;align-items:center;gap:10px;white-space:nowrap;color:var(--navy)}.brand-symbol{width:42px;height:42px;background:var(--navy);color:#fff;border-radius:12px;display:grid;place-items:center;font:700 14px Manrope;letter-spacing:-.1em;transform:rotate(-7deg)}.brand-symbol span{color:var(--lime)}.brand-name{font:800 1.42rem Manrope;letter-spacing:-.055em}.brand-name span{color:var(--green)}nav{display:flex;align-items:center;justify-content:center;gap:clamp(16px,1.9vw,32px);margin-left:auto}nav a{text-decoration:none;color:var(--navy);font-weight:600;font-size:.91rem;white-space:nowrap}nav a:hover,.footer a:hover{color:var(--green)}.header-actions{display:flex;align-items:center;gap:21px}.lang-switch{display:flex;gap:7px;align-items:center;white-space:nowrap;font-weight:700;font-size:.8rem}.lang-switch a{text-decoration:none;color:#879499}.lang-switch a[aria-current=page]{color:var(--navy);border-bottom:2px solid var(--green)}.lang-switch span{color:#b5c0c2}.header-cta{white-space:nowrap;text-decoration:none;background:var(--navy);color:#fff;padding:12px 17px;border-radius:5px;font-weight:700;font-size:.9rem}.header-cta:hover{background:#29526a}.header-cta span{margin-left:8px}.menu-toggle,.mobile-contact{display:none}
.hero{background:var(--navy);color:#fff;overflow:hidden}.hero-main{display:grid;grid-template-columns:54% 46%;min-height:min(730px,74vh);align-items:stretch}.hero-copy{padding:clamp(74px,7vw,130px) 9% 75px 0;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h1{font-size:clamp(3.1rem,5.3vw,6rem);margin-bottom:29px;text-wrap:balance}.hero-copy>p{color:#d8e3e5;font-size:clamp(1.1rem,1.45vw,1.45rem);line-height:1.45;max-width:680px}.hero-buttons{display:flex;flex-wrap:wrap;align-items:center;gap:26px;margin-top:24px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 22px;text-decoration:none;border:0;border-radius:5px;font-weight:700;cursor:pointer;min-height:56px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button-lime{background:var(--lime);color:var(--navy2)}.button-lime:hover{background:#dcf097}.button-navy{background:var(--navy);color:#fff}.button-navy:hover{background:#29526a}.hero-text-link{font-weight:700;color:#fff;text-underline-offset:7px}.hero-text-link span{margin-left:7px}.hero-visual{position:relative;min-width:0;min-height:480px;margin-right:calc((min(100vw,var(--max)) - 100vw)/2)}.hero-visual img{width:100%;height:100%;object-fit:cover;object-position:center}.image-tag{position:absolute;bottom:25px;left:25px;background:#fff;color:var(--navy);padding:12px 16px;border-radius:3px;font-size:.84rem;font-weight:700}.hero-rail{border-top:1px solid #426071;display:flex;align-items:center;gap:40px;min-height:80px}.hero-rail span{color:var(--lime);font-size:.74rem}.hero-rail b{font-size:.86rem;letter-spacing:.02em;color:#d6e3e3;margin-left:12px;font-weight:500}
.section-intro{max-width:900px;margin-bottom:50px}.section-intro h2{margin-bottom:0}.split{display:flex;align-items:end;justify-content:space-between;gap:70px;max-width:none}.split>div{max-width:850px}.split>p{max-width:390px;color:var(--muted);font-size:1.08rem;margin-bottom:7px}.audience{display:grid;grid-template-columns:35% 1fr;gap:7%}.audience .section-intro{margin:0}.audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.audience-grid article{border-top:1px solid #9cb6b1;padding-top:21px}.aud-num{font-size:.75rem;color:var(--green);font-weight:700}.audience-grid h3{font-size:1.2rem;margin:20px 0 10px}.audience-grid p{color:var(--muted);font-size:.95rem;line-height:1.5}.services{background:var(--paper)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:#fff;text-decoration:none;display:flex;flex-direction:column;min-width:0;transition:transform .3s,box-shadow .3s;box-shadow:0 2px 0 rgba(23,54,74,.07)}.service-card:hover{transform:translateY(-7px);box-shadow:0 18px 44px rgba(23,54,74,.12)}.service-card-image{height:240px;overflow:hidden}.service-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.service-card:hover img{transform:scale(1.05)}.service-card-body{padding:25px 29px 32px;display:flex;flex-direction:column;flex:1}.service-top{display:flex;justify-content:space-between;align-items:center;color:var(--green);font-size:.8rem;font-weight:700;letter-spacing:.05em}.service-top span:last-child{font-size:1.5rem;line-height:1}.service-card h3{margin:33px 0 16px;font-size:clamp(1.45rem,2vw,2rem)}.service-card p{color:var(--muted);font-size:.98rem;line-height:1.5;margin-bottom:38px}.inline-link{margin-top:auto;color:var(--green);font-weight:700;font-size:.92rem}.inline-link span{margin-left:7px}
.method{display:grid;grid-template-columns:40% 1fr;gap:7%}.method-lead h2{font-size:clamp(2.5rem,4.1vw,4.5rem)}.method-lead em{color:var(--green)}.method-lead>p{font-size:1.11rem;color:var(--muted);margin-top:30px}.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:0 34px}.step{border-top:1px solid var(--line);padding:25px 0 35px}.step span,.section-index{font-size:.8rem;color:var(--green);font-weight:700}.step h3{margin:25px 0 10px}.step p{color:var(--muted);font-size:.96rem}.demo{background:#e9efed}.demo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.demo-card{background:#fff;min-width:0}.demo-graphic{height:250px;position:relative;overflow:hidden;background:#b1c7c0}.demo-graphic:before,.demo-graphic:after{content:'';position:absolute;border:1px solid rgba(255,255,255,.48);border-radius:50%;width:310px;height:310px;left:-70px;top:60px}.demo-graphic:after{width:400px;height:400px;left:150px;top:-160px}.demo-graphic span{position:absolute;z-index:1;right:26px;bottom:15px;font:700 6rem Manrope;letter-spacing:-.09em;color:rgba(255,255,255,.55)}.demo-2{background:#98b7bc}.demo-3{background:#c8d0a4}.demo-copy{padding:26px 28px 30px}.status{text-transform:uppercase;font-size:.7rem;letter-spacing:.14em;font-weight:700;color:var(--green)}.demo-copy h3{margin:20px 0 0}.demo-note{color:var(--muted);font-size:.9rem;margin-top:23px}.text-cta{display:inline-block;margin-top:25px;color:var(--navy);font-weight:700;text-underline-offset:8px}.about{display:grid;grid-template-columns:50% 1fr;gap:8%;align-items:center}.about-photo{aspect-ratio:1.12;background:var(--mist);overflow:hidden}.about-photo img{width:100%;height:100%;object-fit:cover}.about-copy>p{font-size:1.1rem;color:var(--muted)}.contact-band{background:var(--navy);color:#fff;padding:clamp(70px,8vw,120px) 0}.contact-band>.container{display:grid;grid-template-columns:1.3fr .7fr;gap:12%;align-items:end}.contact-band h2{max-width:740px}.contact-band p{color:#d7e3e5}.contact-band-side p{font-size:.91rem;margin:25px 0 0}.contact-band-side a:not(.button){color:#fff}
.footer{background:#102834;color:#e6eeee;padding-top:58px}.footer-top{display:flex;justify-content:space-between;gap:40px}.footer-brand{font:800 2rem Manrope;letter-spacing:-.07em;color:#fff;text-decoration:none}.footer-dot{color:var(--lime)}.footer-top p{color:#a7bcc3}.footer-links{display:flex;flex-direction:column;gap:12px}.footer-links a{color:#d7e5e7;text-decoration:none}.footer-bottom{border-top:1px solid #3e5863;display:flex;justify-content:space-between;padding:20px 0;margin-top:65px;color:#a7bcc3;font-size:.82rem}
.inner-hero{background:var(--navy);color:#fff}.inner-hero-grid{display:grid;grid-template-columns:55% 45%;min-height:590px}.inner-hero-grid>div:first-child{padding:100px 8% 100px 0;align-self:center}.inner-hero h1{font-size:clamp(3rem,5.5vw,6rem);max-width:900px}.inner-hero p{font-size:1.25rem;color:#dbe8e9;line-height:1.55;margin-bottom:34px}.inner-image{margin-right:calc((min(100vw,var(--max)) - 100vw)/2);min-width:0}.inner-image img{width:100%;height:100%;object-fit:cover}.detail-body{display:grid;grid-template-columns:25% 1fr;gap:10%}.detail-aside p{font:700 1.35rem Manrope;color:var(--navy)}.detail-sections>div{border-top:1px solid var(--line);padding:28px 0 40px}.detail-sections h2{font-size:2rem;margin:12px 0}.detail-sections p,.detail-sections li{font-size:1.12rem;color:var(--muted)}.detail-sections ul{padding-left:22px}.detail-sections li{margin-bottom:9px}.detail-bottom{border-top:1px solid var(--line);padding:55px 0 100px;display:flex;align-items:center;justify-content:space-between;gap:30px}.detail-bottom h2{font-size:clamp(2rem,3vw,3rem);margin:0}.simple-hero{padding:100px 0 50px}.simple-hero h1{max-width:1000px}.simple-hero p{font-size:1.3rem;color:var(--muted);max-width:850px}.projects-full{padding-top:30px}.projects-full>p{margin-top:30px}.contact-page{display:grid;grid-template-columns:38% 1fr;gap:10%;padding-block:100px 130px}.contact-page h1{font-size:clamp(3rem,4.5vw,5.5rem)}.contact-page-intro>p{color:var(--muted);font-size:1.2rem}.contact-direct{display:flex;flex-direction:column;margin-top:56px;gap:9px;overflow-wrap:anywhere}.contact-direct span{font-weight:700}.contact-direct a{color:var(--green)}.contact-form{padding:44px;background:var(--paper);display:flex;flex-direction:column;gap:24px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.contact-form label{display:flex;flex-direction:column;gap:7px;font-size:.91rem;font-weight:700;color:var(--navy)}.contact-form small{font-weight:500;color:var(--muted)}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{width:100%;border:1px solid #bdcbcc;background:#fff;border-radius:3px;padding:13px;color:var(--ink);min-height:49px}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{outline:2px solid #6baa91;outline-offset:1px}.contact-form .consent{flex-direction:row;align-items:flex-start;font-weight:500;color:var(--muted);font-size:.86rem;line-height:1.4}.consent input{margin-top:4px;accent-color:var(--green)}.form-actions{display:flex;align-items:center;gap:20px}.form-actions span{color:var(--muted);font-size:.82rem}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:1140px){.header-inner{gap:18px}nav{gap:12px}nav a{font-size:.83rem}.header-cta{padding:10px}.audience{display:block}.audience .section-intro{margin-bottom:40px}.hero-main{grid-template-columns:58% 42%}.hero h1{font-size:clamp(3rem,5vw,4.5rem)}}
@media(max-width:900px){.container{width:min(var(--max),calc(100% - 44px))}.header-inner{width:calc(100% - 44px);min-height:76px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:44px;margin-left:auto;border:0;background:none;cursor:pointer}.menu-toggle span{height:2px;width:25px;background:var(--navy)}nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;box-shadow:0 20px 30px rgba(0,0,0,.12);padding:23px;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{font-size:1rem;padding:12px}.mobile-contact{display:block}.header-actions{margin-left:0}.header-cta{display:none}.hero-main,.inner-hero-grid{display:flex;flex-direction:column}.hero-copy{padding:75px 0 60px}.hero h1{max-width:680px;font-size:clamp(3.2rem,8vw,5.6rem)}.hero-visual,.inner-image{height:400px;min-height:0;margin:0 -22px}.hero-rail{flex-wrap:wrap;gap:10px 25px;padding:19px 0}.hero-rail span{display:inline-block}.service-grid,.demo-grid{grid-template-columns:repeat(2,1fr)}.method,.about{grid-template-columns:1fr}.about-photo{max-height:480px}.contact-page{grid-template-columns:1fr;gap:45px}.contact-direct{margin-top:25px}.inner-hero-grid>div:first-child{padding:80px 0 50px}.detail-body{grid-template-columns:1fr;gap:10px}.detail-aside{display:none}}
@media(max-width:640px){.container{width:calc(100% - 38px)}.header-inner{width:calc(100% - 38px)}.brand-name{font-size:1.27rem}.brand-symbol{width:35px;height:35px}.hero-copy{padding:55px 0}.hero h1{font-size:clamp(2.85rem,11vw,4.3rem)}.hero-copy>p{font-size:1.12rem}.hero-visual,.inner-image{height:285px;margin:0 -19px}.hero-rail{display:none}.section{padding-block:70px}.split{display:block}.split>p{margin-top:22px}.audience-grid{grid-template-columns:1fr;gap:7px}.audience-grid article{padding:17px 0}.service-grid,.demo-grid,.steps{grid-template-columns:1fr}.service-card-image{height:245px}.method-lead h2{font-size:2.7rem}.contact-band>.container{grid-template-columns:1fr;gap:22px}.footer-top{flex-direction:column}.footer-bottom{margin-top:40px}.inner-hero h1,.simple-hero h1{font-size:3rem}.detail-bottom{flex-direction:column;align-items:flex-start}.form-grid{grid-template-columns:1fr}.contact-form{padding:24px}.form-actions{align-items:flex-start;flex-direction:column}.contact-page{padding-block:75px}.simple-hero{padding-top:75px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.detail-options{background:var(--paper)}.detail-options h2{max-width:870px}.option-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:45px}.option-grid article{background:#fff;padding:30px;min-height:245px;border-top:3px solid var(--green)}.option-grid span{font-size:.76rem;color:var(--green);font-weight:700}.option-grid h3{margin:25px 0 12px;font-size:1.35rem}.option-grid p{color:var(--muted);font-size:.95rem}
@media(max-width:900px){.option-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.option-grid{grid-template-columns:1fr}.option-grid article{min-height:0}}

/* Home photography: a quiet, full-bleed loop beside the editorial copy. */
.hero-visual{overflow:hidden;background:#274b55}
.hero-visual .hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transition:opacity 1.1s ease;will-change:opacity}
.hero-visual .hero-slide.is-active{opacity:1}
@media(prefers-reduced-motion:reduce){.hero-visual .hero-slide{transition:none}}

/* Four bespoke visual stages for the method, with no numeric labels. */
.steps{gap:16px;align-items:stretch}
.step{border:1px solid var(--line);border-radius:12px;padding:0 25px 28px;background:#fff;box-shadow:0 7px 28px rgba(23,54,74,.045);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.step:hover{transform:translateY(-4px);box-shadow:0 17px 38px rgba(23,54,74,.11)}
.step-art{height:150px;margin:0 -25px 25px;position:relative;display:grid;place-items:center;overflow:hidden;background:#e8f0e9}
.step-art:before{content:"";position:absolute;top:-100px;right:-48px;width:240px;height:240px;border:1px solid rgba(23,54,74,.14);border-radius:50%;box-shadow:0 0 0 30px rgba(255,255,255,.16),0 0 0 62px rgba(255,255,255,.12)}
.step-art svg{width:176px;height:132px;position:relative;z-index:1;stroke-linecap:round;stroke-linejoin:round}
.step-art .art-main{stroke:var(--navy);stroke-width:3.5}
.step-art .art-fine{stroke:#55817e;stroke-width:2.7}
.step-art .art-accent{stroke:#248c78;stroke-width:4}
.step-art .art-dot{fill:var(--lime);stroke:var(--navy);stroke-width:2}
.step-2 .step-art{background:#e5eef0}.step-2 .art-accent{stroke:#33829a}
.step-3 .step-art{background:#eaf0d6}.step-3 .art-accent{stroke:#608b40}
.step-4 .step-art{background:#f1eae0}.step-4 .art-accent{stroke:#b8794e}
.step h3{margin:0 0 11px;font-size:1.35rem;color:var(--navy)}
.step p{margin:0;line-height:1.55}
@media(max-width:900px){.method{gap:38px}}
@media(max-width:640px){.steps{gap:14px}.step-art{height:140px}}

/* More confident wordmark and clearer primary navigation. */
.header-inner{min-height:96px;gap:clamp(18px,2.2vw,34px)}
.brand{gap:12px}
.brand-symbol{width:50px;height:50px;border-radius:9px;transform:none;flex:none}
.brand-symbol svg{display:block;width:36px;height:36px}
.brand-name{font-size:1.75rem;letter-spacing:-.05em;text-transform:uppercase;line-height:1}
nav{gap:clamp(14px,1.55vw,25px)}
nav a{font-size:1.02rem;font-weight:650}
.header-actions{gap:17px}
@media(max-width:1180px){.header-inner{gap:16px}.brand-name{font-size:1.6rem}nav{gap:12px}nav a{font-size:.97rem}.header-cta{padding:11px 13px}}
@media(max-width:1050px){.header-inner{min-height:84px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:40px;height:44px;margin-left:auto;border:0;background:none;cursor:pointer}.menu-toggle span{height:2px;width:25px;background:var(--navy)}nav{display:none;position:absolute;top:84px;left:0;right:0;background:#fff;box-shadow:0 20px 30px rgba(0,0,0,.12);padding:23px;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav a{font-size:1.08rem;padding:12px}.mobile-contact{display:block}.header-cta{display:none}}
@media(max-width:900px){.header-inner{min-height:76px}nav{top:76px}}
@media(max-width:640px){.brand-name{font-size:1.39rem}.brand-symbol{width:41px;height:41px;border-radius:8px}.brand-symbol svg{width:30px;height:30px}.brand{gap:9px}}
@media(max-width:400px){.header-inner{gap:8px}.brand-name{font-size:1.2rem}.brand-symbol{width:37px;height:37px}.brand-symbol svg{width:27px;height:27px}.menu-toggle{width:35px}}

/* Flat, single-ink identity: an X with a diamond cut from its centre. */
.brand-symbol{width:47px;height:47px;background:transparent;border-radius:0;color:var(--navy)}
.brand-symbol svg{width:47px;height:47px}
.brand-name,.footer-brand{font-family:'IBM Plex Sans','DM Sans',sans-serif;font-weight:700;text-transform:uppercase;letter-spacing:.025em}
.brand-name{font-size:1.72rem;color:var(--navy)}
.footer-brand{letter-spacing:.035em}
@media(max-width:1180px){.brand-name{font-size:1.55rem}}
@media(max-width:640px){.brand-symbol,.brand-symbol svg{width:39px;height:39px}.brand-name{font-size:1.38rem}.brand{gap:8px}}
@media(max-width:400px){.brand-symbol,.brand-symbol svg{width:35px;height:35px}.brand-name{font-size:1.14rem}}

/* Conceptual portfolio: editorial photographs with explicit provenance. */
.demo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.demo-card{display:flex;flex-direction:column;color:var(--navy);text-decoration:none;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.demo-card:hover{transform:translateY(-5px);box-shadow:0 18px 34px rgba(23,54,74,.13)}
.demo-card-image{height:210px;overflow:hidden;background:#c9d6d2}
.demo-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.demo-card:hover img{transform:scale(1.045)}
.demo-copy{padding:25px 24px 26px;position:relative;flex:1}
.demo-copy .status{font-size:.65rem;letter-spacing:.11em;line-height:1.4}
.demo-copy h3{font:700 2rem 'IBM Plex Sans',sans-serif;letter-spacing:.045em;margin:19px 0 9px}
.demo-copy p{color:var(--muted);font-size:.92rem;line-height:1.45;margin:0 22px 0 0}
.demo-arrow{position:absolute;right:22px;bottom:22px;color:var(--green);font-size:1.25rem}
.demo-note{max-width:none;line-height:1.5;margin-top:23px}
.project-intro{background:var(--navy);color:#fff;padding:clamp(75px,8vw,118px) 0 clamp(60px,6vw,95px)}
.project-intro h1{max-width:900px;font-size:clamp(3.1rem,5.7vw,6.5rem);margin-bottom:24px}
.project-intro p{color:#dbe6e7;font-size:1.22rem;max-width:670px}
.project-disclosure{display:inline-block;margin-top:27px;padding:13px 18px;border-left:3px solid var(--lime);background:rgba(255,255,255,.09);font-size:.89rem;line-height:1.55;color:#e8eeee;max-width:750px}
.case-list{padding-block:75px 65px}
.case-row{display:grid;grid-template-columns:49% 51%;min-height:540px;margin-bottom:32px;background:var(--paper);scroll-margin-top:25px}
.case-row:nth-child(even){background:#ebf1ee}
.case-row:nth-child(even) .case-media{order:2}
.case-media{margin:0;min-width:0;display:flex;flex-direction:column;background:#dbe5e0}
.case-media img{width:100%;height:100%;min-height:500px;flex:1;object-fit:cover}
.case-media figcaption{padding:10px 18px;background:#fff;color:#52666c;text-transform:uppercase;letter-spacing:.13em;font-size:.64rem;font-weight:700}
.case-copy{padding:clamp(35px,5vw,70px);display:flex;flex-direction:column;align-items:flex-start}
.case-category{text-transform:uppercase;letter-spacing:.14em;color:var(--green);font-size:.69rem;font-weight:700}
.case-name{font:700 clamp(3rem,5vw,5.4rem)/1 'IBM Plex Sans',sans-serif;letter-spacing:.015em;color:var(--navy);margin:20px 0 4px}
.case-copy h2{font-size:clamp(1.7rem,2.5vw,2.75rem);margin:10px 0 16px;max-width:550px}
.case-summary{font-size:1.07rem;line-height:1.55;color:#3f535c;max-width:580px;margin-bottom:25px}
.case-detail{border-top:1px solid #c8d6d5;width:100%;padding:14px 0 0}
.case-detail h3,.case-outputs h3{font:700 .72rem 'DM Sans',sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--green);margin:0 0 6px}
.case-detail p{font-size:.94rem;line-height:1.5;color:var(--muted);margin:0 0 14px}
.case-outputs{border-top:1px solid #c8d6d5;width:100%;padding-top:16px;margin-top:2px}
.case-outputs ul{display:flex;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin:7px 0 0}
.case-outputs li{padding:7px 10px;background:#fff;border:1px solid #d4dfdd;border-radius:3px;color:var(--navy);font-size:.76rem;font-weight:600}
@media(max-width:1120px){.demo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-copy{padding:38px}.case-media img{min-height:450px}}
@media(max-width:760px){.case-list{padding-block:42px 20px}.case-row{grid-template-columns:1fr;margin-bottom:23px;min-height:0}.case-row:nth-child(even) .case-media{order:0}.case-media img{height:300px;min-height:0;flex:none}.case-copy{padding:30px 26px 35px}.case-name{font-size:3.6rem}.case-copy h2{font-size:2.1rem}.project-intro p{font-size:1.1rem}}
@media(max-width:640px){.demo-grid{grid-template-columns:1fr}.demo-card-image{height:240px}.case-media img{height:260px}.case-name{font-size:3.15rem}}
