:root{color-scheme:light;--ink:#1d1d1f;--muted:#6e6e73;--quiet:#f5f5f7;--line:#e6e6e9;--blue:#0066cc;--radius:18px;--max:1480px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fff;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.8}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;max-width:100%}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:6px}button{cursor:pointer}.skip{position:fixed;top:12px;left:12px;transform:translateY(-150%);z-index:50;background:#fff;padding:10px 18px;border-radius:10px;box-shadow:0 4px 18px #0002}.skip:focus{transform:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(230,230,233,.65);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.header-inner{max-width:1640px;min-height:82px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:16px 40px;gap:32px}.brand{display:flex;align-items:center;gap:13px;font-size:13px;font-weight:600;letter-spacing:.025em;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--ink);color:#fff;font-size:13px;letter-spacing:-.07em}.primary-nav,.external-nav{display:flex;gap:27px;align-items:center;font-size:12px;letter-spacing:.055em}.primary-nav a,.external-nav a{display:flex;align-items:center;min-height:44px}.header-links{display:flex;gap:58px;align-items:center}.primary-nav a:hover,.external-nav a:hover{color:var(--blue)}.external-nav{letter-spacing:0;gap:22px;color:var(--muted)}
.container{width:min(calc(100% - 80px),var(--max));margin-inline:auto}.intro{padding:50px 0 34px;display:flex;align-items:end;justify-content:space-between;gap:30px}.eyebrow{font-size:11px;letter-spacing:.14em;color:var(--muted);margin:0 0 7px}.intro h1{font-size:clamp(30px,3.2vw,48px);line-height:1.15;letter-spacing:-.045em;font-weight:600;margin:0}.intro-copy{margin:10px 0 0;color:var(--muted);font-size:14px}.pdf-link{color:var(--blue);font-size:13px;white-space:nowrap;padding-bottom:4px}.arrow{font-size:1.08em;margin-left:5px}.featured-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.work-card{min-width:0;display:block}.work-media{position:relative;overflow:hidden;background:var(--quiet);border-radius:var(--radius);aspect-ratio:1.55}.work-media img{width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.2,.7,.2,1)}.work-card:hover .work-media img{transform:scale(1.018)}.work-media.ui img{object-fit:contain;padding:20px}.work-media.contain img{object-fit:contain}.tag{position:absolute;right:15px;top:15px;z-index:1;background:rgba(255,255,255,.92);font-size:10px;letter-spacing:.06em;padding:4px 10px;border-radius:6px;border:1px solid #00000006}.work-caption{padding:18px 1px 0}.work-caption h2,.work-caption h3{font-size:18px;line-height:1.4;letter-spacing:-.018em;font-weight:500;margin:0 0 5px}.work-caption p{font-size:12px;color:var(--muted);margin:0;line-height:1.65}.secondary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;margin-top:44px}.secondary-grid .work-media{aspect-ratio:1.35}.secondary-grid .work-caption h3{font-size:15px}.secondary-grid .work-media.ui img{padding:12px}.all-work-link{display:block;text-align:right;font-size:13px;color:var(--blue);margin:25px 0 0}
.section-heading{margin:100px 0 29px;display:flex;align-items:end;justify-content:space-between;gap:24px}.section-heading h2{font-size:30px;font-weight:600;line-height:1.25;letter-spacing:-.035em;margin:0}.section-heading p{font-size:13px;color:var(--muted);margin:8px 0 0}.filters{display:flex;gap:24px;overflow-x:auto;border-bottom:1px solid var(--line);margin:0 0 38px;scrollbar-width:thin}.filters[hidden]{display:none}.filter{position:relative;white-space:nowrap;border:0;background:transparent;color:#98989d;font-size:13px;padding:13px 15px 16px;min-height:44px;transition:color .15s}.filter[aria-pressed=true]{color:var(--ink);font-weight:600}.filter[aria-pressed=true]:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1.5px;background:var(--ink)}.filter:hover{color:var(--ink)}[hidden]{display:none!important}
.case-list{display:grid;gap:36px}.case-row{display:grid;grid-template-columns:minmax(0,1.9fr) minmax(0,1fr);background:var(--quiet);border-radius:var(--radius);overflow:hidden;min-height:388px;scroll-margin-top:100px}.case-row.reverse{grid-template-columns:minmax(0,1fr) minmax(0,1.9fr)}.case-row.reverse .case-media{order:2}.case-row.reverse .case-copy{order:1}.case-media{display:flex;align-items:center;justify-content:center;background:#f0f1f4;min-width:0;padding:0;overflow:hidden}.case-media img{width:100%;height:100%;max-height:570px;object-fit:cover}.case-media.ui{padding:26px}.case-media.ui img{object-fit:contain;max-height:490px;height:100%;width:100%;border-radius:9px}.case-media.contain{padding:28px}.case-media.contain img{object-fit:contain;max-height:470px}.case-media video{width:100%;max-height:550px;background:#000;display:block}.case-copy{display:flex;flex-direction:column;justify-content:center;padding:46px 38px;min-width:0}.case-category{margin:0 0 10px;font-size:10px;letter-spacing:.06em;color:#8b8b91}.case-copy h3{font-size:23px;font-weight:500;line-height:1.45;letter-spacing:-.035em;margin:0 0 20px}.case-desc{font-size:13px;line-height:1.9;margin:0 0 24px;color:#515157}.case-facts{font-size:11px;margin:0;display:grid;gap:13px}.case-facts dt{font-size:10px;color:#96969b;margin:0 0 2px}.case-facts dd{margin:0;color:#65656b;line-height:1.75}.case-note{font-size:10px;line-height:1.75;color:#929298;margin:20px 0 0}.case-link{color:var(--blue);font-size:12px;align-self:start;margin-top:23px}.image-link{color:#777780;font-size:11px;margin-top:12px;align-self:start}.case-link:hover,.image-link:hover{text-decoration:underline}
.photo-section{margin-top:80px}.photo-header{display:flex;align-items:baseline;gap:17px;margin:0 0 26px}.photo-header h3{font-size:23px;font-weight:500;margin:0}.photo-header p{color:var(--muted);font-size:12px;margin:0}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.photo-card{margin:0;min-width:0}.photo-card a{display:block;border-radius:14px;overflow:hidden;background:var(--quiet)}.photo-card img{width:100%;aspect-ratio:1.5;object-fit:cover;transition:transform .4s}.photo-card a:hover img{transform:scale(1.025)}.photo-card figcaption{font-size:12px;color:var(--muted);margin-top:11px}
.about{border-top:1px solid var(--line);margin-top:105px;padding-top:61px;display:grid;grid-template-columns:1fr 1.75fr;gap:90px}.about h2{font-size:30px;font-weight:600;letter-spacing:-.035em;margin:0 0 20px}.about .about-lead{font-size:18px;line-height:1.8;letter-spacing:-.015em;max-width:365px;margin:0 0 20px}.profile-lines{font-size:12px;color:var(--muted);line-height:2;margin:0}.skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.skill-grid h3{font-size:13px;font-weight:500;margin:0 0 13px}.skill-grid p{font-size:12px;color:var(--muted);line-height:2.1;margin:0}.about-links{margin-top:26px;display:flex;flex-wrap:wrap;gap:22px;color:var(--blue);font-size:12px}.resources{margin-top:55px;padding:29px 32px;border-radius:14px;background:var(--quiet);display:flex;flex-wrap:wrap;align-items:center;gap:18px 32px;font-size:12px}.resources strong{font-weight:500;margin-right:auto}.resources a{color:var(--blue)}.evidence{margin:30px 0 0;color:#83838b;font-size:10px;max-width:950px}.evidence summary{cursor:pointer;font-size:11px;min-height:35px;display:list-item;list-style-position:inside}.evidence p{line-height:1.9;margin:10px 0}.evidence a{text-decoration:underline;text-underline-offset:2px}.site-footer{max-width:var(--max);width:min(calc(100% - 80px),var(--max));margin:52px auto 0;padding:26px 0 35px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:#909097;font-size:10px;gap:20px}
@media(min-width:1750px){.work-media{aspect-ratio:1.6}.case-row{min-height:435px}.case-copy{padding:52px 45px}}
@media(max-width:1100px){.header-links{gap:32px}.primary-nav{gap:18px}.external-nav{gap:14px}.secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.case-row,.case-row.reverse{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}.case-copy{padding:30px 27px}.case-copy h3{font-size:20px}.case-media.ui{padding:18px}.about{gap:45px;grid-template-columns:1fr 1.6fr}.skill-grid{gap:20px}}
@media(max-width:760px){html{scroll-padding-top:95px}.header-inner{padding:14px 22px;min-height:72px;gap:15px;align-items:start}.brand{font-size:11px;gap:8px}.brand-mark{width:29px;height:29px;border-radius:8px;font-size:11px}.header-links{display:block}.primary-nav{gap:18px;padding-top:3px;font-size:10px}.external-nav{display:none}.container{width:calc(100% - 44px)}.intro{padding:36px 0 27px;align-items:start;flex-direction:column;gap:18px}.intro h1{font-size:35px}.intro-copy{font-size:12px}.pdf-link{font-size:12px}.featured-grid{grid-template-columns:1fr;gap:32px}.work-media{border-radius:14px;aspect-ratio:1.52}.work-caption{padding-top:13px}.work-caption h2{font-size:19px}.secondary-grid{gap:23px 17px;margin-top:35px}.secondary-grid .work-caption h3{font-size:13px}.secondary-grid .work-caption p{font-size:10px}.secondary-grid .work-media{border-radius:11px;aspect-ratio:1.25}.secondary-grid .work-media.ui img{padding:8px}.tag{right:9px;top:9px;padding:3px 7px;font-size:8px}.section-heading{margin-top:68px}.section-heading h2{font-size:26px}.filters{gap:8px;margin-bottom:26px}.filter{padding:12px 12px 15px;font-size:12px}.case-list{gap:26px}.case-row,.case-row.reverse{display:flex;flex-direction:column;min-height:0;border-radius:14px}.case-row.reverse .case-media{order:0}.case-row.reverse .case-copy{order:1}.case-media{min-height:0;max-height:none}.case-media img{height:auto;max-height:390px;min-height:0}.case-media.ui{padding:16px}.case-media.ui img{max-height:380px;min-height:180px;height:auto;object-fit:contain}.case-copy{padding:25px 24px 28px}.case-copy h3{font-size:21px;margin-bottom:13px}.case-desc{font-size:13px;margin-bottom:18px}.case-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.case-note{font-size:10px;margin-top:17px}.case-link{margin-top:18px}.photo-section{margin-top:45px}.photo-header{display:block}.photo-header p{margin-top:7px}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px 17px}.photo-card a{border-radius:10px}.photo-card figcaption{font-size:10px}.about{margin-top:68px;padding-top:42px;grid-template-columns:1fr;gap:35px}.about h2{font-size:26px}.about .about-lead{font-size:17px;max-width:none}.skill-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.skill-grid h3{font-size:11px}.skill-grid p{font-size:10px}.resources{margin-top:38px;padding:23px 24px;gap:14px 24px}.resources strong{width:100%}.site-footer{width:calc(100% - 44px);margin-top:38px;font-size:9px}.evidence{font-size:10px}}
@media(max-width:390px){.brand-name{max-width:100px;white-space:normal;line-height:1.4}.primary-nav{gap:11px}.skill-grid{grid-template-columns:1fr;gap:22px}.skill-grid p{font-size:12px}.skill-grid h3{font-size:13px}.secondary-grid{grid-template-columns:1fr}.photo-grid{grid-template-columns:1fr}.case-facts{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.site-header{position:static}.external-nav,.filters,.pdf-link{display:none}.container,.site-footer{width:100%}.intro{padding-top:10px}.case-row{break-inside:avoid}.case-list{gap:25px}.section-heading{margin-top:40px}.work-card{break-inside:avoid}.about{margin-top:40px}.case-media video{max-height:260px}.resources,.evidence{break-inside:avoid}}

/* Requested compact portfolio layout. */
.photo-frame{aspect-ratio:3/2;overflow:hidden;border-radius:18px}.photo-card .photo-frame img{display:block;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.product-links{display:flex;flex-wrap:wrap;gap:24px}.screen-gallery{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:24px;max-width:100%;align-items:center}.case-media .screen-gallery img{flex:0 0 100%;width:100%;height:440px;object-fit:contain;scroll-snap-align:center}.case-copy{padding:48px}.case-desc{max-width:30em}@media(max-width:700px){.case-media .screen-gallery img{height:360px}.case-copy{padding:28px}}

.panorama{width:100%;background:#111;color:white}.case-media .panorama canvas,.case-media .panorama>img{width:100%;height:440px;object-fit:cover;display:block}.panorama canvas{touch-action:none;cursor:grab}.panorama-controls{display:flex;align-items:center;gap:12px;padding:14px;flex-wrap:wrap;font-size:12px}.panorama-controls button{border:0;border-radius:18px;padding:9px 16px;cursor:pointer}.panorama-controls input{flex:1;min-width:90px}.panorama [hidden]{display:none!important}@media(max-width:700px){.case-media .panorama canvas,.case-media .panorama>img{height:300px}}

/* Clear hierarchy, legible roles and uncropped product screens. */
.intro{padding:60px 0 38px}.intro-copy{font-size:16px}.case-category{color:#717179}.case-copy h3{font-size:28px;font-weight:600;margin-bottom:14px}.case-desc{font-size:15px;color:#424248;line-height:1.75}.case-facts{font-size:13px;gap:16px}.case-facts dt{font-size:11px;color:#73737a}.case-note{color:#717179}.case-media .screen-gallery{width:100%;padding:20px;align-items:center}.case-media .screen-gallery .portrait-screen{flex:0 0 auto;width:auto;height:440px;max-width:85%;border-radius:12px;object-fit:contain}.case-media .screen-gallery .landscape-screen{height:440px;flex-basis:95%;width:95%;object-fit:contain}.case-row:has(.screen-gallery) .case-media{padding:0}.featured-grid .work-media{aspect-ratio:1.5}.featured-grid .work-media img{object-fit:contain}.case-link{font-size:14px}.case-media.cover>img{object-fit:contain}.screen-gallery{scrollbar-width:thin;scrollbar-color:#c7c7cc transparent}.photo-card figcaption{font-size:12px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.work-media img{transition:none}.work-card:hover .work-media img{transform:none}}@media(max-width:700px){.intro{padding-top:36px}.case-copy h3{font-size:25px}.case-media .screen-gallery .portrait-screen,.case-media .screen-gallery .landscape-screen{height:360px}}

/* Final presentation: clear white screen cards, balanced hero and contained galleries. */
.header-links{gap:30px}
.language-toggle{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);padding:8px 13px;font-size:11px;line-height:1;min-height:36px}
.language-toggle:hover{border-color:#b8b8bf;color:var(--blue)}
.section-eyebrow{margin:0 0 18px;font-size:12px;color:var(--muted)}
.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.featured-grid .work-media{aspect-ratio:1.55;background:#f2f3f7}
.featured-grid .work-media img{object-fit:contain}
.spotlight-work{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);background:#f2f3f7;border-radius:18px;overflow:hidden;min-width:0}
.spotlight-work .spotlight-media{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:14px;padding:20px;max-width:100%;height:520px;aspect-ratio:auto;overflow-x:auto;overflow-y:hidden;box-sizing:border-box;align-items:center;scroll-snap-type:x mandatory}
.spotlight-work .spotlight-media img{width:100%;height:100%;max-height:470px;min-width:0;object-fit:contain!important;border-radius:18px;background:#fff;border:1px solid #e1e2e7;box-shadow:0 8px 24px #1d1d1f12;padding:6px;scroll-snap-align:start}
.spotlight-work .work-caption{align-self:center;padding:38px}
.case-media,.case-copy{min-width:0}
.case-row:has(.screen-gallery) .case-media{overflow:hidden;min-width:0}
.case-media .screen-gallery{display:flex!important;flex-flow:row nowrap!important;gap:16px;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;box-sizing:border-box;padding:20px;scroll-snap-type:x mandatory;align-items:center}
.case-media .screen-gallery>img{flex:0 0 auto!important;width:auto!important;height:420px;max-width:100%;object-fit:contain!important;background:#fff;border:1px solid #e1e2e7;border-radius:14px;box-shadow:0 8px 24px #1d1d1f12;padding:8px;box-sizing:border-box;scroll-snap-align:start}
.case-media .screen-gallery>img.landscape-screen{width:calc(100% - 20px)!important;max-width:calc(100% - 20px)}
.case-media .screen-gallery>img.portrait-screen{max-width:86%;height:420px}
.case-media .panorama canvas,.case-media .panorama>img{background:#111}
@media(max-width:900px){.spotlight-work{grid-template-columns:1fr}.spotlight-work .spotlight-media{height:480px}.spotlight-work .work-caption{padding:28px}}
@media(max-width:760px){
  .header-inner{align-items:center}
  .header-links{display:flex;gap:14px;align-items:center}
  .primary-nav{gap:14px;padding-top:0;font-size:10px}
  .external-nav{display:none}
  .language-toggle{padding:7px 10px;min-height:32px}
  .featured-grid{grid-template-columns:1fr;gap:26px}
  .spotlight-work{grid-template-columns:1fr}
  .spotlight-work .spotlight-media{height:380px;grid-auto-columns:minmax(0,42%);gap:12px;padding:14px}
  .spotlight-work .spotlight-media img{max-height:350px;border-radius:14px}
  .spotlight-work .work-caption{padding:18px 22px 24px}
  .case-media .screen-gallery{padding:14px;gap:12px}
  .case-media .screen-gallery>img,.case-media .screen-gallery>img.portrait-screen,.case-media .screen-gallery>img.landscape-screen{height:360px!important}
  .case-media .screen-gallery>img.landscape-screen{width:calc(100% - 10px)!important;max-width:calc(100% - 10px)}
}

/* Final presentation: white screen cards, balanced hero and contained galleries. */
.header-links{gap:30px}
.language-toggle{border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);padding:8px 13px;font-size:11px;line-height:1;min-height:36px}
.language-toggle:hover{border-color:#b8b8bf;color:var(--blue)}
.section-eyebrow{margin:0 0 18px;font-size:12px;color:var(--muted)}
.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.featured-grid .work-media{aspect-ratio:1.55;background:#f2f3f7}
.featured-grid .work-media img{object-fit:contain}
.spotlight-work{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.8fr);background:#f2f3f7;border-radius:18px;overflow:hidden;min-width:0}
.spotlight-work .spotlight-media{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:14px;padding:20px;max-width:100%;height:520px;aspect-ratio:auto;overflow-x:auto;overflow-y:hidden;box-sizing:border-box;align-items:center;scroll-snap-type:x mandatory}
.spotlight-work .spotlight-media img{width:100%;height:100%;max-height:470px;min-width:0;object-fit:contain!important;border-radius:18px;background:#fff;border:1px solid #e1e2e7;box-shadow:0 8px 24px #1d1d1f12;padding:6px;scroll-snap-align:start}
.spotlight-work .work-caption{align-self:center;padding:38px}
.case-media,.case-copy{min-width:0}
.case-row:has(.screen-gallery) .case-media{overflow:hidden;min-width:0}
.case-media .screen-gallery{display:flex!important;flex-flow:row nowrap!important;gap:16px;width:100%;max-width:100%;min-width:0;overflow-x:auto;overflow-y:hidden;box-sizing:border-box;padding:20px;scroll-snap-type:x mandatory;align-items:center}
.case-media .screen-gallery>img{flex:0 0 auto!important;width:auto!important;height:420px;max-width:100%;object-fit:contain!important;background:#fff;border:1px solid #e1e2e7;border-radius:14px;box-shadow:0 8px 24px #1d1d1f12;padding:8px;box-sizing:border-box;scroll-snap-align:start}
.case-media .screen-gallery>img.landscape-screen{width:calc(100% - 20px)!important;max-width:calc(100% - 20px)}
.case-media .screen-gallery>img.portrait-screen{max-width:86%;height:420px}
.case-media .panorama canvas,.case-media .panorama>img{background:#111}
@media(max-width:900px){.spotlight-work{grid-template-columns:1fr}.spotlight-work .spotlight-media{height:480px}.spotlight-work .work-caption{padding:28px}}
@media(max-width:760px){.header-inner{align-items:center}.header-links{display:flex;gap:14px;align-items:center}.primary-nav{gap:14px;padding-top:0;font-size:10px}.external-nav{display:none}.language-toggle{padding:7px 10px;min-height:32px}.featured-grid{grid-template-columns:1fr;gap:26px}.spotlight-work{grid-template-columns:1fr}.spotlight-work .spotlight-media{height:380px;grid-auto-columns:minmax(0,42%);gap:12px;padding:14px}.spotlight-work .spotlight-media img{max-height:350px;border-radius:14px}.spotlight-work .work-caption{padding:18px 22px 24px}.case-media .screen-gallery{padding:14px;gap:12px}.case-media .screen-gallery>img,.case-media .screen-gallery>img.portrait-screen,.case-media .screen-gallery>img.landscape-screen{height:360px!important}.case-media .screen-gallery>img.landscape-screen{width:calc(100% - 10px)!important;max-width:calc(100% - 10px)}}
.interactive-scene{position:relative;width:100%;background:#111;min-height:440px}
.case-media .interactive-scene>img,.interactive-scene iframe{display:block;width:100%;height:440px;object-fit:cover;border:0}
.interactive-scene [hidden]{display:none!important}
.interactive-scene button{position:absolute;left:24px;bottom:24px;border:0;border-radius:999px;background:#fff;color:#1d1d1f;padding:13px 24px;font:inherit;cursor:pointer;box-shadow:0 4px 20px #0003}
@media(max-width:700px){.interactive-scene{min-height:320px}.case-media .interactive-scene>img,.interactive-scene iframe{height:320px}}
@media(max-width:430px){.header-inner{padding:12px 16px;gap:10px}.brand{font-size:10px}.brand-name{max-width:none;white-space:nowrap}.primary-nav{gap:10px;font-size:9px}.header-links{gap:10px}}
@media(max-width:360px){.primary-nav{display:none}}

/* totio-style native language menu and iPhone presentation. */
.language-picker{display:inline-flex;align-items:center;position:relative;gap:8px;background:#f0eef1;border:1px solid #e8e6e9;border-radius:999px;padding:8px 13px;white-space:nowrap;min-height:40px;flex-shrink:0}
.language-brand{color:#0643a5;font-size:16px;font-weight:750;letter-spacing:-.04em;line-height:1}
.language-picker select{appearance:none;-webkit-appearance:none;background:transparent;border:0;padding:0 17px 0 0;min-width:70px;color:#1d1d1f;font:inherit;font-size:13px;line-height:1.4;cursor:pointer;outline-offset:4px}
.language-chevron{position:absolute;right:13px;pointer-events:none;color:#333}
.phone-frame{--phone-height:420px;display:block;flex:0 0 auto;height:var(--phone-height);width:calc((var(--phone-height) - 16px)*var(--phone-ratio) + 16px);padding:6px;border:2px solid #414145;border-radius:32px;background:#101012;box-shadow:0 12px 28px #17192324;overflow:hidden;box-sizing:border-box;scroll-snap-align:center}
.case-media .phone-frame>img,.spotlight-media .phone-frame>img{display:block;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;min-height:0!important;object-fit:cover!important;border:0!important;border-radius:24px;padding:0!important;box-shadow:none!important}
.spotlight-media>.phone-frame{--phone-height:440px;justify-self:center;align-self:center}
@media(max-width:760px){.phone-frame{--phone-height:360px}.spotlight-media>.phone-frame{--phone-height:330px}}
@media(max-width:600px){.primary-nav{display:none}.header-links{gap:0}.language-picker{gap:7px;padding:8px 11px;min-height:36px}.language-brand{font-size:15px}.language-picker select{font-size:12px;min-width:66px}.language-chevron{right:11px}}

@media(max-width:760px){.spotlight-work .spotlight-media{grid-template-columns:repeat(3,max-content);grid-auto-columns:max-content;justify-content:start}}

.phone-frame{position:relative;overflow:visible;border-color:#4b4e55;border-radius:calc(var(--phone-height)*.085);background:linear-gradient(125deg,#464951 0%,#151619 18%,#090a0c 65%,#42454d 100%);box-shadow:0 16px 32px #17192325,0 0 0 1px #969aa260,inset 0 0 0 1px #a7abb34d}
.case-media .phone-frame>img,.spotlight-media .phone-frame>img{border-radius:calc(var(--phone-height)*.085 - 8px)}
.phone-frame::before,.phone-frame::after{content:"";position:absolute;width:3px;background:linear-gradient(90deg,#747882,#23252b);border-radius:2px}
.phone-frame::before{left:-4px;top:22%;height:10%;box-shadow:0 20px 0 #36383f}
.phone-frame::after{right:-4px;top:28%;height:14%}

.case-media .screen-gallery{justify-content:flex-start;justify-content:safe center}
/* Project detail navigation and bounded responsive content. */
.case-row{width:100%;max-width:100%;min-width:0}
.case-copy,.case-media{min-width:0;max-width:100%}
.case-copy{overflow-wrap:anywhere}
.case-copy h3{max-width:100%;font-size:clamp(21px,1.7vw,28px);line-height:1.35;overflow-wrap:break-word}
.case-row[data-detail-url]{cursor:pointer}
.case-preview-link{display:block;width:100%;min-width:0;color:inherit}
.detail-link{color:var(--blue);align-self:flex-start}
.detail-page{max-width:1100px;padding-top:32px}
.detail-back{display:inline-block;color:var(--blue);font-size:13px;padding:10px 0}
.detail-hero{padding:24px 0 32px;max-width:900px}
.detail-hero h1{font-size:clamp(30px,4vw,54px);line-height:1.15;letter-spacing:-.035em;margin:12px 0 18px;overflow-wrap:anywhere}
.detail-hero>p:last-child{font-size:18px;color:var(--muted);margin:0}
.detail-visual{border-radius:24px;overflow:hidden;background:var(--quiet)}
.detail-visual .case-media{min-height:0;padding:24px;overflow:hidden}
.detail-visual .case-media>img{width:100%;height:auto;min-height:0;max-height:680px;object-fit:contain}
.detail-visual .case-media .screen-gallery{padding:12px}
.detail-visual .screen-gallery>img{height:520px!important;min-height:0;object-fit:contain!important}
.detail-visual .phone-frame{--phone-height:520px}
.case-media .phone-frame>img,.spotlight-media .phone-frame>img{object-fit:contain!important}
.detail-visual .panorama canvas,.detail-visual .panorama>img,.detail-visual .interactive-scene iframe{height:520px}
.detail-body{max-width:900px;margin:48px auto 0}
.detail-body section{margin-bottom:42px}
.detail-body h2{font-size:22px;line-height:1.4;margin:0 0 18px;letter-spacing:-.02em}
.detail-body p{font-size:15px;line-height:2;color:var(--muted);margin:0}
.detail-features{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;gap:14px}
.detail-features li{background:var(--quiet);border-radius:16px;padding:22px;font-size:14px;line-height:1.8;overflow-wrap:anywhere}
.detail-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:0 0 20px}
.detail-facts dt{font-size:12px;color:var(--muted);margin-bottom:8px}.detail-facts dd{margin:0;font-size:14px;overflow-wrap:anywhere}
.detail-neighbors{display:flex;justify-content:space-between;gap:24px;padding:28px 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.detail-neighbors a{min-width:0;max-width:48%}.detail-neighbors strong{display:block;font-size:15px;font-weight:500;color:var(--ink);margin-top:6px;overflow-wrap:anywhere}
@media(max-width:1000px){.case-row,.case-row.reverse{display:flex;flex-direction:column}.case-row .case-media,.case-row.reverse .case-media{order:0}.case-row .case-copy,.case-row.reverse .case-copy{order:1}.case-copy{padding:28px}.case-copy h3{font-size:24px}}
@media(max-width:760px){.detail-page{padding-top:18px}.detail-hero{padding:20px 0 26px}.detail-hero>p:last-child{font-size:15px}.detail-visual{border-radius:18px}.detail-visual .case-media{padding:14px}.detail-visual .phone-frame{--phone-height:380px}.detail-visual .screen-gallery>img{height:340px!important}.detail-visual .panorama canvas,.detail-visual .panorama>img,.detail-visual .interactive-scene iframe{height:320px}.detail-body{margin-top:32px}.detail-features,.detail-facts{grid-template-columns:1fr}.detail-features li{padding:18px}.detail-body section{margin-bottom:32px}.detail-body h2{font-size:20px}}
/* Device screen corners must override generic portrait-gallery styles. */
.case-media .phone-frame>img,.spotlight-media .phone-frame>img{border-radius:calc(var(--phone-height)*.085 - 8px)!important}

/* Technology examples reuse the portfolio's quiet cards and type scale. */
#technologies{scroll-margin-top:100px}
.technology-intro{max-width:850px;color:var(--muted);font-size:15px;margin:0 0 32px}
.technology-group{margin-top:32px}
.technology-group>h3{font-size:18px;font-weight:500;line-height:1.4;margin:0 0 18px;letter-spacing:-.018em}
.technology-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.technology-card{min-width:0;background:var(--quiet);border-radius:var(--radius);padding:24px}
.technology-name{display:flex;align-items:center;gap:14px;min-height:68px}
.technology-name h4{font-size:18px;font-weight:500;line-height:1.4;margin:0;overflow-wrap:anywhere}
.technology-name sup{font-size:9px;margin-left:3px}
.technology-logo{display:grid;place-items:center;width:68px;height:68px;flex:0 0 68px}
.technology-logo img{width:48px;height:48px;object-fit:contain}
.technology-card p{font-size:13px;line-height:1.8;color:var(--muted);margin:14px 0 0;overflow-wrap:anywhere}
.technology-frameworks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 30px;margin:0}
.technology-frameworks>div{padding:18px 0;border-top:1px solid var(--line);min-width:0}
.technology-frameworks dt{font-size:15px;font-weight:500;overflow-wrap:anywhere}
.technology-frameworks dd{margin:6px 0 0;color:var(--muted);font-size:13px}
.technology-support{color:var(--muted);font-size:12px;margin:24px 0 0}
.technology-jump{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;color:var(--blue);font-size:13px}
.release-note{font-size:12px!important;line-height:1.8!important;color:var(--muted)!important;margin:0 0 20px!important}
.detail-body .release-note{margin-top:14px!important}
.language-picker .language-brand{width:37px;height:auto;object-fit:contain;flex:0 0 auto}
.language-picker,.language-picker select{min-height:44px}
.language-picker{padding-block:0}
select:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.project-wordmark{width:100px;height:auto;object-fit:contain}
.detail-hero .project-wordmark{width:142px}
.case-link,.detail-neighbors a,.site-footer a{display:inline-flex;align-items:center;min-height:44px}
.detail-neighbors a{display:block}
.site-footer{align-items:center;flex-wrap:wrap}
.case-media .screen-gallery{justify-content:flex-start}
@media(max-width:1000px){.technology-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .technology-grid{gap:17px}
 .technology-card{padding:18px}
 .technology-name{gap:10px}
 .technology-frameworks{grid-template-columns:1fr}
 /* Let landscape captures follow their source ratio instead of a tall fixed box. */
 .case-media .screen-gallery>img.landscape-screen{height:auto!important;width:100%!important;max-width:100%;flex:0 0 100%!important;min-height:0}
 .detail-visual .screen-gallery>img.landscape-screen{height:auto!important}
 .case-media.ui{padding:14px}
}
@media(max-width:600px){.technology-grid{grid-template-columns:1fr}.technology-name{min-height:68px}.case-facts{grid-template-columns:1fr}.technology-card p{margin-top:8px}.language-picker .language-brand{width:34px}}
.brand-credits{padding-left:20px}.brand-credits li{margin-bottom:28px}.brand-credits a{color:var(--blue);font-size:13px;display:inline-flex;align-items:center;min-height:44px}

/* Compact logo-and-name badges follow the supplied reference within existing colors. */
.technology-grid{display:flex;flex-wrap:wrap;gap:10px}
.technology-card{max-width:100%;background:#fff;border:1px solid var(--line);border-radius:999px;padding:4px 16px 4px 6px}
.technology-name{min-height:48px;gap:8px}
.technology-name h4{font-size:14px;overflow-wrap:normal}
.technology-logo{width:48px;height:48px;flex-basis:48px}
.technology-logo img{width:36px;height:36px}
.technology-card:has(.technology-logo) .technology-name{min-height:48px}
.technology-card:not(:has(.technology-logo)){padding-left:18px;padding-right:18px}
.technology-examples{margin-top:12px;color:var(--muted);font-size:13px}
.technology-examples summary{min-height:44px;cursor:pointer;display:list-item;list-style-position:inside;padding:10px 0}
.technology-examples dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 28px;margin:8px 0 0}
.technology-examples dt{color:var(--ink);font-weight:500}.technology-examples dd{margin:5px 0 0}
@media(max-width:600px){.technology-grid{gap:10px}.technology-card{padding:5px 14px 5px 6px}.technology-name h4{font-size:14px}.technology-examples dl{grid-template-columns:1fr}}

.technology-logo img[src$="css.svg"]{width:40px;height:40px}
#technologies .technology-group{margin-top:24px}
#technologies .technology-group>h3{font-size:16px;margin-bottom:14px}
#technologies .technology-intro{margin-bottom:24px}

/* Keep the supplied totio logo on a matching white language control. */
.language-picker{background:#fff;gap:9px;padding-inline:12px;min-height:44px}
.language-picker .language-brand{width:40px;height:auto;max-width:none}
.language-picker select{min-width:70px;padding-right:17px;font-size:13px;line-height:1.4}
.language-chevron{right:12px}
@media(max-width:600px){.language-picker{gap:8px;padding-inline:10px}.language-picker .language-brand{width:38px}.language-picker select{min-width:66px;font-size:12px}.language-chevron{right:10px}}

.framework-badges{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.framework-badge{display:inline-flex;align-items:center;gap:8px;min-height:58px;max-width:100%;padding:4px 16px 4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--ink);background:#fff;font-size:14px;line-height:1.4}
.framework-badge>span:last-child{overflow-wrap:anywhere}
.framework-badge:not(:has(img)){padding-inline:18px}
.framework-badge:hover{border-color:var(--blue)}
.framework-logo{display:grid;place-items:center;width:48px;height:48px;flex:0 0 48px}
.framework-logo img{width:36px;height:36px;object-fit:contain}
.framework-logo:has(img[src$="rails.svg"]){width:72px;flex-basis:72px}
.framework-logo img[src$="rails.svg"]{width:72px;height:auto}
.technology-frameworks dd{margin-top:12px}
@media(max-width:760px){.framework-badge{padding-right:14px}.framework-badges{gap:8px}}
/* Give Phrasebook's desktop interface more of its existing project row. */
@media(min-width:1001px){#phrasebook.case-row{grid-template-columns:minmax(0,2.5fr) minmax(0,1fr)}}
#phrasebook .screen-gallery{padding:12px;gap:12px}
#phrasebook .screen-gallery>img.landscape-screen{width:100%!important;max-width:100%;height:auto!important;max-height:none;padding:4px;flex:0 0 100%!important}
.detail-visual[aria-label="Phrasebook"] .case-media{padding:12px}
.detail-visual[aria-label="Phrasebook"] .screen-gallery{padding:0;gap:12px}
.detail-visual[aria-label="Phrasebook"] .screen-gallery>img.landscape-screen{width:100%!important;max-width:100%;height:auto!important;max-height:none;padding:4px;flex:0 0 100%!important}

.framework-logo:has(img[src$="fastapi.svg"]){width:84px;flex-basis:84px}
.framework-logo img[src$="fastapi.svg"]{width:84px;height:auto}
.framework-badge:has(img[src$="fastapi.svg"])>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}

/* Crop screenshot chrome and its captured blue outline without changing the original. */
.myphrase-visual{position:relative;width:100%;aspect-ratio:1317/817;overflow:hidden}
.myphrase-visual>img{position:absolute;top:-9.5%;left:-2px;width:calc(100% + 4px)!important;max-width:none!important;height:auto!important;max-height:none!important;margin:0;object-fit:contain!important}
.product-title-icon{display:inline-block;width:36px;height:36px;object-fit:contain;vertical-align:middle;margin-right:12px;border-radius:8px}
.detail-hero .product-title-icon{width:48px;height:48px;margin-right:16px;border-radius:11px}
.work-caption .product-title-icon{width:28px;height:28px;margin-right:9px;border-radius:6px}
/* Move the full device, including frame and screen, as a single hover target. */
.work-card:hover .work-media .phone-frame>img{transform:none}
.phone-frame{transition:transform .35s cubic-bezier(.2,.7,.2,1)}
@media(hover:hover) and (pointer:fine){.phone-frame:hover{transform:translateY(-4px) scale(1.018)}}
@media(prefers-reduced-motion:reduce){.phone-frame,.phone-frame:hover{transform:none!important;transition:none!important}}
/* Render the supplied white-backed wordmark transparently over neutral surfaces. */
.project-wordmark,.language-picker .language-brand{mix-blend-mode:multiply}

/* JUAN: supplied iPhone screens with captions; touch and keyboard scrolling. */
.juan-screen{margin:0;flex:0 0 auto;scroll-snap-align:center}
.juan-screen figcaption{margin-top:18px;text-align:center;font-size:12px;color:#6e6e73;letter-spacing:.02em}
.juan-gallery:focus-visible{outline:2px solid #0071e3;outline-offset:-3px}
.detail-visual .juan-gallery{justify-content:safe center;padding:32px;gap:32px}
.detail-visual .juan-gallery .phone-frame{--phone-height:500px}
@media(max-width:760px){.detail-visual .juan-gallery{justify-content:flex-start;padding:24px;gap:24px}.detail-visual .juan-gallery .phone-frame{--phone-height:440px}}

@media(min-width:1200px){.detail-visual .juan-gallery{gap:22px}.detail-visual .juan-gallery .phone-frame{--phone-height:380px}}

/* Named guest/staff sections share the same iPhone presentation. */
.juan-section-heading{font-size:22px;font-weight:600;letter-spacing:-.02em;margin:0;padding:28px 32px 0}
.juan-section-note{font-size:14px;line-height:1.7;color:#6e6e73;margin:12px 32px 0;max-width:700px}
.juan-staff-section{margin-top:32px;scroll-margin-top:100px}
@media(max-width:760px){.juan-section-heading{font-size:20px;padding:24px 24px 0}.juan-section-note{margin:12px 24px 0}.juan-staff-section{margin-top:24px}}

/* Keep all five JUAN phones in one responsive row, with a compact side caption. */
.spotlight-work.juan-all-screens{grid-template-columns:minmax(0,3fr) minmax(180px,1fr);align-items:center}
.juan-all-screens .spotlight-media{grid-auto-flow:row;grid-template-columns:repeat(5,minmax(0,1fr));grid-auto-columns:auto;height:auto;overflow:visible;gap:clamp(4px,1vw,18px);padding:clamp(12px,2vw,32px);scroll-snap-type:none}
.juan-all-screens .spotlight-media .phone-frame{width:100%;height:auto;min-width:0;padding:clamp(2px,.35vw,6px);border-width:1px;border-radius:clamp(8px,1.7vw,26px)}
.juan-all-screens .spotlight-media .phone-frame>img{height:auto!important;border-radius:clamp(5px,1.3vw,20px)!important}
.juan-all-screens .work-caption{padding:24px}
@media(max-width:760px){.spotlight-work.juan-all-screens{grid-template-columns:minmax(0,1fr)}.juan-all-screens .spotlight-media{grid-template-columns:repeat(5,minmax(0,1fr))}.juan-all-screens .work-caption{padding:4px 20px 24px}}

/* MyPhrase: all Figma screens, native touch/keyboard scrolling and manual controls. */
.myphrase-iphone-showcase{grid-template-columns:minmax(0,1.9fr) minmax(240px,1fr)}
.iphone-carousel{min-width:0;overflow:hidden;background:var(--quiet,#f2f3f7)}
.iphone-track{display:flex;gap:24px;overflow-x:auto;padding:30px 28px 20px;scroll-snap-type:x mandatory;scrollbar-width:thin;align-items:flex-start;overscroll-behavior-x:contain}
.iphone-track:focus-visible{outline:2px solid #0071e3;outline-offset:-3px}
.iphone-slide{margin:0;flex:0 0 auto;scroll-snap-align:start}
.iphone-slide .phone-frame{--phone-height:440px}
.iphone-slide .phone-frame img{display:block;width:100%;height:100%;object-fit:contain;border-radius:28px}
.iphone-slide figcaption{text-align:center;font-size:12px;color:#6e6e73;margin-top:18px;max-width:210px}
.iphone-controls{display:flex;justify-content:center;align-items:center;gap:20px;padding:0 20px 20px;font-size:13px;color:#6e6e73}
.iphone-controls button{min-width:44px;min-height:44px;border:1px solid #d6d6db;border-radius:50%;background:#fff;color:#1d1d1f;cursor:pointer;font:inherit}
.iphone-controls button:disabled{opacity:.35;cursor:default}
.myphrase-iphone-section{margin-top:32px;scroll-margin-top:110px}
@media(max-width:760px){.myphrase-iphone-showcase{grid-template-columns:minmax(0,1fr)}.iphone-track{gap:20px;padding:24px 20px 18px}.iphone-slide .phone-frame{--phone-height:400px}.myphrase-iphone-showcase .work-caption{padding:24px}}

/* JUAN staff case: scrollable phone gallery beside its project summary. */
.juan-staff-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,.95fr);min-height:520px;align-items:stretch}
.juan-staff-gallery{display:flex;min-width:0;background:#f0f1f4;overflow:hidden}
.juan-staff-gallery .case-media{width:100%;min-height:520px;padding:22px;background:#f0f1f4;justify-content:flex-start}
.juan-staff-gallery .juan-gallery{height:100%;padding:10px;gap:20px;justify-content:flex-start;align-items:center}
.juan-staff-gallery .juan-screen{scroll-snap-align:start}
.juan-staff-gallery .juan-gallery .phone-frame{--phone-height:460px}
.juan-staff-copy{padding:44px 38px}
.juan-staff-copy h2{font-size:clamp(22px,2vw,30px);font-weight:500;line-height:1.4;letter-spacing:-.035em;margin:0 0 20px}
.juan-staff-copy .case-facts{gap:16px}
.juan-staff-copy .case-facts>div{display:grid;gap:2px}
.juan-staff-copy .case-facts dt{font-size:11px}
.juan-staff-copy .case-facts dd{font-size:13px}
@media(max-width:1100px){.juan-staff-copy{padding:32px 26px}.juan-staff-gallery .case-media{padding:18px}.juan-staff-gallery .juan-gallery{gap:16px}.juan-staff-gallery .juan-gallery .phone-frame{--phone-height:410px}}
@media(max-width:760px){.juan-staff-layout{grid-template-columns:minmax(0,1fr);min-height:0}.juan-staff-gallery .case-media{min-height:430px;padding:18px 14px}.juan-staff-gallery .juan-gallery{padding:8px;gap:18px}.juan-staff-gallery .juan-gallery .phone-frame{--phone-height:380px}.juan-staff-copy{padding:28px 24px 32px}.juan-staff-copy h2{font-size:24px}}

/* Lead with the product introduction, then the screen gallery. */
.featured-introduction{margin:0 0 32px}.featured-introduction .case-row{margin:0}.featured-introduction .case-media img{object-fit:contain}@media(max-width:700px){.featured-introduction{margin-bottom:24px}}

/* Current FoMD screenshots and separately labelled concept renders. */
.fomd-current{padding:24px}.fomd-gallery{display:flex;gap:24px;overflow-x:auto;padding:16px 4px 24px;scroll-snap-type:x proximity}.fomd-image{margin:0;flex:0 0 auto;scroll-snap-align:start;width:260px}.fomd-image>img{width:100%;height:280px;object-fit:contain;background:#f5f5f7;border-radius:16px}.fomd-image .phone-frame{width:240px;height:auto;--phone-height:520px}.fomd-image img{display:block;max-width:100%}.fomd-image figcaption{font-size:12px;color:#666;margin-top:12px}.fomd-current h2{font-size:22px;margin:0 0 8px}.fomd-current>p{font-size:14px;color:#666}@media(max-width:600px){.fomd-current{padding:20px 14px}.fomd-image{width:240px}}
.fomd-image .phone-frame img{width:100%;height:auto;object-fit:contain;border-radius:calc(var(--phone-height)*.085 - 8px)}

.fomd-current+.fomd-current{margin-top:24px}.fomd-concept-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin-top:24px}.fomd-concept-grid .fomd-image{width:auto;min-width:0}.fomd-concept-grid .fomd-image>img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:0}.fomd-concept-grid figcaption{margin-top:14px;line-height:1.5}@media(max-width:760px){.fomd-concept-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}}

/* FoMD: every retained English app screen, with separate detail navigation. */
.fomd-home-showcase{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.9fr) minmax(240px,1fr)}.fomd-scroll-media{display:block!important;min-width:0;padding:0!important;overflow:hidden}.fomd-home-carousel .phone-frame{width:220px;height:auto}.fomd-home-carousel .iphone-slide .phone-frame>img{width:100%!important;height:auto!important;object-fit:contain!important;border-radius:calc(var(--phone-height)*.085 - 8px)}.fomd-home-carousel .iphone-track{align-items:flex-start}.fomd-home-showcase .work-caption .case-link{display:inline-block;margin-top:20px}@media(max-width:760px){.fomd-home-showcase{grid-template-columns:minmax(0,1fr)}.fomd-home-showcase .work-caption{padding:24px}.fomd-home-carousel .phone-frame{width:190px}}

/* Short bilingual career summary */
.experience{border-top:1px solid var(--line);margin-top:105px;padding-top:61px;display:grid;grid-template-columns:1fr 1.75fr;gap:90px}.experience h2{font-size:30px;font-weight:600;letter-spacing:-.035em;margin:0}.experience-list{display:grid;gap:24px}.experience-list article{border-bottom:1px solid var(--line);padding-bottom:20px}.experience-list h3{font-size:16px;font-weight:500;margin:0 0 7px}.experience-list p{font-size:13px;line-height:1.7;color:var(--muted);margin:0}.experience-list .experience-date{font-size:12px;margin-top:5px}@media(max-width:760px){.experience{margin-top:68px;padding-top:42px;grid-template-columns:1fr;gap:25px}.experience h2{font-size:26px}}
