/* Application landing pages — source-led service explanations, no fake performance. */
.ic-app-hero{background:#111816;color:#edf5f1}
.ic-app-hero .page-hero-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.75fr);align-items:start}
.ic-app-hero .eyebrow{color:#70d3b0}
.ic-app-hero h1{font-size:clamp(38px,4.7vw,61px);letter-spacing:-.045em;line-height:1.08}
.ic-app-hero .lead{font-size:18px;color:#b2c8bb}
.ic-app-hero__panel{border:1px solid #365045;padding:26px 27px;background:#14211b;min-width:0}
.ic-app-hero__panel small{display:block;font:750 11px/1.5 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.09em;color:#65d4af;text-transform:uppercase;margin-bottom:12px}
.ic-app-hero__panel h2{color:#f0f7f1;font-size:23px;letter-spacing:-.025em;line-height:1.2;margin:0 0 14px}
.ic-app-hero__panel ul{list-style:none;padding:0;margin:0 0 20px}
.ic-app-hero__panel li{color:#bacebf;font-size:13px;padding:10px 0;border-bottom:1px solid #2b4537}
.ic-app-hero__panel li:first-child{padding-top:0}
.ic-app-hero__panel .btn{width:100%;min-height:45px}
.ic-app-section h2{font-size:clamp(30px,3.6vw,46px);letter-spacing:-.04em;line-height:1.12;margin:0 0 22px}
.ic-app-section .grid-3{border-color:var(--line)}
.ic-app-section .card{min-height:230px}
.ic-app-section .card h3{font-size:20px;letter-spacing:-.025em}
.ic-app-section .card p{font-size:14px;line-height:1.7}
.ic-app-section .section-head{margin-bottom:28px}
.ic-app-details{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.8fr);gap:clamp(28px,4.5vw,66px)}
.ic-app-details h2{margin:0 0 20px}
.ic-app-details ul{padding:0;list-style:none}
.ic-app-details li{border-bottom:1px solid #35493e;padding:14px 0;font-size:15px;color:#c2d7ca}
.ic-app-details li strong{color:#eff5ef;display:block;margin-bottom:4px}
.ic-app-details__side{border-left:2px solid #3b8469;padding-left:26px}
.ic-app-details__side h3{font-size:22px;color:#f0f6f2;margin:0 0 13px}
.ic-app-details__side p{color:#b6c9bc;line-height:1.7;font-size:14px}
.ic-app-details__side a:not(.btn){color:#83dfb7;text-decoration:underline;text-underline-offset:4px}
.ic-app-faq{border-top:1px solid var(--line)}
.ic-app-faq details{border-bottom:1px solid var(--line)}
.ic-app-faq summary{cursor:pointer;font-weight:700;padding:19px 0;line-height:1.45}
.ic-app-faq summary:focus-visible{outline:2px solid #62cfa8;outline-offset:4px}
.ic-app-faq details p{color:var(--muted);font-size:14px;margin:0;padding:0 0 20px;max-width:760px}
.ic-app-links{display:flex;gap:14px 23px;flex-wrap:wrap;margin-top:23px}
.ic-app-links a{color:var(--teal-text);font-weight:720;font-size:14px;text-decoration:underline;text-underline-offset:4px}
.ic-app-side-cta{margin-top:20px}
@media(max-width:900px){.ic-app-hero .page-hero-grid,.ic-app-details{grid-template-columns:1fr}.ic-app-details__side{border-left:0;border-top:2px solid #3b8469;padding:22px 0 0}.ic-app-hero__panel{padding:24px}}
@media(max-width:640px){.ic-app-section .grid-3{grid-template-columns:1fr}.ic-app-hero h1{font-size:clamp(34px,9vw,43px)}.ic-app-hero__panel{padding:22px}}

/* Page-specific game/voice hero illustrations, no inline style or JavaScript. */
.ic-app-hero .ic-app-hero__visual{margin:26px 0 0;width:100%;position:relative;overflow:hidden;border:1px solid #344b41;background:#0c1511}
.ic-app-hero .ic-app-hero__visual>img{display:block;width:100%;height:clamp(210px,35vw,390px);object-fit:cover;object-position:center;max-width:none}
.ic-app-hero .ic-app-hero__caption{position:absolute;right:13px;bottom:11px;max-width:min(65%,400px);padding:7px 11px;color:#d4e4db;background:rgba(8,20,15,.88);font-size:11px;line-height:1.3;border:1px solid #365547}
@media(max-width:720px){.ic-app-hero .ic-app-hero__visual>img{height:225px}.ic-app-hero .ic-app-hero__caption{max-width:85%;font-size:10px}}
