:root{
  --atmo-blue:#0a3650;
  --atmo-teal:#168063;
  --atmo-sky:#84c9c0;
  --atmo-warm:#f0b44d;
  --atmo-shadow:0 24px 70px rgba(7,28,45,.11);
}

html{background:#edf3f0}
body{
  background:
    radial-gradient(circle at 8% 13%,rgba(132,201,192,.18),transparent 28rem),
    radial-gradient(circle at 92% 31%,rgba(231,171,69,.10),transparent 25rem),
    linear-gradient(180deg,#f7f9f7 0%,#edf3f0 48%,#f6f8f6 100%);
}

.topbar{
  background:
    linear-gradient(90deg,rgba(8,45,65,.42),transparent 42%),
    linear-gradient(180deg,#061928,#03111d);
  border-bottom:1px solid rgba(162,222,199,.14);
}

.hero,.page-hero,.market-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
}

.hero::before,.page-hero::before,.market-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 76% 18%,rgba(162,222,199,.23),transparent 27%),
    radial-gradient(circle at 92% 78%,rgba(231,171,69,.18),transparent 25%),
    repeating-linear-gradient(90deg,transparent 0 79px,rgba(255,255,255,.035) 79px 80px),
    repeating-linear-gradient(0deg,transparent 0 79px,rgba(255,255,255,.028) 79px 80px);
  mask-image:linear-gradient(90deg,transparent 8%,#000 45%,#000);
  -webkit-mask-image:linear-gradient(90deg,transparent 8%,#000 45%,#000);
}

.hero .nav,.hero .hero-content,.hero .proof,
.page-hero .shell,.market-hero .shell{
  position:relative;
  z-index:2;
}

.page-hero{
  background:
    linear-gradient(90deg,rgba(3,17,30,.98) 0%,rgba(5,34,51,.88) 47%,rgba(8,37,49,.28) 100%),
    url("assets/scenes/solar-array.jpg") center 58%/cover;
  box-shadow:inset 0 -1px rgba(255,255,255,.08);
}

.intro,.intro-grid,.range-section,.content>section:not(.dark-section){
  position:relative;
}

.featured-products,.rfq-form,.market-intro{
  background:
    linear-gradient(135deg,rgba(255,255,255,.98),rgba(244,249,247,.95)),
    #fff;
  border:1px solid rgba(20,73,85,.08);
  box-shadow:var(--atmo-shadow);
}

.featured-products{
  position:relative;
  overflow:hidden;
}

.featured-products::before{
  content:"";
  position:absolute;
  width:320px;
  height:320px;
  border-radius:50%;
  right:-170px;
  top:-180px;
  background:radial-gradient(circle,rgba(132,201,192,.25),rgba(132,201,192,0) 70%);
  pointer-events:none;
}

.featured-head,.featured-grid,.range-head,.module-grid,.catalogue-filter{
  position:relative;
  z-index:1;
}

.featured-card,.card,.module-card,.saudi-card{
  border:1px solid rgba(12,64,74,.08);
  box-shadow:0 14px 38px rgba(7,31,47,.08);
}

.featured-card{
  background:linear-gradient(180deg,#f4f8f6,#e9f1ed);
}

.card{
  background:
    linear-gradient(145deg,rgba(255,255,255,1),rgba(240,247,244,.94));
}

.module-card{
  background:linear-gradient(180deg,#fff 0%,#f7faf8 100%);
}

.product,.featured-card,.module-card,.card{
  transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease;
}

.dark-section,.custom{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background-color:#061b2d;
  background-image:
    radial-gradient(circle at 12% 12%,rgba(21,128,99,.32),transparent 30rem),
    radial-gradient(circle at 90% 84%,rgba(231,171,69,.17),transparent 25rem),
    linear-gradient(135deg,rgba(8,54,76,.7),rgba(3,17,30,.96)),
    repeating-linear-gradient(90deg,transparent 0 79px,rgba(255,255,255,.03) 79px 80px);
}

.dark-section::before,.custom::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    linear-gradient(115deg,transparent 0 58%,rgba(162,222,199,.08) 58% 58.25%,transparent 58.25%),
    linear-gradient(115deg,transparent 0 68%,rgba(231,171,69,.07) 68% 68.2%,transparent 68.2%);
}

.process{
  position:relative;
}

.process::before{
  content:"";
  position:absolute;
  inset:18% -10% 0;
  z-index:-1;
  pointer-events:none;
  background:radial-gradient(ellipse at center,rgba(132,201,192,.15),transparent 64%);
}

.step{
  background:linear-gradient(145deg,rgba(255,255,255,.62),rgba(232,241,236,.72));
}

.contact-panel,.rfq-aside,.extended-scope,.market-note{
  background:
    radial-gradient(circle at 92% 18%,rgba(255,255,255,.72),transparent 30%),
    linear-gradient(135deg,#dcebe5,#edf4f0);
  border:1px solid rgba(20,91,72,.10);
  box-shadow:0 20px 54px rgba(7,31,47,.08);
}

.cta{
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(90deg,#dcebe5 0%,rgba(220,235,229,.97) 46%,rgba(220,235,229,.22) 72%),
    url("assets/scenes/solar-desert.jpg") right center/56% 100% no-repeat,
    #dce8e0;
  box-shadow:var(--atmo-shadow);
}

.button,.nav-button,.gold-button{
  box-shadow:0 10px 24px rgba(191,128,30,.20);
}

.faq{
  margin-top:10px;
  padding-inline:22px;
  background:rgba(255,255,255,.5);
  border:1px solid rgba(10,48,64,.07);
}

.footer,footer{
  background:
    radial-gradient(circle at 12% 0,rgba(22,128,99,.18),transparent 30rem),
    linear-gradient(180deg,#061827,#020c15);
  border-top:1px solid rgba(162,222,199,.14);
}

@media(hover:hover) and (pointer:fine){
  .featured-card:hover,.module-card:hover,.card:hover{
    transform:translateY(-5px);
    border-color:rgba(22,128,99,.22);
    box-shadow:0 22px 52px rgba(7,31,47,.14);
  }
}

@media(max-width:760px){
  body{
    background:
      radial-gradient(circle at 0 15%,rgba(132,201,192,.14),transparent 20rem),
      linear-gradient(180deg,#f7f9f7,#edf3f0 55%,#f7f9f7);
  }
  .hero::before,.page-hero::before,.market-hero::before{
    opacity:.68;
    background:
      radial-gradient(circle at 85% 20%,rgba(162,222,199,.2),transparent 34%),
      repeating-linear-gradient(90deg,transparent 0 47px,rgba(255,255,255,.03) 47px 48px);
  }
  .featured-products,.rfq-form,.market-intro{
    box-shadow:0 16px 42px rgba(7,28,45,.09);
  }
  .featured-products::before{
    width:220px;
    height:220px;
    right:-130px;
    top:-120px;
  }
  .cta{
    background:
      radial-gradient(circle at 100% 0,rgba(255,255,255,.7),transparent 38%),
      linear-gradient(135deg,#dcebe5,#edf4f0);
  }
  .faq{padding-inline:16px}
}

@media(prefers-reduced-motion:reduce){
  .product,.featured-card,.module-card,.card{transition:none}
}
