
.aya-web-exp{
  --aya-web-accent:#32b6ff;
  --aya-web-rgb:50,182,255;
  position:relative;
  overflow:hidden;
  background:#060707;
  color:#f7f7f2;
  border-top:1px solid rgba(255,255,255,.08);
  isolation:isolate;
  margin:0!important;
}
.aya-web-exp *{box-sizing:border-box}
.aya-web-exp__shell{
  width:min(1540px,100%);
  margin:0 auto;
  padding:clamp(80px,9vw,150px) clamp(20px,4vw,64px);
  position:relative;
  z-index:3;
}
.aya-web-exp__intro{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
  gap:48px;
  align-items:end;
  padding-bottom:clamp(44px,5vw,72px);
  border-bottom:1px solid rgba(255,255,255,.12);
}
.aya-web-exp__kicker{
  display:block;margin-bottom:18px;
  font-size:10px;letter-spacing:.22em;font-weight:900;
  color:rgba(255,255,255,.45);
}
.aya-web-exp h2{
  margin:0;color:#f7f7f2;
  font-size:clamp(48px,7vw,110px);
  line-height:.86;letter-spacing:-.06em;font-weight:950;
}
.aya-web-exp__intro p{
  margin:0;color:rgba(255,255,255,.58);
  font-size:clamp(16px,1.5vw,21px);line-height:1.5;
}
.aya-web-exp__workspace{
  display:grid;
  grid-template-columns:minmax(280px,.52fr) minmax(0,1.48fr);
  gap:clamp(26px,4vw,58px);
  padding-top:clamp(40px,5vw,70px);
  align-items:start;
}
.aya-web-exp__projects{display:flex;flex-direction:column}
.aya-web-exp__project{
  appearance:none;width:100%;border:0;border-top:1px solid rgba(255,255,255,.11);
  background:transparent;color:rgba(255,255,255,.38);
  display:grid;grid-template-columns:38px 1fr auto;gap:14px;align-items:center;
  padding:20px 4px;text-align:left;cursor:pointer;
  transition:color .25s ease,padding-left .25s ease,background .25s ease;
}
.aya-web-exp__project:last-of-type{border-bottom:1px solid rgba(255,255,255,.11)}
.aya-web-exp__project:hover,.aya-web-exp__project.is-active{
  color:#fff;padding-left:10px;background:linear-gradient(90deg,rgba(var(--aya-web-rgb),.05),transparent 72%);
}
.aya-web-exp__project > span{font-size:9px;letter-spacing:.17em;color:rgba(255,255,255,.28)}
.aya-web-exp__project.is-active > span{color:var(--aya-web-accent)}
.aya-web-exp__project small{
  display:block;margin-bottom:5px;font-size:8px;letter-spacing:.18em;color:rgba(255,255,255,.35)
}
.aya-web-exp__project strong{
  display:block;font-size:clamp(19px,2vw,31px);line-height:1.02;letter-spacing:-.035em
}
.aya-web-exp__project i{
  font-style:normal;width:34px;height:34px;border-radius:50%;
  display:grid;place-items:center;border:1px solid rgba(255,255,255,.13);
}
.aya-web-exp__project.is-active i{
  background:var(--aya-web-accent);color:#071017;border-color:transparent;
}
.aya-web-exp__principles{
  margin-top:28px;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:16px;
  background:rgba(255,255,255,.018)
}
.aya-web-exp__principles > span{
  display:block;margin-bottom:10px;font-size:8px;letter-spacing:.18em;color:var(--aya-web-accent)
}
.aya-web-exp__principles div{
  color:rgba(255,255,255,.55);font-size:12px;line-height:1.7
}
.aya-web-exp__principles i{font-style:normal;color:var(--aya-web-accent);padding:0 4px}
.aya-web-exp__stage{
  position:relative;min-height:760px;
}
.aya-web-exp__browser{
  width:calc(100% - 90px);
  border:1px solid rgba(255,255,255,.13);
  border-radius:22px;overflow:hidden;
  background:#0a0b0c;
  box-shadow:0 36px 120px rgba(0,0,0,.34);
}
.aya-web-exp__browser-bar{
  min-height:48px;padding:0 16px;
  display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;
  border-bottom:1px solid rgba(255,255,255,.09);
  color:rgba(255,255,255,.34);font-size:8px;letter-spacing:.15em;text-transform:uppercase;
}
.aya-web-exp__dots{display:flex;gap:6px}
.aya-web-exp__dots i{
  width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.18)
}
.aya-web-exp__address{
  justify-self:center;min-width:min(420px,100%);
  height:28px;padding:0 12px;border-radius:999px;
  border:1px solid rgba(255,255,255,.09);
  display:flex;align-items:center;gap:8px;
}
.aya-web-exp__address strong{
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  font-size:9px;color:rgba(255,255,255,.58);font-weight:700;letter-spacing:.06em;text-transform:none
}
.aya-web-exp__screen{
  min-height:590px;
  background:
    radial-gradient(circle at 78% 24%,rgba(var(--aya-web-rgb),.16),transparent 26%),
    linear-gradient(140deg,#0b0d0f 0%,#08090a 58%,#0b1014 100%);
  position:relative;
  overflow:hidden;
}
.aya-web-exp__screen:before{
  content:"";position:absolute;inset:0;opacity:.14;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:52px 52px;
}
.aya-web-exp__screen-nav{
  position:relative;z-index:2;
  display:flex;justify-content:space-between;gap:18px;align-items:center;
  padding:22px 28px;
  border-bottom:1px solid rgba(255,255,255,.08);
  font-size:9px;letter-spacing:.16em
}
.aya-web-exp__screen-nav strong{color:var(--aya-web-accent)}
.aya-web-exp__screen-nav div{display:flex;gap:20px;color:rgba(255,255,255,.38)}
.aya-web-exp__screen-hero{
  position:relative;z-index:2;
  display:grid;grid-template-columns:minmax(0,1.1fr) minmax(220px,.9fr);
  gap:36px;align-items:center;
  min-height:465px;padding:44px 38px 54px;
}
.aya-web-exp__screen-hero > div:first-child > span{
  display:block;margin-bottom:18px;font-size:8px;letter-spacing:.19em;color:rgba(255,255,255,.38)
}
.aya-web-exp__screen-hero h3{
  margin:0 0 20px;color:#fff;
  font-size:clamp(38px,4.3vw,72px);line-height:.9;letter-spacing:-.055em
}
.aya-web-exp__screen-hero p{
  max-width:560px;margin:0 0 28px;color:rgba(255,255,255,.58);font-size:14px;line-height:1.55
}
.aya-web-exp__screen-hero button{
  appearance:none;border:0;border-radius:999px;
  background:var(--aya-web-accent);color:#071017;
  min-height:48px;padding:0 18px;
  font-size:9px;font-weight:950;letter-spacing:.12em;
}
.aya-web-exp__screen-hero button i{font-style:normal;margin-left:16px}
.aya-web-exp__visual-card{
  min-height:280px;border:1px solid rgba(255,255,255,.1);border-radius:22px;
  background:rgba(255,255,255,.025);backdrop-filter:blur(18px);
  position:relative;padding:24px;display:flex;flex-direction:column;justify-content:space-between
}
.aya-web-exp__visual-lines{
  display:flex;align-items:flex-end;gap:8px;height:145px
}
.aya-web-exp__visual-lines span{
  flex:1;border-radius:999px 999px 10px 10px;
  background:linear-gradient(180deg,var(--aya-web-accent),rgba(var(--aya-web-rgb),.08));
  opacity:.78;transform-origin:bottom;animation:ayaWebBars 2.8s ease-in-out infinite alternate
}
.aya-web-exp__visual-lines span:nth-child(1){height:34%}
.aya-web-exp__visual-lines span:nth-child(2){height:60%;animation-delay:.2s}
.aya-web-exp__visual-lines span:nth-child(3){height:82%;animation-delay:.4s}
.aya-web-exp__visual-lines span:nth-child(4){height:48%;animation-delay:.6s}
@keyframes ayaWebBars{to{transform:scaleY(.72);opacity:.48}}
.aya-web-exp__metric small{
  display:block;margin-bottom:8px;font-size:8px;letter-spacing:.18em;color:rgba(255,255,255,.34)
}
.aya-web-exp__metric strong{font-size:14px;letter-spacing:.06em}
.aya-web-exp__screen-strip{
  position:absolute;left:0;right:0;bottom:0;
  min-height:44px;padding:0 24px;border-top:1px solid rgba(255,255,255,.08);
  display:flex;align-items:center;gap:16px;
  overflow:hidden;white-space:nowrap;
  font-size:8px;letter-spacing:.17em;color:rgba(255,255,255,.36)
}
.aya-web-exp__screen-strip i{font-style:normal;color:var(--aya-web-accent)}
.aya-web-exp__phone{
  position:absolute;z-index:5;
  width:190px;height:390px;right:0;bottom:82px;
  border:1px solid rgba(255,255,255,.18);border-radius:34px;
  background:#070809;padding:9px;
  box-shadow:0 30px 90px rgba(0,0,0,.45);
  transform:rotate(3deg);
}
.aya-web-exp__phone-notch{
  position:absolute;z-index:3;top:15px;left:50%;transform:translateX(-50%);
  width:74px;height:17px;border-radius:999px;background:#050505
}
.aya-web-exp__phone-screen{
  height:100%;border-radius:27px;overflow:hidden;
  background:
    radial-gradient(circle at 70% 25%,rgba(var(--aya-web-rgb),.23),transparent 30%),
    linear-gradient(180deg,#11161a,#080a0c);
  padding:48px 18px 18px;
  display:flex;flex-direction:column;
}
.aya-web-exp__phone-screen small{
  color:var(--aya-web-accent);font-size:7px;letter-spacing:.18em
}
.aya-web-exp__phone-screen strong{
  margin-top:18px;font-size:27px;line-height:.92;letter-spacing:-.05em
}
.aya-web-exp__phone-shape{
  flex:1;margin:28px 0;border-radius:18px;
  border:1px solid rgba(255,255,255,.09);
  background:
    linear-gradient(135deg,rgba(var(--aya-web-rgb),.14),transparent 60%),
    repeating-linear-gradient(0deg,rgba(255,255,255,.04) 0 1px,transparent 1px 18px);
}
.aya-web-exp__phone-screen > span{
  font-size:7px;letter-spacing:.16em;color:rgba(255,255,255,.3)
}
.aya-web-exp__stage-footer{
  width:calc(100% - 90px);
  display:flex;justify-content:space-between;gap:24px;align-items:center;
  padding-top:24px;
}
.aya-web-exp__stage-footer > div span{
  display:block;margin-bottom:6px;font-size:8px;letter-spacing:.18em;color:rgba(255,255,255,.34)
}
.aya-web-exp__stage-footer > div strong{
  font-size:14px;color:rgba(255,255,255,.68)
}
.aya-web-exp__stage-footer a{
  min-height:54px;padding:0 20px;border-radius:999px;
  background:var(--aya-web-accent);color:#071017;text-decoration:none;
  display:flex;align-items:center;gap:18px;
  font-size:9px;font-weight:950;letter-spacing:.11em
}
.aya-web-exp__stage-footer a i{
  font-style:normal;width:24px;height:24px;border-radius:50%;
  display:grid;place-items:center;background:rgba(0,0,0,.1)
}
.aya-web-exp__footer{
  display:flex;justify-content:space-between;gap:18px;
  padding-top:24px;margin-top:28px;border-top:1px solid rgba(255,255,255,.1);
  font-size:8px;letter-spacing:.17em;color:rgba(255,255,255,.3)
}
.aya-web-exp__ambient{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.aya-web-exp__grid{
  position:absolute;inset:0;opacity:.08;
  background-image:
    linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);
  background-size:72px 72px;
}
.aya-web-exp__glow{
  position:absolute;width:55vw;height:55vw;right:-18vw;top:12%;
  border-radius:50%;background:radial-gradient(circle,rgba(var(--aya-web-rgb),.10),transparent 68%)
}
.aya-web-exp__scan{
  position:absolute;left:-20%;right:-20%;height:1px;top:22%;
  background:linear-gradient(90deg,transparent,rgba(var(--aya-web-rgb),.5),transparent);
  box-shadow:0 0 30px rgba(var(--aya-web-rgb),.28);
  animation:ayaWebScan 7s ease-in-out infinite
}
@keyframes ayaWebScan{0%,100%{transform:translateY(-100px);opacity:0}20%,80%{opacity:.7}50%{transform:translateY(520px);opacity:.35}}
.aya-web-exp__huge-word{
  position:absolute;left:-.03em;bottom:-.08em;
  font-size:clamp(160px,27vw,480px);font-weight:950;line-height:.72;letter-spacing:-.08em;
  color:rgba(255,255,255,.016)
}
@media(max-width:1100px){
  .aya-web-exp__workspace{grid-template-columns:1fr}
  .aya-web-exp__projects{display:grid;grid-template-columns:1fr 1fr}
  .aya-web-exp__principles{grid-column:1/-1}
}
@media(max-width:860px){
  .aya-web-exp__intro{grid-template-columns:1fr}
  .aya-web-exp h2{font-size:clamp(48px,15vw,88px)}
  .aya-web-exp__browser{width:100%}
  .aya-web-exp__phone{display:none}
  .aya-web-exp__stage-footer{width:100%}
}
@media(max-width:680px){
  .aya-web-exp__projects{grid-template-columns:1fr}
  .aya-web-exp__screen-hero{grid-template-columns:1fr;padding:34px 22px 58px}
  .aya-web-exp__visual-card{min-height:220px}
  .aya-web-exp__screen-nav div{display:none}
  .aya-web-exp__browser-bar{grid-template-columns:auto 1fr}
  .aya-web-exp__browser-bar > span{display:none}
  .aya-web-exp__address{min-width:0;width:100%}
  .aya-web-exp__stage-footer{display:grid;grid-template-columns:1fr}
  .aya-web-exp__stage-footer a{justify-content:space-between}
}
@media(max-width:520px){
  .aya-web-exp__shell{padding-left:18px;padding-right:18px}
  .aya-web-exp__browser{border-radius:18px}
  .aya-web-exp__screen{min-height:620px}
  .aya-web-exp__screen-hero h3{font-size:44px}
  .aya-web-exp__footer{display:block;line-height:1.8}
}
@media(prefers-reduced-motion:reduce){
  .aya-web-exp *,.aya-web-exp *:before,.aya-web-exp *:after{
    animation:none!important;transition:none!important
  }
}
