/* Shared portfolio navigation and mobile-app presentation. */
.cmPortfolioSwitch{display:flex;gap:0;padding-block:0;margin-bottom:48px}
.cmPortfolioSwitch a{flex:1;padding:22px 28px;border:1px solid var(--cmLine,#ffffff25);color:var(--cmMuted,#b5b8af);font-size:18px;line-height:1.4;transition:background .2s,color .2s}
.cmPortfolioSwitch a+a{border-left:0}
.cmPortfolioSwitch a[aria-current=page]{color:var(--cmText,#eeeade);background:#b87f5017;box-shadow:inset 0 -2px #df9a67}
.cmPortfolioSwitch a:hover{color:#f3e7d8;background:#b87f5024}
.cmPortfolioSwitch span{display:block;margin-top:5px;font-size:14px;color:var(--cmMuted,#b5b8af)}
.cmApps{padding-block:100px;border-top:1px solid var(--cmLine,#ffffff25);background:#11130f}
.cmApps h2 em{color:var(--cmCopper,#d9915c);font-weight:400}
.cmAppSectionIntro{max-width:350px}
.cmAppSectionIntro>p{font-size:18px;line-height:1.7;color:var(--cmMuted,#b5b8af);margin:0 0 22px}
.cmAppGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 32px}
.cmAppCard{display:block;min-width:0;color:inherit}
.cmAppArtwork{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:4/5;overflow:hidden;background:#1b1f19;border:1px solid #ffffff28}
.cmAppArtwork>img{display:block;width:100%;height:100%;object-fit:contain;padding:30px 40px 64px;box-sizing:border-box;transition:transform .45s ease}
.cmAppCard:hover .cmAppArtwork>img{transform:scale(1.025)}
.cmAppIndex{position:absolute;top:18px;left:18px;padding:8px 10px;background:#10130fe6;border:1px solid #ffffff30;font:14px/1.2 monospace}
.cmAppOpen{position:absolute;bottom:18px;right:18px;font-size:14px;line-height:1.4;border:1px solid #ffffff38;padding:10px 14px;background:#121510ed;color:#f0e9dc}
.cmAppType{width:100%;height:100%;min-height:300px;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;gap:25px;padding:60px 32px 90px;border-top:3px solid #bd845c}
.cmAppType>span{font-size:14px;color:#bfb9a7;letter-spacing:.05em}
.cmAppType strong{font:clamp(30px,3.2vw,52px)/1.12 Georgia,serif;overflow-wrap:anywhere;color:#e7d8c2}
.cmAppInfo{padding:22px 0;border-bottom:1px solid var(--cmLine,#ffffff25)}
.cmAppInfo h3{margin:0 0 10px;font-size:22px;line-height:1.3;font-weight:500}
.cmAppInfo p{font-size:16px;line-height:1.65;color:var(--cmMuted,#b5b8af);margin:0 0 16px}
.cmAppInfo>span,.cmAppStatus{display:inline-block;font-size:14px;line-height:1.4;color:#e4b48d;border:1px solid #ab734448;padding:7px 11px}
.cmAppEmpty{display:grid;grid-template-columns:1.45fr 1fr;gap:60px;padding:clamp(28px,4.5vw,70px);border:1px solid #ffffff26;border-top:2px solid #bd845c;background:linear-gradient(125deg,#24291f,#121610)}
.cmAppEmptyLabel{font-size:14px;letter-spacing:.08em;line-height:1.5;color:#e2b390}
.cmAppEmpty h3{margin:28px 0 22px;font:clamp(32px,4vw,62px)/1.12 Georgia,serif;letter-spacing:-.025em;color:#ede2ce}
.cmAppEmpty p{max-width:520px;font-size:17px;line-height:1.75;color:#bcc0b1;margin:0}
.cmAppEmptyAside{align-self:end;padding-left:35px;border-left:1px solid #ffffff29}
.cmAppEmptyAside>span{display:block;color:#f0e5cf;font-size:20px;margin-bottom:20px}
.cmAppEmptyAside .cmButton{margin-top:28px}
.cmAppReview{padding-block:44px 90px}
.cmAppReviewHead{display:flex;align-items:end;justify-content:space-between;gap:32px;padding-block:36px}
.cmAppReviewHead>div:first-child{max-width:750px;min-width:0}
.cmAppReviewHead h1{font-size:clamp(36px,5.8vw,84px);line-height:1.08;overflow-wrap:anywhere}
.cmAppReviewHead p:not(.cmEyebrow){font-size:18px;line-height:1.7;color:var(--cmMuted,#b5b8af)}
.cmAppReviewHead .cmActions{flex-wrap:wrap}
.cmAppPreviewStage{padding:48px 20px;background:#1a1d17;border:1px solid #ffffff25}
.cmAppPreviewDevice{max-width:430px;margin:0 auto;border:1px solid #ffffff48;border-radius:26px;overflow:hidden;background:#0c0e0b;box-shadow:0 25px 70px #0007}
.cmAppPreviewFrame{display:block;width:100%;height:820px;max-height:82svh;border:0;background:#fff}
.cmAppPreviewDevice .previewLoadingShell{width:100%;min-height:0;height:auto;border:0;border-radius:0}
.cmAppPreviewDevice .previewLoadingOverlay{border-radius:0}
.cmAppScreens{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:40px}
.cmAppScreens img{display:block;width:100%;max-height:820px;object-fit:contain;object-position:top;background:#191d16;border:1px solid #ffffff25;padding:14px;box-sizing:border-box}
.cmAppCard:focus-visible,.cmPortfolioSwitch a:focus-visible{outline:2px solid #e9ac77;outline-offset:6px}
@media(min-width:1281px){.cinemaHome .cmHeader{gap:24px}.cinemaHome .cmHeader nav{gap:clamp(12px,1.2vw,22px);flex:0 0 auto;width:max-content}.cinemaHome .cmHeader nav a{white-space:nowrap}.cmNavCta{flex-shrink:0}}
@media(max-width:1280px){.cinemaHome .cmHeader{height:88px;gap:18px}.cinemaHome .cmHeader nav{display:none}.cinemaHome .cmHeader nav.open{display:flex;position:absolute;top:88px;left:0;right:0;margin:0;background:#111510;flex-direction:column;align-items:stretch;gap:0;padding:18px 28px 26px;border-bottom:1px solid #c4875266;box-shadow:0 20px 40px #0008;max-height:calc(100svh - 88px);overflow:auto}.cinemaHome .cmHeader nav.open a{font-size:18px;padding:13px 0}.cinemaHome .cmMenu{display:block;border:0;background:transparent;color:#fff;font-size:24px;padding:10px;min-width:44px;min-height:44px}.cmNavCta{margin-left:auto}.cmAppGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.cmAppReviewHead{align-items:start;flex-direction:column}.cmAppEmpty{gap:30px}}
@media(max-width:640px){.cmPortfolioSwitch{margin-bottom:30px}.cmPortfolioSwitch a{padding:18px 14px;font-size:16px}.cmPortfolioSwitch span{font-size:14px}.cmApps{padding-block:64px}.cmAppGrid{grid-template-columns:1fr;gap:32px}.cmAppArtwork{max-height:580px}.cmAppArtwork>img{padding:26px 24px 64px}.cmAppEmpty{grid-template-columns:1fr;gap:30px}.cmAppEmptyAside{padding:24px 0 0;border-left:0;border-top:1px solid #ffffff25}.cmAppEmpty h3{font-size:36px}.cmAppPreviewStage{padding:22px 10px}.cmAppPreviewFrame{height:760px;max-height:85svh}.cmAppScreens{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cmAppScreens img{padding:6px}.cmAppReviewHead .cmButton{width:100%;justify-content:center}.cmAppReviewHead .cmActions{width:100%}.cmHero .cmActions{gap:14px}.cmHero .cmActions>.cmTextLink{flex-basis:100%}.cmHeroIntro{margin-bottom:20px!important}.cmAppReview{padding-inline:16px}}
@media(prefers-reduced-motion:reduce){.cmAppArtwork>img,.cmPortfolioSwitch a{transition:none}}

@media(max-width:640px){.cmPortfolioSwitch{flex-wrap:wrap}.cmPortfolioSwitch a{flex:1 1 45%}.cmPortfolioSwitch a:last-child{border:1px solid var(--cmLine,#ffffff25)}}
