@font-face{font-family:Montserrat;src:url('assets/fonts/Montserrat-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Montserrat;src:url('assets/fonts/Montserrat-Bold.ttf') format('truetype');font-weight:700;font-display:swap}@font-face{font-family:Source Sans Pro;src:url('assets/fonts/SourceSansPro-Regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Source Sans Pro;src:url('assets/fonts/SourceSansPro-Semibold.ttf') format('truetype');font-weight:600;font-display:swap}
:root{--white:#FBFBFF;--ink:#040F16;--muted:#59656c;--indigo:#0B4F6C;--indigo-dark:#07394e;--stone:#E8E5DF;--stone-light:#F4F2EE;--line:#dfe3e5;--cyan:#01BAEF;--red:#B80C09;--max:1180px;--heading:Montserrat,Arial,sans-serif;--body:'Source Sans Pro',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#fff;color:var(--ink);font:18px/1.55 var(--body),Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.skip-link{position:absolute;left:-999px;top:0}.skip-link:focus{left:12px;z-index:99;background:#fff;padding:12px}.site-header{height:82px;padding:0 max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.96);border-bottom:1px solid #f0f0f1;position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.wordmark{font:700 25px/1 var(--heading);letter-spacing:-1.5px;color:var(--indigo)}.wordmark span{color:#9e9587}.nav{display:flex;align-items:center;gap:30px;font-size:15px;color:#50535a}.nav a{transition:color .2s}.nav a:hover,.text-link:hover{color:var(--indigo)}.nav-contact{font-weight:600;color:var(--indigo)!important}.nav-contact span,.text-link span,.button span,.case-open span,.insight-preview span{margin-left:8px}.menu-toggle{display:none;background:none;border:0;color:var(--indigo);font-size:25px}.section-wrap{width:min(var(--max),calc(100% - 48px));margin:0 auto}.hero-shell{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(128deg,#E8E5DF 0%,#F0EEEA 46%,#FBFBFF 100%)}.hero-shell:after{content:"";position:absolute;z-index:-1;left:-8%;right:-8%;bottom:-110px;height:190px;background:#FBFBFF;border-radius:50% 50% 0 0 / 34% 34% 0 0;transform:rotate(-2.2deg)}.hero{padding:92px 0 58px}.language-switch{display:flex;gap:9px;align-items:center;font-size:12px;letter-spacing:.08em;color:#8a9296}.language-switch a{padding:6px 2px}.language-switch .language-active{font-weight:700;color:var(--indigo);border-bottom:1px solid var(--cyan)}.capabilities{padding-top:74px;padding-bottom:76px}.capabilities-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:30px}.capabilities-heading h2{font-size:clamp(34px,4.2vw,50px);margin:13px 0 0;letter-spacing:-2px}.capabilities-heading h2 em{font-style:normal;color:var(--indigo)}.capabilities-heading>p{max-width:360px;color:var(--muted);margin:0 0 5px}.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.capability-card{position:relative;min-height:290px;padding:26px 25px 24px;border:1px solid #e3e5e6;background:rgba(255,255,255,.74);transition:transform .2s,border-color .2s,box-shadow .2s}.capability-card:hover{transform:translateY(-3px);border-color:#a7c4cf;box-shadow:0 12px 32px rgba(4,15,22,.045)}.capability-icon{width:43px;height:43px;color:var(--indigo);margin-bottom:23px}.capability-icon svg{width:100%;height:100%}.capability-number{font:600 10px var(--heading);letter-spacing:1.2px;color:#75858b}.capability-card h3{font-size:24px;line-height:1.2;letter-spacing:-.8px;margin:10px 0 16px;color:var(--ink)}.capability-card ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}.capability-card li{font-size:14px;line-height:1.35;color:#59656c;padding-left:14px;position:relative}.capability-card li:before{content:"";position:absolute;left:0;top:.55em;width:5px;height:5px;background:var(--cyan);border-radius:50%}.eyebrow{display:flex;align-items:center;gap:11px;color:var(--indigo);font:600 11px/1.4 var(--heading);letter-spacing:1.6px;text-transform:uppercase}.eyebrow-line{display:inline-block;width:28px;height:2px;background:var(--indigo)}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:var(--heading);font-weight:600;letter-spacing:-.045em;line-height:1.15}h1{font-size:clamp(48px,7.1vw,88px);max-width:950px;margin:28px 0 38px;color:var(--ink)}h1 em,h2 em{font-style:normal;color:var(--indigo)}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:36px}.hero-intro{max-width:620px;font-size:22px;line-height:1.45;margin:0;color:#555962}.hero-actions{display:flex;align-items:center;gap:24px;white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 19px;border-radius:3px;font:600 14px var(--heading);transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--indigo);color:#fff}.button-primary:hover{background:var(--indigo-dark)}.button-outline{border:1px solid var(--indigo);color:var(--indigo)}.button-outline:hover{background:var(--stone)}.text-link{font-size:15px;font-weight:600;color:var(--indigo);white-space:nowrap}.hero-rule{display:flex;gap:28px;align-items:center;border-top:1px solid var(--line);margin-top:72px;padding-top:16px;font-size:13px;color:#747780}.rule-right{margin-left:auto}.proof-strip{background:var(--stone);padding:27px 24px 15px}.proof-inner{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.proof-inner div{display:flex;flex-direction:column;border-right:1px solid #d4cec4;padding-right:20px}.proof-inner div:last-child{border:0}.proof-inner strong{font:700 clamp(26px,3vw,37px)/1.15 var(--heading);letter-spacing:-1.5px;color:var(--indigo)}.proof-inner span{font-size:14px;line-height:1.35;color:#55565b;margin-top:8px;max-width:220px}.metric-footnote{max-width:var(--max);margin:17px auto 0;font-size:12px;color:#6d6a65}.section-pad{padding-top:105px;padding-bottom:105px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:38px}.section-heading h2,.about-layout h2,.contact-row h2{font-size:clamp(36px,4.5vw,56px);margin:15px 0 0;letter-spacing:-2.2px}.section-heading>p{max-width:365px;color:var(--muted);margin:0 0 4px}.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.filter{background:#fff;border:1px solid var(--line);border-radius:99px;padding:8px 14px;font-size:14px;color:#555962}.filter:hover,.filter.active{background:var(--indigo);border-color:var(--indigo);color:#fff}.case-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.case-card{border:1px solid var(--line);padding:27px 29px 20px;min-height:355px;display:flex;flex-direction:column;position:relative;transition:border-color .2s,transform .2s;background:#fff}.case-card:hover{border-color:#aaaec1;transform:translateY(-2px)}.case-card.featured{background:var(--stone-light)}.case-top{display:flex;justify-content:space-between;align-items:center}.case-index{font:600 12px var(--heading);color:#858791}.tag{font:600 10px var(--heading);letter-spacing:1.1px;color:var(--indigo);background:#efedf3;padding:7px 9px}.case-metric{font:400 clamp(24px,4vw,32px)/1.1 var(--heading);letter-spacing:-2px;color:var(--indigo);margin:30px 0 13px}.case-metric small{font:600 13px var(--body);letter-spacing:0;color:#666a74}.case-card h3{font-size:22px;letter-spacing:-.8px;max-width:480px;margin-bottom:11px}.case-card>p{font-size:16px;color:#656871;max-width:530px;margin-bottom:16px}.case-open,.insight-preview{border:0;background:transparent;color:var(--indigo);padding:0;text-align:left;font-size:14px;font-weight:600;margin-top:auto;align-self:flex-start}.case-open:hover,.insight-preview:hover{text-decoration:underline}.case-bottom{border-top:1px solid #e1e1e3;padding-top:13px;margin-top:23px;display:flex;justify-content:space-between;gap:12px;color:#7b7d84;font-size:12px}.portfolio-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);margin-top:30px;padding-top:24px}.portfolio-cta p{margin:0;color:#555962}.lab-section{background:var(--indigo-dark);color:#fff}.lab-section .eyebrow{color:#c7c9db}.lab-section .section-heading>p{color:#c5c6d1}.lab-section h2{color:#fff}.lab-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px}.lab-copy,.journey-visual{border:1px solid rgba(255,255,255,.2);padding:30px}.tag-dark{background:rgba(255,255,255,.12);color:#e1e2ed}.lab-copy h3{font-size:29px;margin:25px 0 13px;max-width:470px}.lab-copy>p{color:#d1d2dc;font-size:16px}.journey-controls{display:flex;gap:7px;margin:25px 0}.journey-step{flex:1;text-align:left;border:1px solid rgba(255,255,255,.22);color:#e1e2ed;background:transparent;padding:10px 11px;font-size:13px}.journey-step span{display:block;font:600 10px var(--heading);opacity:.65;margin-bottom:4px}.journey-step.selected{background:var(--stone);border-color:var(--stone);color:var(--indigo-dark)}.journey-detail{background:rgba(255,255,255,.07);padding:20px}.detail-label{font:600 10px var(--heading);letter-spacing:1.2px;color:#b9bdd5}.journey-detail h4{font-size:21px;margin:10px 0}.journey-detail p{color:#d7d8e2;font-size:15px}.detail-row{border-top:1px solid rgba(255,255,255,.18);padding:10px 0 0;margin-top:10px;display:flex;flex-direction:column;gap:3px}.detail-row span{font-size:12px;color:#b9bdd5}.detail-row strong{font-size:14px;font-weight:600}.journey-visual{background:rgba(255,255,255,.035);display:flex;flex-direction:column}.visual-head{display:flex;justify-content:space-between;font:600 10px var(--heading);letter-spacing:1.1px;color:#c6c8d7}.live-dot{color:#d5cbb7}.funnel{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;padding:20px 0}.funnel-step{width:86%;max-width:380px;border:1px solid rgba(255,255,255,.22);padding:15px 20px;display:grid;grid-template-columns:1fr auto;gap:5px 10px;transition:all .25s}.funnel-step span{font:600 10px var(--heading);letter-spacing:1px;text-transform:uppercase;color:#c7c9d9}.funnel-step b{grid-column:1;font:600 16px var(--heading)}.funnel-step i{grid-column:2;grid-row:1/3;align-self:center;font-style:normal;font-size:12px;color:#c6c8d7}.funnel-step.active{background:var(--stone);border-color:var(--stone);color:var(--indigo-dark)}.funnel-step.active span,.funnel-step.active i{color:#68687a}.funnel-connector{height:19px;width:1px;background:rgba(255,255,255,.35)}.visual-note{font-size:13px;color:#c6c8d7;border-top:1px solid rgba(255,255,255,.16);padding-top:15px;margin:0}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.insight-card{border-top:2px solid var(--indigo);padding:22px 20px 20px;background:#faf9f7;min-height:300px;display:flex;flex-direction:column}.insight-meta{display:flex;justify-content:space-between;color:#737783;font:600 10px var(--heading);letter-spacing:1px}.insight-card h3{font-size:23px;line-height:1.28;margin:28px 0 13px;letter-spacing:-.7px}.insight-card p{font-size:15px;color:#656871}.insight-preview{margin-top:auto;padding-top:15px}.about-section{background:var(--stone-light)}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px}.about-layout h2{line-height:1.25}.about-copy p{color:#555962}.about-tags{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.about-tags span{padding:7px 10px;border:1px solid #d6d1c8;border-radius:2px;font-size:12px;color:#4e5159}.contact-section{padding-top:95px;padding-bottom:85px}.contact-row{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-top:22px}.contact-row h2{font-size:clamp(40px,5.5vw,68px)}.contact-details{max-width:350px;display:flex;align-items:flex-start;flex-direction:column;gap:14px}.contact-details p{color:#5f626a;font-size:16px}.contact-details small{color:#8a8c92;font-size:11px}.site-footer{border-top:1px solid var(--line);min-height:80px;padding:18px max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;justify-content:space-between;gap:20px;color:#777a82;font-size:12px}.site-footer .wordmark{font-size:22px}.detail-dialog{width:min(760px,calc(100% - 32px));max-height:88vh;overflow:auto;border:0;padding:42px;background:#fff;color:var(--ink);box-shadow:0 22px 100px #1114}.detail-dialog::backdrop{background:#1b1e2bc9;backdrop-filter:blur(3px)}.dialog-close{position:absolute;top:10px;right:15px;border:0;background:none;font-size:32px;color:#777}.dialog-kicker{font:600 10px var(--heading);letter-spacing:1.3px;color:var(--indigo);text-transform:uppercase}.detail-dialog h2{font-size:clamp(30px,4vw,42px);margin:14px 0}.dialog-summary{font-size:19px;color:#5b5f68;max-width:620px}.dialog-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:26px}.dialog-columns>div{border-top:1px solid var(--line);padding-top:14px}.dialog-columns p{font-size:15px;color:#555962;margin-top:9px}.dialog-caveat{background:var(--stone-light);padding:13px 15px;color:#66635e;font-size:13px;margin:24px 0 0}.article-dialog ol{padding-left:22px}.article-dialog li{padding:5px 0;color:#555962}.article-dialog .dialog-caveat{background:transparent;border-top:1px solid var(--line);padding-left:0}.hidden{display:none!important}
@media(max-width:800px){.capabilities-heading,.section-heading{grid-template-columns:1fr;gap:14px}.section-statement{font-size:clamp(18px,3vw,22px)}.site-header{height:70px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:69px;left:0;right:0;background:#fff;padding:20px 24px 24px;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:17px}.nav.open{display:flex}.hero{padding-top:75px}.hero-bottom,.section-heading,.contact-row{align-items:flex-start;flex-direction:column}.hero-intro{font-size:20px}.hero-actions{flex-wrap:wrap}.hero-rule{flex-wrap:wrap;gap:10px 20px;margin-top:48px}.rule-right{margin-left:0}.proof-inner{grid-template-columns:repeat(2,1fr);row-gap:25px}.proof-inner div:nth-child(2){border:0}.section-pad{padding-top:75px;padding-bottom:75px}.case-grid,.lab-layout,.about-layout{grid-template-columns:1fr}.case-card{min-height:320px}.lab-layout{gap:12px}.about-layout{gap:28px}.insight-grid{grid-template-columns:1fr}.insight-card{min-height:250px}.contact-row{gap:25px}.contact-details{max-width:500px}.portfolio-cta{align-items:flex-start;flex-direction:column}.site-footer{flex-wrap:wrap}.site-footer>span:nth-child(2){order:3;width:100%}}
@media(max-width:480px){body{font-size:16px}.section-wrap{width:calc(100% - 36px)}.hero{padding-top:60px}h1{font-size:45px;letter-spacing:-2.2px;margin:22px 0 28px}.hero-actions{gap:17px}.hero-rule{font-size:11px}.proof-strip{padding-left:18px;padding-right:18px}.proof-inner strong{font-size:27px}.proof-inner span{font-size:12px}.section-heading h2,.about-layout h2{font-size:35px}.case-card{padding:22px 20px 18px}.case-metric{margin-top:24px}.lab-copy,.journey-visual{padding:20px}.journey-step{padding:9px 7px;font-size:11px}.funnel-step{width:100%;padding:13px}.funnel-step b{font-size:13px}.funnel-step i{font-size:10px}.dialog-columns{grid-template-columns:1fr;gap:10px}.detail-dialog{padding:32px 23px}.site-footer{padding-left:18px;padding-right:18px}}

/* Editorial portfolio refinement: lighter, more project-led, less dashboard-like */
:root{--max:1120px;--stone:#eae5dc;--stone-light:#fff;--line:#e4e3e0}
.site-header{height:76px;border-bottom-color:#e9e7e3}
.hero{padding-top:96px;padding-bottom:30px}
h1{font-size:clamp(46px,6.6vw,78px);max-width:970px;line-height:1.12;margin-top:25px;margin-bottom:29px;letter-spacing:-.055em}
.hero-intro{max-width:650px;font-size:21px;color:#555962}
.hero-rule{margin-top:50px}
.proof-strip{background:#fff;padding-top:28px;padding-bottom:23px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.proof-inner div{border-right:1px solid var(--line);padding:4px 22px 4px 0}
.proof-inner strong{font-size:clamp(25px,2.7vw,34px)}
.metric-footnote{margin-top:12px;color:#77746e}
.section-pad{padding-top:86px;padding-bottom:86px}
.section-heading{margin-bottom:32px}
.capabilities-heading,.section-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:42px;align-items:end}
.section-statement{font:500 clamp(19px,2.3vw,25px)/1.45 var(--heading);letter-spacing:-.035em;color:var(--ink);margin:0;max-width:700px}
.capabilities-heading .eyebrow,.section-heading .eyebrow{margin-bottom:0}
.case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}
.case-card{border:0;border-top:1px solid #d9d8d5;padding:26px 8px 21px;min-height:340px;transition:background .2s;}
.case-card:hover{border-color:#c7c5c0;transform:none;background:#fbfaf8}
.case-card.featured{background:#fff}
.case-card.featured:hover{background:#fbfaf8}
.case-metric{margin-top:24px;margin-bottom:14px}
.tag{background:var(--stone);border:1px solid var(--stone);border-radius:7px;padding:6px 10px}
.case-bottom{border-top:1px solid #e7e5e1}
.portfolio-cta{margin-top:22px}
.lab-section{background:#fff;color:var(--ink);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.lab-section .eyebrow{color:var(--indigo)}
.lab-section .section-heading>p{color:var(--muted)}
.lab-section h2{color:var(--ink)}
.lab-layout{gap:26px}
.lab-copy,.journey-visual{border:1px solid #dedbd4;background:#fff;color:var(--ink);padding:28px}
.lab-copy h3{font-size:28px}
.lab-copy>p{color:#62656d}
.tag-dark{background:var(--stone);color:var(--indigo);border:0}
.journey-step{border:1px solid #dcd9d2;color:#4f535c;background:#fff}
.journey-step.selected{background:var(--indigo);border-color:var(--indigo);color:#fff}
.journey-detail{background:#f6f4ef;color:var(--ink)}
.journey-detail h4{color:var(--ink)}
.journey-detail p{color:#62656d}
.detail-label{color:var(--indigo)}
.detail-row{border-top:1px solid #e0ddd6}
.detail-row span{color:#77736c}
.detail-row strong{color:var(--ink)}
.visual-head{color:#686b73}
.live-dot{color:var(--indigo)}
.funnel-step{border-color:#dedbd4;color:var(--ink)}
.funnel-step span{color:var(--indigo)}
.funnel-step i{color:#77736c}
.funnel-step.active{background:var(--stone);border-color:var(--stone);color:var(--indigo-dark)}
.funnel-step.active span,.funnel-step.active i{color:#68687a}
.funnel-connector{background:#c9c5bd}
.visual-note{color:#696b71;border-top-color:#e1ded7}
.insight-grid{gap:24px}
.insight-card{background:#fff;border-top:1px solid var(--line);padding:21px 0 16px;min-height:285px}
.insight-card h3{font-size:22px}
.about-section{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.about-tags span{border-color:#dedbd4}
.contact-section{padding-top:82px;padding-bottom:76px}
.site-footer{border-top:1px solid var(--line)}
@media(min-width:1050px){.case-grid .case-card:nth-child(1),.case-grid .case-card:nth-child(2){min-height:375px}.case-grid .case-card:nth-child(1){padding-right:30px}.case-grid .case-card:nth-child(2){padding-left:30px}}
@media(max-width:800px){.capabilities-heading,.section-heading{grid-template-columns:1fr;gap:14px}.section-statement{font-size:clamp(18px,3vw,22px)}.hero{padding-top:70px}.section-pad{padding-top:68px;padding-bottom:68px}.case-grid{grid-template-columns:1fr}.case-card{min-height:0!important;padding:24px 0}.lab-copy,.journey-visual{padding:22px}}
@media(max-width:480px){h1{font-size:42px;letter-spacing:-1.8px}.hero-intro{font-size:19px}.proof-inner div{padding-right:12px}.case-card{padding:22px 0}}

@media(max-width:760px){.hero{padding:65px 0 42px}.hero-shell:after{bottom:-135px;height:175px}.capabilities{padding-top:50px;padding-bottom:58px}.capabilities-heading{display:block}.capabilities-heading>p{margin-top:18px}.capability-grid{grid-template-columns:1fr}.capability-card{min-height:0;padding:23px}.capability-icon{margin-bottom:16px}.language-switch{margin-left:auto;margin-right:16px}}

/* Hero headline: restrained one-time reveal */
.hero-title-lead{display:inline-block}
.hero-title-reveal{display:inline-block;position:relative;animation:heroPhraseReveal .85s cubic-bezier(.2,.7,.2,1) .18s both}
@keyframes heroPhraseReveal{from{opacity:0;transform:translateY(.18em);filter:blur(3px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@media(prefers-reduced-motion:reduce){.hero-title-reveal{animation:none;opacity:1;transform:none;filter:none}}

/* v9: make key section headers more prominent and place supporting copy beneath */
.capabilities-heading,
#work .section-heading{
  display:block;
  margin-bottom:34px;
}
.capabilities-heading .eyebrow,
#work .section-heading .eyebrow{
  font-size:clamp(27px,3vw,33px);
  line-height:1.15;
  letter-spacing:-.045em;
  gap:0;
}
.capabilities-heading .section-statement,
#work .section-heading .section-statement{
  margin-top:13px;
  max-width:760px;
  font:400 clamp(15px,1.45vw,17px)/1.55 var(--body),Arial,sans-serif;
  letter-spacing:0;
  color:var(--muted);
}
@media(max-width:800px){
  .capabilities-heading,
  #work .section-heading{display:block;}
  .capabilities-heading .eyebrow,
  #work .section-heading .eyebrow{font-size:clamp(25px,6vw,30px);}
  .capabilities-heading .section-statement,
  #work .section-heading .section-statement{margin-top:12px;font-size:16px;}
}

/* v11: selected-work section transitions from pale yellow to white */
#work.section-wrap{
  width:100%;
  max-width:none;
  padding-left:max(24px,calc((100vw - var(--max))/2));
  padding-right:max(24px,calc((100vw - var(--max))/2));
  background:linear-gradient(180deg,#F6F5AE 0%,#F9F9D9 42%,#FBFBFF 100%);
}

/* Rounded Rectangle Case Cards with Spacing */
.case-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px; /* Adds explicit row & column spacing between cards */
}

.case-card {
  border: 1px solid var(--line);
  border-radius: 12px; /* Gives each card smooth rounded corners */
  padding: 28px;
  background: #ffffff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.03); /* Subtle depth separation */
  transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
  overflow: hidden;
}

/* Hover state for rounded cards */
.case-card:hover {
  transform: translateY(-4px);
  border-color: #c7c5c0;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.07);
  background: #ffffff;
}

/* Remove side padding overrides on desktop layouts */
@media (min-width: 1050px) {
  .case-grid .case-card:nth-child(1),
  .case-grid .case-card:nth-child(2) {
    padding-left: 28px;
    padding-right: 28px;
  }
}

/* Mobile responsive layout */
@media (max-width: 800px) {
  .case-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .case-card {
    padding: 22px;
  }
}

/* Homepage Data & AI Lab: simplified single-panel layout */
.lab-layout-single{grid-template-columns:minmax(0,1fr);max-width:860px}
.lab-layout-single .lab-copy{width:100%}
