.app-showcase { padding-block:5.5rem; border-top:1px solid #d4d8cd; color:#151a12; scroll-margin-top:2rem; }
.app-showcase * { min-width:0; }
.app-showcase-heading { display:grid; grid-template-columns:1.2fr 1fr; align-items:end; gap:3rem; margin-bottom:2.5rem; }
.app-showcase-heading .eyebrow { color:#365323; font-size:.8rem; letter-spacing:.06em; margin:0 0 1rem; }
.app-showcase-heading h2 { margin:0; font-size:clamp(2rem,3.5vw,3.3rem); line-height:1.12; letter-spacing:-.055em; max-width:16ch; }
.app-showcase-heading>p { margin:0; color:#535b4d; line-height:1.75; max-width:47ch; }
.app-showcase-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.5rem; }
.app-showcase-card { border:1px solid #d4d8cd; background:#fcfcf8; border-radius:10px; display:flex; flex-direction:column; overflow:hidden; }
.app-icon-stage { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:1.5rem; background:#eef0e8; border-bottom:1px solid #d4d8cd; }
.app-showcase .app-card-icon { width:88px; height:88px; object-fit:contain; border-radius:20px; }
.app-icon-stage>span { color:#4e5946; font-size:.8rem; }
.app-card-content { display:flex; flex:1; flex-direction:column; align-items:start; padding:1.5rem; overflow-wrap:anywhere; }
.app-showcase .app-card-category { font-size:.76rem; color:#365323; margin:0 0 .65rem; line-height:1.5; }
.app-showcase .app-card-content h3 { font-family:Inter,sans-serif; font-size:1.5rem; line-height:1.2; letter-spacing:-.04em; margin:0 0 1rem; }
.app-showcase .app-card-description { color:#353e2e; font-size:.95rem; line-height:1.7; margin:0 0 1rem; }
.app-showcase .app-card-audience { font-size:.8rem; line-height:1.65; color:#535b4d; margin:0 0 1.5rem; }
.app-showcase .app-store-name,.portfolio-app .app-store-name { font-size:.78rem; line-height:1.6; color:#535b4d; margin:0 0 .8rem; }
.app-showcase .app-store-link { margin-top:auto; padding:.85rem 0 0; border-top:1px solid #d4d8cd; min-height:44px; width:100%; display:inline-flex; align-items:center; justify-content:space-between; gap:.75rem; font-size:.86rem; line-height:1.5; color:#254a16; text-decoration:underline; text-underline-offset:4px; }
.app-showcase .app-store-link span { flex:none; }
.app-showcase a:focus-visible { outline:3px solid #315420; outline-offset:4px; }
.portfolio-app .app-portfolio-image { display:flex; align-items:center; justify-content:center; position:relative; aspect-ratio:1.6; background:#eef0e8; }
.portfolio-app .app-portfolio-image img { width:110px; height:110px; object-fit:contain; border-radius:24px; }
.portfolio-app .app-portfolio-image span { position:absolute; top:1rem; right:1rem; color:#4e5946; font-size:.8rem; }
@media(max-width:1100px){.app-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-showcase-heading{grid-template-columns:1fr 1fr;gap:2rem}}
@media(max-width:600px){.app-showcase{padding-block:3.5rem}.app-showcase-heading{grid-template-columns:1fr;gap:1.25rem}.app-showcase-heading h2{max-width:18ch}.app-showcase-grid{grid-template-columns:1fr}.app-card-content,.app-icon-stage{padding:1.25rem}}
