/* Native AdamTech product showcase. DESIGN_VARIANCE:8, MOTION_INTENSITY:3,
   VISUAL_DENSITY:4. Preserve the dark brand; vary composition and subject.
   Layer order: sector artwork 0, readable copy 1, existing site header above. */
.s-products{padding:0;background:var(--void);scroll-margin-top:88px}
.products-intro{padding-block:clamp(64px,7vw,100px) 48px}
.products-head h2{font-size:clamp(40px,5vw,72px);font-weight:800;line-height:1.04;letter-spacing:-.04em;text-wrap:balance}
.products-head>p{margin-top:24px;max-width:44ch;color:rgba(250,250,250,.72);font-size:clamp(18px,1.7vw,22px);line-height:1.5}
.products-jump{display:flex;flex-wrap:wrap;max-width:800px;gap:14px 24px;margin-top:36px}
.products-jump a{padding-block:9px;border-bottom:2px solid var(--product-color);color:var(--ink);font-size:15px;font-weight:600;line-height:1.4;text-decoration:none}
.products-jump a:hover{color:color-mix(in srgb,var(--product-color) 50%,var(--ink))}
.product-feature{position:relative;isolation:isolate;overflow:hidden;background:var(--void);border-top:1px solid color-mix(in srgb,var(--product-color) 25%,var(--void));scroll-margin-top:88px}
.product-feature::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:-1}
.product-layout{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(36px,5vw,76px);min-height:530px;padding-block:76px}
.product-copy{position:relative;z-index:1;min-width:0}
.product-identity,.product-content{min-width:0}
.product-brand{display:flex;align-items:center;gap:18px;min-width:0}
.product-brand img{width:56px;height:56px;flex:none;object-fit:contain}
.product-brand h3{font-size:clamp(52px,6vw,88px);font-weight:800;line-height:1.04;letter-spacing:-.055em;color:var(--ink)}
.product-brand h3.product-title-long{font-size:clamp(40px,4.8vw,68px);line-height:1.06}
#charging-title{font-size:clamp(32px,3.65vw,52px)}
.product-edition{display:block;margin-top:10px;font:700 22px/1.4 'JetBrains Mono',ui-monospace,monospace;letter-spacing:.06em;color:color-mix(in srgb,var(--product-color) 55%,var(--ink))}
.product-category{margin-top:20px;color:rgba(250,250,250,.73);font-size:16px;line-height:1.5}
.product-content{margin-top:30px}
.product-content>p{max-width:31ch;font-size:clamp(23px,2.1vw,30px);font-weight:500;line-height:1.4;letter-spacing:-.025em;color:var(--ink);text-wrap:pretty}
.product-cta.btn-primary{margin-top:28px;min-height:54px;justify-content:center;background:var(--product-color);color:var(--product-ink);white-space:normal;text-align:center;line-height:1.5}
.product-cta.btn-primary:hover{background:var(--product-color);color:var(--product-ink);transform:translateY(-2px);box-shadow:0 5px 16px rgba(7,8,15,.2)}
.product-cta.btn-primary:active{transform:translateY(0)}
.product-cta:focus-visible,.products-jump a:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.product-visual{position:relative;min-width:0;height:390px}
.product-visual img{display:block;max-width:100%}
.product-visual figure{margin:0}
.product-visual figcaption{margin-top:14px;color:rgba(250,250,250,.68);font-size:12px;line-height:1.5}
.product-sculpture{display:block;background:var(--product-color);mask-position:center;mask-repeat:no-repeat;mask-size:contain;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;-webkit-mask-size:contain}
/* AIVIO: communication routes converge around the original mark. */
.product-scene-aivio::before{background:linear-gradient(112deg,#0e0a1b 0%,#110c20 55%,#352058 100%)}
.scene-aivio{position:relative;height:100%;display:grid;place-items:center}
.scene-aivio::before,.scene-aivio::after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(191,162,255,.24);border-radius:50%;transform:rotate(-24deg) scaleY(.64)}
.scene-aivio::after{width:440px;height:440px;transform:rotate(24deg) scaleY(.64)}
.scene-aivio .hero-mark{position:relative;width:300px;height:300px;object-fit:contain;transform:rotate(-9deg)}
.channel-path{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:6px 0;z-index:1;font:500 13px/1.5 'JetBrains Mono',monospace;color:#DED1FF}
.channel-path span{padding:9px 14px;background:#201438;border:1px solid #644890;border-radius:12px}
.channel-path span:nth-child(2){align-self:flex-start}
/* ERP: a typographic diagram, not a simulated application screenshot. */
.product-scene-profigram::before{background:linear-gradient(154deg,#100b20 0%,#100b20 56%,#2c1751 56%,#2c1751 70%,#170f2c 70%)}
.scene-business{position:relative;height:100%;display:flex;flex-direction:column;justify-content:center}
.erp-word{font-size:clamp(130px,17vw,220px);font-weight:800;line-height:.9;letter-spacing:-.08em;color:#B89FEF;transform:skewY(-6deg)}
.business-layers{position:relative;margin:18px 0 0 12px;display:flex;gap:12px;flex-wrap:wrap;transform:skewY(-6deg)}
.business-layers span{padding:15px 20px;border-top:1px solid #7B5CB0;color:#ECE3FF;font-size:17px}
/* Kandai: original red-and-gold emblem, framed by geometric ornament. */
.product-scene-kandai::before{background:linear-gradient(90deg,#220c13 0%,#220c13 43%,#4a171e 100%)}
.product-composition-banner .product-layout{display:grid;min-height:560px}
.product-composition-banner .product-copy{max-width:none}
.product-composition-banner .product-visual{position:relative;width:100%;height:390px}
.scene-kandai{position:relative;height:100%;display:grid;place-items:center}
.scene-kandai img{position:relative;width:280px;height:280px;object-fit:cover;border-radius:18px}
.ornament-frame{position:absolute;width:330px;height:330px;border:1px solid rgba(242,204,131,.38);transform:rotate(45deg);border-radius:18px}
.ornament-frame:nth-child(2){width:440px;height:440px;transform:rotate(22.5deg);border-color:rgba(242,204,131,.2)}
/* Video and construction: actual product screenshots with clear captions. */
.product-composition-wide .product-layout{grid-template-columns:minmax(0,1fr);gap:38px;min-height:0;padding-block:64px 72px}
.product-composition-wide .product-copy{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.product-composition-wide .product-content{margin-top:0}
.product-composition-wide .product-visual{height:auto}
.scene-screen{position:relative;max-width:1020px;margin-inline:auto!important}
.scene-screen img{width:100%;height:390px;object-fit:cover;object-position:top;border-radius:18px;border:1px solid rgba(250,250,250,.15);box-shadow:0 18px 48px rgba(0,0,0,.25)}
.product-scene-kurultai::before{background:linear-gradient(164deg,#081523 0%,#0e2843 61%,#123c64 61%,#0b2038 100%)}
.scene-kurultai{transform:rotate(-1.25deg)}
.scene-kurultai figcaption{transform:rotate(1.25deg)}
.scene-meeting{position:relative;height:320px;display:flex;align-items:center;justify-content:center}
.scene-meeting img{position:relative;width:230px;height:230px;transform:rotate(-9deg);object-fit:contain}
.meeting-ring{position:absolute;width:700px;height:270px;border:1px solid #356188;border-radius:50%;transform:rotate(-12deg)}
.meeting-ring:nth-child(2){width:560px;height:320px;transform:rotate(14deg)}
.meeting-camera{position:absolute;right:4%;width:260px;height:260px;mask-image:url(assets/showcase-v2/video-camera-duotone.svg);-webkit-mask-image:url(assets/showcase-v2/video-camera-duotone.svg);opacity:.33}
.product-scene-building::before{background:linear-gradient(150deg,#14180a 0%,#1a200e 64%,#313b0d 64%,#11150a 100%)}
.scene-building{max-width:1100px}
.scene-building img{height:440px;object-fit:cover;object-position:top;border-color:#738000}
.scene-construction{position:relative;height:310px}
.construction-word{position:absolute;left:3%;top:0;font-size:230px;font-weight:800;line-height:1;letter-spacing:-.06em;color:rgba(214,241,43,.25)}
.construction-buildings{position:absolute;right:9%;top:-20px;width:400px;height:330px;mask-image:url(assets/showcase-v2/buildings-duotone.svg);-webkit-mask-image:url(assets/showcase-v2/buildings-duotone.svg)}
.construction-plinth{position:absolute;right:0;bottom:20px;width:56%;height:1px;background:#738000;transform:rotate(-9deg)}
/* iBox: the hardware itself carries the composition. */
.product-scene-ibox::before{background:linear-gradient(120deg,#1c090d 0%,#250d12 52%,#7c1a25 52%,#380c12 100%)}
.product-composition-photo .product-layout{min-height:650px}
.product-composition-photo .product-visual{height:500px}
.scene-fridge{height:100%;width:86%;margin-inline:auto!important;transform:rotate(4deg)}
.scene-fridge img{width:100%;height:100%;object-fit:cover;object-position:35% 38%;border-radius:18px;border:1px solid rgba(250,250,250,.22)}
.scene-fridge figcaption{transform:rotate(-4deg)}
/* VAIS: a static voice waveform, not invented operational measurements. */
.product-scene-voice::before{background:linear-gradient(110deg,#08151d 0%,#08151d 50%,#123543 100%)}
#voice-bots-title{font-size:clamp(84px,10vw,138px);letter-spacing:-.06em}
.scene-voice{position:relative;height:100%;display:flex;align-items:center;justify-content:center}
.voice-wave{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;height:78%;transform:rotate(-9deg)}
.voice-wave i{display:block;width:5px;height:var(--amplitude);border-radius:4px;background:linear-gradient(#A9E5FF,#397D97);opacity:.64}
.voice-word{position:absolute;right:0;bottom:-14px;font-size:100px;font-weight:800;letter-spacing:-.06em;color:rgba(169,229,255,.15)}
/* Charging: the official Phosphor station mark stands on a perspective plinth. */
.product-scene-charging::before{background:linear-gradient(120deg,#091b15,#09271e 62%,#124333)}
.scene-charging{position:relative;height:100%}
.charging-sculpture{position:absolute;width:330px;height:330px;left:50%;top:0;transform:translateX(-50%);mask-image:url(assets/showcase-v2/charging-station-duotone.svg);-webkit-mask-image:url(assets/showcase-v2/charging-station-duotone.svg)}
.charging-floor{position:absolute;bottom:5px;left:10%;width:80%;height:140px;border:1px solid #327F64;background:#0F3529;border-radius:50%;transform:rotateX(56deg) rotateZ(-18deg)}
.charge-line{position:absolute;left:6%;right:6%;bottom:12%;height:1px;background:#42D99B;transform:rotate(-18deg);opacity:.4}
/* Parking: physical lane geometry and the recognizable P sign. */
.product-scene-parking::before{background:linear-gradient(115deg,#221b0c 0%,#221b0c 46%,#3b2f13 100%)}
.scene-parking{position:relative;height:100%}
.parking-letter{position:absolute;right:0;top:-20px;font-size:360px;font-weight:800;line-height:1;letter-spacing:-.08em;color:rgba(232,183,80,.19)}
.parking-lanes{position:absolute;left:0;right:0;bottom:8%;display:flex;gap:24px;transform:skewY(-13deg)}
.parking-lanes i{display:block;height:140px;flex:1;border:2px solid rgba(232,183,80,.6);border-top:0}
.parking-car{position:absolute;left:15%;bottom:17%;width:220px;height:145px;mask-image:url(assets/showcase-v2/car-profile-duotone.svg);-webkit-mask-image:url(assets/showcase-v2/car-profile-duotone.svg);transform:skewY(-13deg)}
/* CRM: a readable conceptual sales funnel. */
.product-scene-crm::before{background:linear-gradient(154deg,#091521 0%,#102943 68%,#092039 68%,#092039 100%)}
.product-composition-diagram .product-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.product-composition-diagram .product-copy{grid-column:2;grid-row:1}
.product-composition-diagram .product-visual{grid-column:1;grid-row:1}
.scene-funnel{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}
.funnel-stage{display:grid;place-items:center;width:100%;height:108px;clip-path:polygon(0 0,100% 0,87% 100%,13% 100%);background:#265B91;color:#F0F8FF;font-size:24px;font-weight:600}
.funnel-stage:nth-child(2){width:72%;background:#347ABA}
.funnel-stage:nth-child(3){width:46%;background:#4195F7;color:#07080F}
/* iMenu: its cloche becomes a large graphic focal point. */
.product-scene-imenu::before{background:linear-gradient(126deg,#200b14 0%,#280b17 58%,#5e1430 58%,#3c0d20 100%)}
.scene-menu{position:relative;height:100%;display:grid;place-items:center}
.scene-menu img{position:relative;width:250px;height:250px;transform:rotate(-7deg)}
.menu-disc{position:absolute;width:390px;height:390px;border-radius:50%;border:1px solid #9A3456;background:repeating-conic-gradient(from -10deg,#65223b 0 1deg,#3D1425 1deg 10deg);transform:scaleY(.86) rotate(-7deg)}
.menu-word{position:absolute;right:0;bottom:-12px;color:#FFA9C6;font-size:72px;font-weight:800;line-height:1;letter-spacing:-.045em;transform:rotate(-7deg)}
/* PMS: room architecture, not a fabricated hotel application. */
.product-scene-hotels::before{background:linear-gradient(130deg,#091b1b 0%,#0f3435 69%,#155052 69%,#112d2e 100%)}
.product-scene-hotels .product-visual{height:270px}
.scene-hotel{position:relative;height:100%}
.hotel-windows{position:absolute;right:4%;top:0;display:grid;grid-template-columns:repeat(3,58px);gap:18px;transform:skewY(-10deg)}
.hotel-windows i{display:block;height:98px;border:1px solid #499A98;background:linear-gradient(150deg,#123A3D,#25666A)}
.hotel-word{position:absolute;left:4%;top:0;font-size:220px;letter-spacing:-.055em;font-weight:800;line-height:1;color:rgba(127,227,222,.26)}
.hotel-bed{position:absolute;left:40%;top:-8%;width:340px;height:290px;mask-image:url(assets/showcase-v2/bed-duotone.svg);-webkit-mask-image:url(assets/showcase-v2/bed-duotone.svg)}
/* Studio: large typography and interlocking configuration layers. */
.product-scene-studio::before{background:linear-gradient(135deg,#161020 0%,#161020 52%,#322340 52%,#22192e 100%)}
.product-scene-studio .product-copy{max-width:none}
.product-scene-studio .product-edition{font-family:inherit;font-size:clamp(58px,6.8vw,90px);line-height:1.03;letter-spacing:-.05em;margin-top:4px}
.scene-studio{position:relative;height:100%}
.studio-plane{position:absolute;width:300px;height:240px;top:20px;left:10%;border:1px solid #765F92;background:#271E35;border-radius:18px;transform:rotate(-18deg) skewY(10deg)}
.studio-plane:nth-child(2){top:86px;left:23%;background:#3D2E50;border-color:#B092D6}
.studio-gear{position:absolute;width:260px;height:260px;right:0;top:46px;mask-image:url(assets/showcase-v2/gear-duotone.svg);-webkit-mask-image:url(assets/showcase-v2/gear-duotone.svg)}
.studio-word{position:absolute;bottom:0;left:0;font-size:78px;font-weight:800;letter-spacing:-.05em;color:rgba(216,200,244,.25)}
@media (hover:hover) and (prefers-reduced-motion:no-preference){
  .product-visual img,.product-sculpture{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
  .product-feature:hover .scene-kandai img{transform:scale(1.035)}
  .product-feature:hover .scene-aivio .hero-mark{transform:rotate(-6deg) scale(1.03)}
  .product-feature:hover .scene-menu img{transform:rotate(-4deg)}
}
@media(min-width:1101px){.site-header .nav{gap:clamp(14px,1.6vw,24px)}}
@media(max-width:1100px){
  .site-header .nav,.site-header .btn.btn-primary.headcta{display:none}
  .site-header .nav-toggle{display:block}.site-header .bar{gap:16px}
  .site-header.open .nav{display:flex;flex-direction:column;align-items:stretch;gap:6px;position:absolute;top:100%;left:0;right:0;background:rgba(7,8,15,.96);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);padding:18px var(--gut) 24px}
  .site-header.open .nav a{padding:12px 0;border-bottom:1px solid var(--line)}
  .site-header.open .nav .nav-cta{display:inline-flex;justify-content:center;border:0;margin-top:12px;padding:15px 22px}
}
@media(max-width:980px){
  .product-layout,.product-composition-diagram .product-layout{grid-template-columns:minmax(0,1fr);gap:36px;min-height:0;padding-block:56px}
  .product-composition-banner .product-layout{display:grid;min-height:0}
  .product-composition-banner .product-copy{max-width:100%}
  .product-composition-banner .product-visual{position:relative;right:auto;top:auto;transform:none;width:100%;height:340px}
  .product-composition-wide .product-copy{grid-template-columns:minmax(0,1fr);gap:24px}
  .product-composition-wide .product-content{margin-top:0}
  .product-composition-diagram .product-copy,.product-composition-diagram .product-visual{grid-column:auto;grid-row:auto}
  .product-content>p{max-width:38ch}
  .product-visual{height:340px;max-width:600px;width:100%;margin-inline:auto}
  .product-composition-photo .product-layout{min-height:0}
  .product-composition-photo .product-visual{height:430px}
  .scene-fridge{width:70%}
  .scene-screen img,.scene-building img{height:340px}
  .scene-aivio .hero-mark{width:260px;height:260px}
}
@media(max-width:720px){
  .products-intro{padding-block:56px 36px}.products-jump{gap:8px 20px;margin-top:28px}.products-jump a{font-size:14px}
  .product-layout,.product-composition-wide .product-layout{padding-block:44px;gap:28px}
  .product-brand{gap:14px}.product-brand img{width:44px;height:44px}
  .product-brand h3{font-size:clamp(40px,10vw,60px)}
  .product-brand h3.product-title-long{font-size:clamp(32px,8.5vw,48px)}
  #charging-title{font-size:clamp(30px,7.7vw,44px)}
  #voice-bots-title{font-size:clamp(76px,20vw,110px)}
  .product-category{margin-top:16px;font-size:15px}.product-content{margin-top:24px}
  .product-content>p{font-size:clamp(22px,5.6vw,27px)}
  .product-visual,.product-composition-banner .product-visual{height:280px}
  .scene-kandai img{width:220px;height:220px}
  .ornament-frame{width:255px;height:255px}.ornament-frame:nth-child(2){width:340px;height:340px}
  .scene-aivio .hero-mark{width:220px;height:220px}.scene-aivio::before{width:260px;height:260px}.scene-aivio::after{width:330px;height:330px}
  .channel-path{font-size:11px}.channel-path span{padding:6px 9px}
  .erp-word{font-size:170px}.business-layers{gap:4px;margin-left:0}.business-layers span{padding:12px;font-size:15px}
  .scene-screen img,.scene-building img{height:auto;aspect-ratio:1.6;object-fit:cover}
  .scene-meeting{height:250px}.scene-meeting img{width:180px;height:180px}.meeting-ring{width:340px;height:160px}.meeting-ring:nth-child(2){width:280px;height:220px}.meeting-camera{right:-25px;width:180px;height:180px}
  .scene-construction{height:250px}.construction-word{font-size:145px;top:30px}.construction-buildings{width:250px;height:250px;right:0;top:0}
  .product-composition-photo .product-visual{height:390px}.scene-fridge{width:88%}
  .voice-wave{gap:4px}.voice-wave i{width:4px}.voice-word{font-size:70px}
  .charging-sculpture{width:260px;height:260px}.charging-floor{height:100px;bottom:-6px}
  .parking-letter{font-size:280px}.parking-lanes{gap:14px}.parking-lanes i{height:110px}.parking-car{width:180px;height:115px}
  .funnel-stage{height:80px;font-size:21px}
  .scene-menu img{width:200px;height:200px}.menu-disc{width:310px;height:310px}.menu-word{font-size:58px}
  .product-scene-hotels .product-visual{height:240px}.hotel-word{font-size:140px;top:20%}.hotel-windows{grid-template-columns:repeat(3,34px);gap:10px;right:1%}.hotel-windows i{height:70px}.hotel-bed{width:240px;height:220px;top:5%;left:25%}
  .product-scene-studio .product-edition{font-size:clamp(52px,14vw,74px)}
  .studio-plane{width:220px;height:170px;left:0}.studio-plane:nth-child(2){left:14%;top:64px}.studio-gear{width:210px;height:210px;top:32px}.studio-word{font-size:56px}
}
@media(max-width:430px){.product-cta.btn-primary{width:100%;padding-inline:14px;font-size:11px;letter-spacing:.08em}.product-edition{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.s-products .btn,.product-visual img,.product-sculpture{transition:none}.product-cta.btn-primary:hover{transform:none}}

/* Keep original screenshot proportions and participant labels visible. */
.scene-kurultai{max-width:840px}
.scene-kurultai img{height:auto;aspect-ratio:546 / 255;object-fit:contain}



/* Profigram breaks the split rhythm with a broad typographic composition. */
.product-composition-type .product-layout{grid-template-columns:minmax(0,1fr);gap:16px;padding-block:64px;min-height:0}
.product-composition-type .product-copy{max-width:800px}
.product-composition-type .product-brand h3{font-size:clamp(54px,7vw,100px)}
.product-composition-type .product-content>p{max-width:40ch}
.product-composition-type .product-visual{height:240px;width:100%;max-width:none}
.product-composition-type .scene-business{align-items:flex-end;padding-right:4%}
.product-composition-type .erp-word{font-size:240px;color:rgba(184,159,239,.4)}
.product-composition-type .business-layers{margin-top:-14px;gap:24px}
.product-scene-hotels .product-visual{height:auto}
.scene-hotel-photo img{width:100%;height:370px;object-fit:cover;object-position:50% 52%;border-radius:18px;border:1px solid rgba(50,200,195,.3)}
@media(max-width:720px){
  .product-composition-type .product-layout{padding-block:44px;gap:26px}
  .product-composition-type .product-brand h3{font-size:clamp(42px,10vw,62px)}
  .product-composition-type .product-visual{height:190px}
  .product-composition-type .erp-word{font-size:170px}
  .product-composition-type .business-layers{gap:4px;margin-top:0}
  .scene-hotel-photo img{height:230px}
}

.product-scene-voice .product-visual{height:200px}
.product-scene-voice .voice-wave{height:100%;transform:rotate(-4deg);gap:12px}
.product-scene-voice .voice-wave i{width:9px}
.product-scene-voice .voice-word{font-size:88px;bottom:0}
.product-composition-diagram .product-layout{grid-template-columns:minmax(0,1fr);gap:32px}
.product-composition-diagram .product-copy,.product-composition-diagram .product-visual{grid-column:auto;grid-row:auto}
.product-composition-diagram .product-copy{max-width:800px}
.product-composition-diagram .product-visual{width:100%;max-width:660px;margin-inline:auto;height:330px}
.product-composition-diagram .product-content>p{max-width:40ch}
.product-composition-diagram .funnel-stage{height:96px}
@media(max-width:720px){
 .product-scene-voice .product-visual{height:200px}
 .product-scene-voice .voice-wave{gap:4px}
 .product-scene-voice .voice-wave i{width:4px}
 .product-scene-voice .voice-word{font-size:62px}
 .product-composition-diagram .product-visual{height:270px}
 .product-composition-diagram .funnel-stage{height:76px}
}

/* Bricolage Grotesque needs more spacing at large display sizes. */
.product-brand h3{letter-spacing:-.025em}
.product-scene-studio .product-edition{letter-spacing:-.025em}
.product-composition-type .erp-word{letter-spacing:-.04em}
