/* Tablet and desktop share the wide presentation; preserve the phone stylesheet. */
@media(min-width:700px) and (min-height:500px), (min-width:1100px){
 html.ng-key-desktop body{overflow-x:clip}
 html.ng-key-desktop .page:has(.ng-key-wide){display:block;max-width:none;width:100%;padding:26px 3vw}
 html.ng-key-desktop .ng-key-wide{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(340px,400px) minmax(0,1fr);align-items:start;gap:30px;width:100%!important;max-width:1540px!important;margin:0 auto!important;padding:26px 3vw 50px!important;overflow:visible!important;min-height:0;isolation:isolate}
 .ng-key-wide>.ng-key-left,.ng-key-wide>.ng-key-brand,.ng-key-wide>.ng-key-center{min-width:0;position:relative;grid-row:1}
 .ng-key-wide>.ng-key-left{grid-column:1;padding-top:55px}.ng-key-wide>.ng-key-center{grid-column:2}.ng-key-wide>.ng-key-brand{grid-column:3;margin-top:100px;text-align:center;padding:35px 10px}
 .ng-key-wide>.ng-key-support{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:22px;margin-top:10px;min-width:0}
 .ng-key-support>*{min-width:0;margin:0!important}.ng-key-support>.ng-key-full{grid-column:1/-1}
 .ng-key-support>:is(section,details,.connect-panel,.business-info){padding:22px;border:1px solid color-mix(in srgb,var(--ng-accent) 36%,transparent);border-radius:20px;background:linear-gradient(140deg,color-mix(in srgb,var(--ng-accent) 9%,#090b10),#080a10)}
 .ng-key-support :is(.tools-grid,.tools:not(section),.grid){display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px}
 .ng-key-support input,.ng-key-support textarea,.ng-key-support select{font-size:16px!important}
 .ng-key-support p{font-size:15px;line-height:1.6}.ng-key-support h2{font-size:22px}.ng-key-support .services{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
 .ng-key-center .scene,.ng-key-center .stage,.ng-key-center .presentation{width:100%;max-width:380px;margin-left:auto;margin-right:auto}
 .ng-key-center .hero{display:block;padding:0;max-width:100%}.ng-key-center .topbar{position:relative;z-index:30}.ng-key-center header{padding:12px;gap:8px;max-width:100%;flex-wrap:wrap}
 .ng-key-left .ng-key-kicker{font:700 11px/1.5 Arial,sans-serif;letter-spacing:.18em;color:var(--ng-accent);margin:0 0 18px}
 .ng-key-left .ng-key-headline{font:800 clamp(28px,2.8vw,45px)/1.08 Arial,sans-serif;letter-spacing:-.035em;color:#fff;margin:0 0 28px;text-align:left}
 .ng-key-left .ng-key-living{padding:20px;border:1px solid color-mix(in srgb,var(--ng-accent) 45%,transparent);border-top:3px solid var(--ng-accent);border-radius:20px;background:linear-gradient(140deg,color-mix(in srgb,var(--ng-accent) 12%,#111),#080a10);box-shadow:0 0 35px color-mix(in srgb,var(--ng-accent) 9%,transparent)}
 .ng-key-living>section{padding:0!important;border:0!important;margin:0!important;background:none!important}
 .ng-key-living .ng-key-subhead{font:700 20px/1.3 Arial,sans-serif;color:white;margin:0 0 18px}
 .ng-key-living video,.ng-key-living .ng-key-presentation{display:block;width:100%!important;max-width:300px!important;height:auto!important;max-height:480px;object-fit:contain;margin:0 auto 16px;border-radius:14px}
 .ng-key-living .media-tools{grid-template-columns:1fr 1fr;gap:6px}.ng-key-living .media-tools :is(a,button){min-width:0;font-size:12px;padding:10px}
 .ng-key-living .ng-key-play{display:block;width:100%;min-height:48px;padding:12px;border-radius:12px;border:1px solid var(--ng-accent);background:var(--ng-accent);color:#080b10;font:700 15px/1.4 Arial,sans-serif;cursor:pointer}
 .ng-key-brand .ng-key-brand-logo{position:relative;display:block;width:100%;height:290px;object-fit:contain;margin:0 auto 26px;filter:drop-shadow(0 0 25px color-mix(in srgb,var(--ng-accent) 30%,transparent))}
 .ng-key-brand .ng-key-brand-orbit{position:absolute;inset:15px 0 auto;height:300px;border:1px solid color-mix(in srgb,var(--ng-accent) 35%,transparent);border-radius:50%;background:radial-gradient(ellipse,color-mix(in srgb,var(--ng-accent) 14%,transparent),transparent 70%);transform:rotate(-20deg);pointer-events:none}
 .ng-key-brand .ng-key-brand-name{font:800 24px/1.2 Arial,sans-serif;color:#fff;margin:0 0 12px}.ng-key-brand .ng-key-brand-note{font:400 15px/1.5 Arial,sans-serif;color:#cdd3dd;margin:0 0 20px}.ng-key-brand .ng-key-brand-link{display:inline-block;color:var(--ng-accent);font:700 14px/1.6 Arial,sans-serif;text-decoration:underline;padding:10px}
 .ng-key-wide :is(.ng-key-play,.ng-key-brand-link):focus-visible{outline:2px solid #fff;outline-offset:4px}
}

@media(min-width:700px) and (min-height:500px), (min-width:1100px){html.ng-key-desktop main#key{max-width:none;width:100%;padding-inline:3vw}.ng-key-wide>.key-content{display:none}.ng-key-support .panel:has(>.tools){grid-column:1/-1}.ng-key-center .card-stage{position:relative;top:auto;width:100%;min-width:0}}

/* Tablet: same three-column composition, sized to the available space. */
@media(min-width:700px) and (max-width:1099px) and (min-height:500px){
 html.ng-key-desktop .page:has(.ng-key-wide){padding:16px 0}
 html.ng-key-desktop .ng-key-wide{box-sizing:border-box;grid-template-columns:minmax(0,1fr) minmax(260px,36vw) minmax(0,1fr);gap:14px;padding:22px 18px 36px!important}
 .ng-key-wide *{box-sizing:border-box}
 .ng-key-wide>.ng-key-left{padding-top:24px}.ng-key-wide>.ng-key-brand{margin-top:65px;padding:20px 0}
 .ng-key-left .ng-key-headline{font-size:clamp(21px,2.8vw,30px);overflow-wrap:anywhere;margin-bottom:18px}
 .ng-key-left .ng-key-kicker{font-size:10px;letter-spacing:.1em}
 .ng-key-left .ng-key-living{padding:12px}.ng-key-living .ng-key-subhead{font-size:17px}
 .ng-key-living .media-tools{grid-template-columns:1fr}.ng-key-living .media-tools :is(a,button){min-height:44px}
 .ng-key-brand .ng-key-brand-logo{height:200px}.ng-key-brand .ng-key-brand-orbit{height:210px}
 .ng-key-brand .ng-key-brand-name{font-size:20px;overflow-wrap:anywhere}.ng-key-brand .ng-key-brand-note{font-size:14px}
 .ng-key-center header{flex-wrap:wrap}.ng-key-center .scene,.ng-key-center .stage,.ng-key-center .presentation{min-width:0;max-width:100%}
 .ng-key-wide>.ng-key-support{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
 .ng-key-support>:is(section,details,.connect-panel,.business-info){padding:16px}
}

/* One branded website link below the inquiry; paired playback controls above. */
.ng-key-website{display:flex;justify-content:center;margin:28px 0 8px;padding-top:24px;border-top:1px solid color-mix(in srgb,var(--ng-accent,#aaa) 30%,transparent)}
.ng-key-website-link{display:block;padding:12px;border-radius:18px}
.ng-key-website-logo{display:block;width:160px;max-width:100%;height:140px;object-fit:contain;filter:drop-shadow(0 0 16px color-mix(in srgb,var(--ng-accent,#aaa) 24%,transparent))}
.ng-key-assistant{margin:16px 0 0!important;padding:0!important;border:0!important;background:none!important}
.ng-key-assistant-play{display:block;width:100%;min-height:54px;padding:14px 16px;border:1px solid var(--ng-accent,#ddd);border-radius:12px;background:linear-gradient(135deg,#ffffff16,#ffffff05);color:var(--ng-accent,#fff);font:700 15px/1.5 Arial,sans-serif;cursor:pointer;text-align:center}
.ng-key-assistant-play[aria-pressed=true]{box-shadow:0 0 22px color-mix(in srgb,var(--ng-accent,#fff) 25%,transparent)}
.ng-key-assistant-note{display:block;text-align:center;font:12px/1.5 Arial,sans-serif;color:#b7bec9;margin:9px 0 0}
.ng-key-original-voice{display:none!important}
.ng-key-assistant-play:focus-visible,.ng-key-website-link:focus-visible{outline:2px solid white;outline-offset:4px}
@media(min-width:700px) and (min-height:500px), (min-width:1100px){
 html.ng-key-desktop .ng-key-wide{grid-template-columns:minmax(0,420px) minmax(340px,440px);justify-content:center;column-gap:clamp(40px,7vw,112px);max-width:1400px!important}
 .ng-key-wide>.ng-key-left{padding-top:24px}
 .ng-key-wide>.ng-key-support{margin-top:32px}
 .ng-key-living>section.ng-key-assistant{margin-top:18px!important}
 .ng-key-wide .ng-key-center .scene,.ng-key-wide .ng-key-center .stage,.ng-key-wide .ng-key-center .presentation{max-width:420px}
}
@media(min-width:700px) and (max-width:1099px) and (min-height:500px){
 html.ng-key-desktop .ng-key-wide{grid-template-columns:minmax(0,1fr) minmax(280px,42vw);column-gap:32px;padding-inline:22px!important}
}
