@font-face{font-family:Manrope;src:url('media/Manrope.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}

/* Personal portfolio shell. Product media and product-specific colors remain untouched. */
:root{--paper:#f5f4f0;--paper-ink:#222426;--quiet:#767a7b;--hair:#d7d8d4;--gutter:clamp(24px,5.4vw,100px);--page:1600px;--pad:var(--gutter);font-family:Manrope,"Segoe UI",Arial,sans-serif}
html{scroll-behavior:smooth}body{font-family:Manrope,"Segoe UI",Arial,sans-serif;letter-spacing:-.018em}h1,h2,h3{font-weight:500;letter-spacing:-.06em}em{font-family:inherit;font-style:normal}strong{font-weight:600}.eyebrow{font:600 11px/1.5 Manrope,"Segoe UI",sans-serif;letter-spacing:.03em;text-transform:none}.text-link{font-size:14px}
body[data-page=work],body[data-page=about],body[data-page=archive],body[data-page=case]{background:var(--paper);color:var(--paper-ink);color-scheme:light}
.site-header{border:0;background:transparent;position:absolute;inset:0 0 auto;z-index:30}.header-inner{height:94px}.brand{font-size:16px;letter-spacing:-.04em;font-weight:700}.brand-mark{color:inherit}.nav{gap:clamp(23px,3vw,55px)}.nav a{font-size:13px;font-weight:600;color:inherit;opacity:.84;position:relative}.nav a::after{content:"";position:absolute;left:0;right:100%;height:1px;bottom:-8px;background:currentColor;transition:right .28s}.nav a:hover,.nav a[aria-current]{color:inherit;opacity:1}.nav a:hover::after,.nav a[aria-current]::after{right:0}.site-footer{font-size:12px;letter-spacing:0}.site-footer a:hover{color:inherit;text-decoration:underline}
body[data-page=home] .site-header{color:#f9f9f6}body[data-page=work] .site-header,body[data-page=about] .site-header,body[data-page=archive] .site-header,body[data-page=case] .site-header{color:var(--paper-ink)}

/* Home: name first, product evidence later. */
.hero{width:100%;max-width:none;min-height:0;height:min(900px,100svh);padding:0;position:relative;background:#141c27;color:#fff;overflow:hidden;display:block}
.hero-portrait{position:absolute;inset:0 auto auto 50%;transform:translateX(-50%);width:auto;height:108%;max-width:none;object-fit:cover;object-position:center 28%;filter:saturate(.82)}
@media(min-width:1024px){.hero-portrait{top:-60px;height:140%;mask-image:linear-gradient(90deg,transparent 0%,#000 9%,#000 91%,transparent 100%)}}
@media(max-width:760px){.hero-portrait{top:0;mask-image:linear-gradient(90deg,transparent 0%,#000 10%,#000 90%,transparent 100%)}}
.hero::before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#11192396,transparent 28%,transparent 74%,#11192369),linear-gradient(180deg,#10172045,transparent 45%,#1017206a);pointer-events:none}
.hero-meta{position:absolute;top:28%;left:0;right:0;display:flex;justify-content:space-between;gap:30px;font-size:clamp(15px,1.5vw,22px);font-weight:600;line-height:1.35;z-index:2}.hero-meta span:last-child{margin-right:6vw}
.hero-namefield{position:absolute;left:0;right:0;bottom:8.5%;overflow:hidden;z-index:2}.hero h1{font-size:clamp(100px,15.4vw,260px);line-height:.87;letter-spacing:-.1em;font-weight:500;white-space:nowrap;margin:0 0 0:-.04em;max-width:none}.hero h1 span{display:block}.hero h1 span:first-child{margin-left:2.2vw}.hero h1 span:last-child{margin-left:12vw}.hero-period{display:inline!important;margin:0!important;color:#e7e9e5}.hero-foot{position:absolute;bottom:17px;left:0;right:0;display:flex;justify-content:space-between;gap:20px;font-size:11px;font-weight:600;line-height:1.4;z-index:2}
.intro-statement{background:var(--paper);color:var(--paper-ink);padding-block:clamp(140px,18vw,300px);display:grid;grid-template-columns:1fr 2.05fr;gap:clamp(30px,5vw,90px)}.intro-arrow{font-size:clamp(32px,3vw,50px);line-height:1}.intro-statement h2{font-size:clamp(32px,4.3vw,70px);line-height:1.19;max-width:1000px;margin:0 0 35px;letter-spacing:-.055em}.intro-statement p{max-width:540px;font-size:clamp(16px,1.4vw,20px);line-height:1.55;color:#606668}.round-link{margin-top:28px;display:inline-flex;align-items:center;justify-content:center;gap:12px;width:132px;height:132px;border-radius:50%;background:#27292b;color:#fff;font-size:13px;transition:transform .35s,background .35s}.round-link:hover{transform:scale(1.08);background:#3b3d3d}
.selected-section{padding:0 0 clamp(100px,12vw,190px);background:var(--paper);color:var(--paper-ink)}.selected-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:55px}.selected-heading .eyebrow{margin:0 0 12px;color:#626769}.selected-heading h2{font-size:clamp(47px,6vw,100px);margin:0;line-height:1}.selected-heading h2 span{color:#8c9090}
.selected-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(55px,7vw,110px) clamp(22px,3vw,45px);padding-inline:var(--gutter);max-width:var(--page);margin-inline:auto}.featured,.featured:nth-child(even){display:block;min-width:0}.featured:first-child{grid-column:1/-1}.featured:nth-child(even) .featured-image{order:initial}.featured-image,.featured:nth-child(3n+2) .featured-image{aspect-ratio:1.38;background:#dedfdc}.featured:first-child .featured-image{aspect-ratio:1.8}.featured-image::after{font-size:20px;right:20px;top:15px}.featured img{object-fit:cover;object-position:top}.featured-copy{padding:19px 0 0}.featured-copy>div{display:flex;justify-content:space-between;gap:20px;color:#656b6c;font-size:12px}.featured-index{font-variant-numeric:tabular-nums}.featured h3{font-size:clamp(26px,3.3vw,50px);margin:12px 0 8px;line-height:1.15}.featured h3 span{font-size:.6em;vertical-align:8%;margin-left:5px}.featured-copy>p{font-size:14px!important;color:#626869!important;margin:0}.all-work-link{margin-top:clamp(90px,12vw,170px);border-color:#b5b9b8;font-size:clamp(24px,3vw,45px);padding:35px 0}.all-work-link span:last-child{color:#626869}.all-work-link b{color:inherit}
.about-section{background:#ebeae6;color:#222}.about-grid{padding-block:0}.about-grid h2 em{color:#8a8c8b}

/* Quiet, open Work and Archive tables. */
.work-page,.archive-page,.about-page{padding-top:clamp(175px,19vw,310px);padding-bottom:clamp(100px,12vw,190px)}.page-intro{max-width:1100px;margin-bottom:clamp(80px,10vw,155px)}.page-intro .eyebrow{color:#707576;margin-bottom:38px}.work-page .page-intro h1,.archive-page .page-intro h1{font-size:clamp(60px,7vw,118px);line-height:1.09;margin:0 0 38px;letter-spacing:-.065em}.work-page .page-intro h1 span{color:#a7aaa8}.archive-page .page-intro h1 small{font-size:.29em;vertical-align:top;letter-spacing:0;color:#777b7b;margin-left:12px}.work-page .page-intro>p:last-child,.archive-page .page-intro>p:last-child{font-size:clamp(16px,1.5vw,21px);line-height:1.55;color:#626869;max-width:710px}
.work-filters{gap:10px;margin-bottom:clamp(65px,7vw,115px);overflow-x:auto}.work-filters button{border:1px solid #d6d8d4;border-radius:100px;background:transparent;color:#474b4c;padding:12px 23px;font-size:13px;transition:background .25s,color .25s}.work-filters button:hover{background:#e8e9e5;color:#222}.work-filters button[aria-pressed=true]{background:#242628;color:#fff;border-color:#242628}.work-filters span{font:inherit;color:inherit;margin-left:5px}
.work-table-head,.archive-head,.project-row{grid-template-columns:minmax(0,1.4fr) minmax(110px,.55fr) minmax(160px,.9fr) minmax(90px,.45fr);gap:20px}.work-table-head,.archive-head{border-bottom:1px solid #aeb3b1;color:#868b8a;font:600 10px Manrope,sans-serif;letter-spacing:.04em;padding-bottom:24px}.project-row{border-bottom:1px solid #d2d5d2;min-height:115px;transition:color .25s,transform .25s}.project-row::before{background:#e7e9e5}.project-row:hover,.project-row:focus-visible{padding-inline:0;transform:translateX(6px)}.project-row-name strong{font-weight:500;font-size:clamp(26px,2.8vw,42px)}.project-row-category,.project-row-type,.project-row-evidence{color:#555c5c;font-size:13px;line-height:1.45}.row-preview{right:10%;box-shadow:0 24px 45px #1113}.archive-rows .project-row{min-height:88px}.archive-rows .project-row-name strong{font-size:clamp(21px,2.2vw,31px)}.archive-entry{border-color:#aeb3b1;color:#222;font-size:clamp(22px,2.6vw,37px)}.archive-entry span:last-child{color:#555e5f}.archive-entry small{font-size:13px;color:#787e7d}.archive-entry:hover{color:#555e5f}
.work-rows .row-preview{right:auto;left:var(--preview-x,62%);top:var(--preview-y,50%);transform:translate(-15%,-47%) scale(.94)}.work-rows .project-row:hover .row-preview,.work-rows .project-row:focus-visible .row-preview{transform:translate(-15%,-50%) scale(1)}
.project-row-name{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.project-row-name small{font:400 12px/1.45 Manrope,sans-serif;color:#626968;letter-spacing:0;max-width:520px}.archive-rows .project-row-name small{font-size:11px}.case-title .case-deck{max-width:850px;margin:-50px 0 75px;font-size:clamp(17px,1.55vw,22px);line-height:1.5;color:#616867}.case-story-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:55px;border-top:1px solid #bdc2be;padding-top:24px}.case-story-facts h3{margin:0 0 12px;font:600 12px Manrope,sans-serif;text-transform:uppercase;letter-spacing:.07em}.case-story-facts p{font-size:clamp(14px,1.1vw,16px);line-height:1.55;margin:0}.case-fallback{padding:180px 0 80px}.case-fallback h1{font-size:clamp(48px,8vw,110px)}@media(max-width:760px){.project-row-name small{font-size:11px}.case-title .case-deck{margin:-35px 0 50px}.case-story-facts{grid-template-columns:1fr;gap:24px}}

/* About: large statement, numbered services, no cards. */
.about-page h1{font-size:clamp(58px,7.2vw,116px);line-height:1.06;max-width:1300px;margin:35px 0 clamp(85px,12vw,180px)}.about-page h1 span{color:#9b9f9d}.about-page-lead{border-top:1px solid #bdc2be;padding-top:45px}.about-page-lead>span{font:600 12px/1.6 Manrope,sans-serif;color:#6b7170;text-transform:none}.about-page-lead>p{font-weight:500;line-height:1.35}.about-page-statement{color:#5a6160}.about-services{border-color:#afb5b1}.about-services>div{border-color:#cbd0cd;padding:38px 0}.about-services span{font:600 12px Manrope,sans-serif;color:#6b7271}.about-services p{color:#5d6563}

/* Every case starts with title and factual metadata, followed by real product media. */
.case-title{padding-top:clamp(175px,18vw,300px);padding-bottom:clamp(45px,6vw,95px)}.case-title .back-link{color:#626869}.case-title .eyebrow{color:#707675;margin:clamp(55px,7vw,110px) 0 18px}.case-title h1{font-size:clamp(65px,10vw,165px);line-height:.95;letter-spacing:-.075em;max-width:1400px;overflow-wrap:anywhere;margin:0 0 clamp(80px,10vw,165px)}.case-title-meta{border-top:1px solid #b7bbb9;display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:30px;padding-top:27px}.case-title-meta>div{display:grid;align-content:start;gap:9px}.case-title-meta span{font-size:11px;color:#777e7d}.case-title-meta strong{font-size:15px;line-height:1.5;font-weight:500;max-width:600px}.case-cover{height:min(73vw,900px);max-height:none;min-height:420px;background:#e6e6e2}.case-cover picture{width:100%;height:100%}.case-cover img{width:100%;height:100%;object-fit:contain;object-position:center;background:transparent}.case-story{display:grid;grid-template-columns:1fr 2fr;gap:35px;padding-block:clamp(100px,13vw,210px)}.case-story .eyebrow{color:#6e7473}.case-story h2{font-size:clamp(32px,4.7vw,70px);line-height:1.16;max-width:1050px;margin:0 0 28px}.case-story p{font-size:clamp(16px,1.5vw,21px);color:#626968;max-width:700px}
.case-video-section{padding-block:clamp(65px,9vw,140px);background:#202224}.case-video-section .eyebrow{color:#c6cbca;margin-bottom:34px}.case-video-section .case-video{border:0;background:#101112}.case-video video{max-height:80svh}.case-video-section figure,.case-secondary figure{margin:0}.case-video-section figcaption,.case-secondary figcaption{font-size:12px;color:#a8adac;margin-top:15px}.case-secondary{padding-block:clamp(70px,9vw,145px)}.case-secondary .eyebrow{color:#6b7170}.case-secondary figcaption{color:#646b69}.case-media-secondary{margin-top:30px}.case-archive-section{padding-block:70px}.case-archive-section p{font-size:20px;color:#5e6463;max-width:760px}
/* KONTUR's mobile walkthrough is a portrait recording, so its player must keep that ratio. */
body[data-case-id="protective-structures"] .case-secondary .video-phone{width:min(100%,390px);margin-inline:auto}
body[data-case-id="protective-structures"] .case-secondary .video-phone video{display:block;width:100%;height:auto;max-height:none;aspect-ratio:390/844;object-fit:contain}
.case-screens{padding-block:clamp(80px,10vw,160px)}.case-screens .eyebrow{color:#646b6a;margin-bottom:35px}.case-screen-grid{gap:clamp(35px,5vw,80px) clamp(18px,2vw,35px)}.case-screen-grid figure,.case-screen-grid figure:first-child,body[data-case-style=commerce] .case-screen-grid figure,body[data-case-style=results] .case-screen-grid figure,body[data-case-style=story] .case-screen-grid figure,body[data-case-style=product] .case-screen-grid figure,body[data-case-style=archive] .case-screen-grid figure{background:#ecece8;padding:clamp(10px,2vw,32px)}.case-screen-grid figure:first-child{grid-column:1/-1}.case-screen-grid img{background:transparent}.case-screen-grid figure:first-child img{height:min(62vw,790px);max-height:none;object-fit:contain}.case-screen-grid figcaption,body[data-case-style=commerce] .case-screen-grid figcaption{color:#626968;font-size:11px}
.case-screen-grid img.is-tall,.case-screen-grid figure:first-child img.is-tall{height:clamp(360px,40vw,700px);max-height:none;object-fit:cover;object-position:top}
.case-feature-3d,.case-feature-split{color:#f4f1eb}.case-feature-3d h2,.case-feature-split h2{color:#f4f1eb}
.case-notes{display:grid;grid-template-columns:1fr 2fr;gap:35px;padding-block:clamp(80px,10vw,150px);border-top:1px solid #bec3bf}.case-notes .eyebrow{color:#747a79}.case-notes h2{font-size:clamp(38px,5vw,73px);margin:0 0 22px}.case-notes p{font-size:clamp(17px,1.45vw,21px);color:#535b59;max-width:860px;line-height:1.6}.case-notes details{border-top:1px solid #b7bdb9;margin-top:55px;padding:23px 0}.case-notes summary{cursor:pointer;font-size:14px;font-weight:600;list-style:none}.case-notes summary::after{content:"+";float:right;font-size:21px}.case-notes details[open] summary::after{content:"−"}.case-notes details p{font-size:14px;margin:22px 0 0}.case-next{border-top:1px solid #bec3bf;padding-block:clamp(80px,10vw,160px)}.case-next>a:first-child{font-size:clamp(45px,7vw,110px);font-weight:500}.case-next small{font:600 11px Manrope,sans-serif;color:#797f7e;letter-spacing:0}.case-next a:hover{color:#555d5b}.case-all-work{display:inline-flex;margin-top:55px;border-bottom:1px solid currentColor;padding-bottom:7px;font-size:14px}.case-error{padding-top:220px}
.case-next>a:first-child span:first-child{min-width:0;overflow-wrap:anywhere}.case-next>a:first-child span:last-child{flex:none}
.inline-arrow{display:inline-block;width:1em;height:1em;flex:none;vertical-align:-.1em}.case-all-work .inline-arrow,.contact-circle .inline-arrow{width:1.05em;height:1.05em;margin-left:.2em}.case-primary-mobile{display:none}
@media(max-width:760px){.case-primary-desktop.has-mobile{display:none}.case-primary-mobile{display:block}.case-primary-mobile .video-phone{width:min(100%,390px);margin-inline:auto}.case-primary-mobile video{display:block;width:100%;height:auto;max-height:min(74svh,720px);aspect-ratio:390/844;object-fit:contain;background:#111}.case-mobile-duplicate{display:none}.case-next>a:first-child .inline-arrow{width:.58em;height:.58em;align-self:center}.case-video-section .shell{min-width:0}}

/* A single large contact finale. Accent appears mainly in the work itself. */
.contact-section{background:#202224;color:#f7f7f2;padding-block:clamp(95px,12vw,180px)}.contact-section::before{display:none}.contact-section h2{font-size:clamp(65px,10vw,170px);line-height:.98;font-weight:500;letter-spacing:-.08em;margin:35px 0 clamp(70px,10vw,140px);max-width:1300px}.contact-section h2 span,.contact-section h2 em{color:#a7adaa;font-style:normal}.contact-circle{display:flex;align-items:center;justify-content:center;position:absolute;right:var(--gutter);top:49%;width:clamp(120px,13vw,200px);height:clamp(120px,13vw,200px);border-radius:50%;background:#3c4647;color:#fff;font-size:13px;font-weight:600;transition:transform .35s,background .35s}.contact-circle:hover{transform:scale(1.08);background:#4c5556}.contact-bottom{border-top:1px solid #69706f;padding-top:35px}.contact-bottom>p{font-size:16px;color:#c1c5c3}.contact-links a{border-color:#5e6664;font-size:15px}.contact-links a span{color:#bec4c1}.contact-links a:hover,.contact-links a:hover span{color:#fff}
.compact-contact .contact-circle{top:auto;bottom:12%}.compact-contact h2{margin-bottom:80px}
@media(min-width:761px){.contact-section h2{font-size:clamp(65px,8.6vw,155px);max-width:none;margin-bottom:clamp(28px,4vw,64px)}.contact-section .contact-circle{position:relative;top:auto;right:auto;bottom:auto;margin:0 0 34px auto}.compact-contact .contact-circle{bottom:auto}}

@keyframes page-enter{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:none}}
main{animation:page-enter .65s cubic-bezier(.2,.7,.2,1) both}
@media(max-width:1000px){.hero h1{font-size:clamp(100px,15.5vw,190px)}.hero-meta span:last-child{margin-right:0}.case-title-meta{grid-template-columns:1fr 1fr;gap:25px}.case-title-meta>div:last-child{grid-column:1/-1}}
@media(max-width:760px){.header-inner{height:70px}.brand{font-size:14px}.nav{display:none}.menu-toggle{display:grid;border-radius:100%;background:#252728;color:#fff;width:48px;height:48px;place-content:center;padding:0}.menu-toggle span{width:19px}.mobile-nav:not([hidden]){display:flex;position:absolute;left:0;right:0;top:70px;background:#242628;color:#fff;border:0;padding:25px var(--gutter) 35px}.mobile-nav a{font-size:27px;border-color:#535757}.hero{height:min(820px,100svh);min-height:590px}.hero-portrait{height:100%;width:100%;max-width:none;left:0;transform:none;object-fit:cover;object-position:center 20%}.hero-meta{top:auto;bottom:6%;font-size:15px}.hero-namefield{bottom:18%}.hero h1{font-size:clamp(74px,18vw,135px);white-space:normal;line-height:.95}.hero h1 span:first-child{margin-left:var(--gutter)}.hero h1 span:last-child{margin-left:var(--gutter)}.hero-foot{display:none}.intro-statement,.case-story,.case-notes{grid-template-columns:1fr;gap:35px}.intro-statement{padding-block:110px}.intro-statement h2{font-size:clamp(30px,7.5vw,50px)}.round-link{width:112px;height:112px}.selected-heading{display:block;margin-bottom:35px}.selected-heading h2{font-size:clamp(45px,9vw,70px)}.selected-list{grid-template-columns:1fr;gap:60px}.featured:first-child{grid-column:auto}.featured:first-child .featured-image,.featured-image,.featured:nth-child(3n+2) .featured-image{aspect-ratio:1.25}.featured h3{font-size:37px}.work-page,.archive-page,.about-page{padding-top:150px}.page-intro{margin-bottom:65px}.work-page .page-intro h1,.archive-page .page-intro h1{font-size:clamp(54px,11vw,80px)}.work-filters{margin-bottom:65px}.work-table-head,.archive-head{display:none}.project-row{grid-template-columns:1fr auto;gap:8px;min-height:100px;padding:24px 0}.project-row-name{grid-column:1/-1}.project-row-name strong{font-size:clamp(24px,6vw,34px)}.project-row-category{grid-column:1;grid-row:2}.project-row-type{display:none}.project-row-evidence{grid-column:2;grid-row:2}.row-preview{display:none}.archive-rows .project-row-name strong{font-size:26px}.about-page h1{font-size:clamp(49px,10vw,75px);margin-bottom:85px}.about-page-lead,.about-page-statement{grid-template-columns:1fr;gap:20px}.about-page-statement{margin:75px 0}.about-services>div{grid-template-columns:45px 1fr}.about-services p{grid-column:2}.case-title{padding-top:145px;padding-bottom:55px}.case-title .eyebrow{margin:65px 0 16px}.case-title h1{font-size:clamp(50px,11vw,85px);margin-bottom:70px}.case-cover{height:auto;min-height:0}.case-cover picture{height:auto}.case-cover img{height:auto;max-height:700px;object-fit:contain}.case-story{padding-block:95px}.case-story h2{font-size:clamp(31px,7vw,52px)}.case-screen-grid{grid-template-columns:1fr}.case-screen-grid figure:first-child{grid-column:auto}.case-screen-grid figure:first-child img{height:auto;max-height:550px}.case-notes{padding-block:95px}.contact-circle{position:static;width:130px;height:130px;margin:-20px 0 70px auto}.contact-section h2{font-size:clamp(55px,11vw,90px);margin-bottom:60px}.contact-bottom{grid-template-columns:1fr;gap:20px}.compact-contact .contact-circle{position:static}}
@media(max-width:420px){.hero h1{font-size:18.5vw}.hero-meta{font-size:12px}.hero-foot{font-size:10px}.work-filters button{padding:10px 16px}.case-title-meta{grid-template-columns:1fr;gap:24px}.case-title-meta>div:last-child{grid-column:auto}.case-title h1{font-size:clamp(48px,12vw,64px)}.case-media-secondary{grid-template-columns:1fr}.contact-links a{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}main{animation:none}.round-link,.contact-circle{transition:none}}
.featured-image .sales-card-flow{position:absolute;left:clamp(15px,2.4vw,38px);right:clamp(15px,2.4vw,38px);bottom:clamp(15px,2.4vw,38px);display:flex;gap:clamp(10px,2vw,30px);align-items:center;border-top:1px solid #748070;padding-top:14px;color:#b6ff00;font:700 clamp(9px,1vw,13px)/1.3 Manrope,Arial,sans-serif;letter-spacing:.1em;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}.featured-image .sales-card-flow i{font-style:normal;color:#eff5e8;transition:transform .3s}.featured-image:hover .sales-card-flow,.featured-image:focus-visible .sales-card-flow{opacity:1;transform:none}.featured-image:hover .sales-card-flow i,.featured-image:focus-visible .sales-card-flow i{transform:translateX(5px)}@media(prefers-reduced-motion:reduce){.featured-image .sales-card-flow,.featured-image .sales-card-flow i{transition:none}}
.case-story-facts{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:36px}
@media(max-width:760px){.case-story-facts{grid-template-columns:1fr;row-gap:24px}}

/* Shared editorial overview for the generated case pages. */
.case-story.case-summary{background:#f3f2ed;color:#232729;grid-template-columns:minmax(150px,1fr) minmax(0,2.2fr);padding-block:clamp(90px,10vw,150px)}
.case-story.case-summary .eyebrow{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:#6c7472;padding-top:.5em}
.case-story.case-summary h2{font-size:clamp(34px,4.6vw,70px);line-height:1.1;letter-spacing:-.045em;max-width:1000px;margin-bottom:clamp(52px,7vw,95px)}
.case-story.case-summary .case-story-facts{counter-reset:case-row;display:block;margin:0;padding:0;border-top:1px solid #bbc1bd}
.case-story.case-summary .case-story-facts>div{counter-increment:case-row;display:grid;grid-template-columns:50px minmax(130px,.65fr) minmax(0,2fr);gap:clamp(16px,3vw,45px);align-items:start;padding:clamp(25px,3vw,41px) 0;border-bottom:1px solid #bbc1bd}
.case-story.case-summary .case-story-facts>div::before{content:counter(case-row,decimal-leading-zero);color:#8b9390;font:600 11px/1.5 Manrope,sans-serif;padding-top:.45em}
.case-story.case-summary .case-story-facts h3{font:600 11px/1.5 Manrope,sans-serif;letter-spacing:.12em;text-transform:uppercase;margin:0;padding-top:.45em}
.case-story.case-summary .case-story-facts p{max-width:850px;margin:0;font:400 clamp(17px,1.5vw,23px)/1.5 Manrope,sans-serif;letter-spacing:-.025em;color:#343b39}
@media(max-width:760px){.case-story.case-summary{grid-template-columns:1fr;gap:30px}.case-story.case-summary h2{font-size:clamp(33px,8vw,55px)}.case-story.case-summary .case-story-facts>div{grid-template-columns:36px minmax(0,1fr);gap:8px 14px}.case-story.case-summary .case-story-facts p{grid-column:2;font-size:17px}}

/* Interface captures should remain complete and at native-quality display sizes. */
.case-screen-grid img,.case-screen-grid figure:first-child img{height:auto;max-height:none;object-fit:contain;object-position:center top}
.case-screen-grid img.is-tall,.case-screen-grid figure:first-child img.is-tall{display:block;width:auto;max-width:100%;height:auto;max-height:none;margin-inline:auto;object-fit:contain}
.kontur-main img,.kontur-secondary img,.pifpaf-pair img{height:auto;max-height:none;object-fit:contain}
.b2b-implementations img{height:auto;max-height:none;object-fit:contain}
@media(max-width:760px){body[data-case-id="protective-structures"] .case-primary-mobile video{max-height:none;aspect-ratio:390/844}}

/* Leave room for descenders such as the g in LexLegal during title reveals. */
.case-title h1{padding-bottom:.18em}

/* MAGNUM keeps its dark palette; the shared light-case text color must not bleed into its summary. */
body[data-case-id="magnum"] .case-story.case-summary{background:#0b0709;color:#f6efeb}
body[data-case-id="magnum"] .case-story.case-summary .case-story-facts,body[data-case-id="magnum"] .case-story.case-summary .case-story-facts>div{border-color:#63484e}
body[data-case-id="magnum"] .case-story.case-summary .case-story-facts p{color:#e4dadd}
body[data-case-id="magnum"] .case-story.case-summary .eyebrow,body[data-case-id="magnum"] .case-story.case-summary .case-story-facts>div::before{color:#bbadb1}

/* Center MAGNUM's lone second gallery frame within the desktop grid. */
@media(min-width:761px){body[data-case-id="magnum"] .case-screen-grid figure:last-child:nth-child(2){grid-column:1/-1;width:calc(50% - clamp(9px,1vw,17.5px));justify-self:center}}

/* Unified iPhone frame for every phone walkthrough: video fills the screen, no side gaps */
.video-phone{width:min(100%,330px);margin-inline:auto}
.case-video-section .video-phone .case-video,.case-secondary .video-phone .case-video{position:relative;padding:38px 10px 12px;border-radius:46px;border:2px solid #3b3b42;background:linear-gradient(160deg,#1d1d21,#0a0a0c);box-shadow:0 24px 60px rgba(0,0,0,.45),inset 0 0 0 1px rgba(255,255,255,.06)}
.video-phone .case-video::before{content:"";position:absolute;top:12px;left:50%;width:84px;height:22px;transform:translateX(-50%);border-radius:14px;background:#000;z-index:2;pointer-events:none}
.video-phone .case-video video{display:block;width:100%;height:auto;max-height:none;aspect-ratio:390/844;object-fit:cover;border-radius:32px;background:#000;margin:0}
.video-phone figcaption{text-align:center}
@media(min-width:761px){.video-phone{width:min(100%,calc(80svh*.462 + 24px),330px)}}
