body.modal-open{overflow:hidden}:root{--sp-blue:#132b7e;--sp-blue-light:#2f67ff;--sp-gold:#ffbf18;--sp-text:#24345d;--sp-muted:#64739a;--sp-border:rgba(19,43,126,.1);--sp-surface:hsla(0,0%,100%,.94);--sp-shadow:0 24px 60px rgba(19,43,126,.14);--sp-radius-xl:2rem;--sp-radius-lg:1.5rem}.sahal-solar-portfolio{background:radial-gradient(circle at top left,rgba(255,191,24,.15),transparent 24rem),radial-gradient(circle at top right,rgba(47,103,255,.1),transparent 26rem),#fff;color:var(--sp-text);overflow:hidden}.sahal-solar-portfolio *{box-sizing:border-box}.sahal-solar-portfolio img,.sahal-solar-portfolio video{display:block;max-width:100%}.sahal-solar-portfolio button{font:inherit}.sahal-solar-portfolio .sp-container{margin:0 auto;width:min(100% - 2rem,80rem)}.sahal-solar-portfolio .sp-eyebrow{color:var(--sp-blue-light);font-size:.875rem;font-weight:800;letter-spacing:.14em;margin:0}.sahal-solar-portfolio .sp-section-head{margin-bottom:2.5rem;text-align:center}.sahal-solar-portfolio .sp-section-head h2{color:var(--sp-blue);font-size:clamp(2rem,4vw,3rem);line-height:1.08;margin:.65rem 0 0}.sahal-solar-portfolio .sp-section-head p{color:var(--sp-muted);font-size:1.05rem;line-height:1.7;margin:1rem auto 0;max-width:42rem}.sahal-solar-portfolio .sp-hero{padding:clamp(3rem,7vw,5.5rem) 0 3rem}.sahal-solar-portfolio .sp-hero__grid{align-items:center;display:grid;gap:clamp(2rem,5vw,4rem);grid-template-columns:minmax(0,1.05fr) minmax(20rem,.95fr)}.sahal-solar-portfolio .sp-hero__content h1{color:var(--sp-blue);font-size:clamp(2.7rem,6vw,4.9rem);letter-spacing:-.045em;line-height:.98;margin:.75rem 0 1rem;max-width:12ch}.sahal-solar-portfolio .sp-hero__content p:not(.sp-eyebrow){color:var(--sp-muted);font-size:1.1rem;line-height:1.75;margin:0;max-width:38rem}.sahal-solar-portfolio .sp-hero__stats{display:grid;gap:1rem;grid-template-columns:repeat(3,1fr);margin-top:2rem}.sahal-solar-portfolio .sp-hero__stats article{background:var(--sp-surface);border:1px solid var(--sp-border);border-radius:1.25rem;box-shadow:var(--sp-shadow);padding:1.25rem}.sahal-solar-portfolio .sp-hero__stats strong{color:var(--sp-blue);display:block;font-size:1.2rem}.sahal-solar-portfolio .sp-hero__stats span{color:var(--sp-muted);display:block;line-height:1.5;margin-top:.35rem}.sahal-solar-portfolio .sp-hero__card{background:var(--sp-surface);border:1px solid var(--sp-border);border-radius:var(--sp-radius-xl);box-shadow:var(--sp-shadow);overflow:hidden}.sahal-solar-portfolio .sp-hero__card-header{border-bottom:1px solid var(--sp-border);display:flex;gap:.45rem;padding:1rem 1.15rem}.sahal-solar-portfolio .sp-hero__dot{background:rgba(19,43,126,.16);border-radius:50%;height:.7rem;width:.7rem}.sahal-solar-portfolio .sp-hero__dot:first-child{background:var(--sp-gold)}.sahal-solar-portfolio .sp-hero__card-body{padding:1.5rem}.sahal-solar-portfolio .sp-hero__mock-media{aspect-ratio:4/5;background:linear-gradient(145deg,rgba(47,103,255,.18),rgba(19,43,126,.06)),url(/assets/images/solar-projects/project-01/cover.JPG) 50%/cover no-repeat;border-radius:1.4rem}.sahal-solar-portfolio .sp-hero__mock-lines{margin-top:1.25rem}.sahal-solar-portfolio .sp-hero__mock-lines span{background:rgba(19,43,126,.08);border-radius:999px;display:block;height:.85rem;margin-bottom:.7rem}.sahal-solar-portfolio .sp-hero__mock-lines span:first-child{width:78%}.sahal-solar-portfolio .sp-hero__mock-lines span:nth-child(2){width:100%}.sahal-solar-portfolio .sp-hero__mock-lines span:nth-child(3){margin-bottom:0;width:62%}.sahal-solar-portfolio .sp-gallery{padding:2rem 0 5rem}.sahal-solar-portfolio .sp-grid{display:grid;gap:1.5rem;grid-template-columns:repeat(3,minmax(0,1fr))}.sahal-solar-portfolio .sp-card{background:var(--sp-surface);border:1px solid var(--sp-border);border-radius:var(--sp-radius-lg);box-shadow:var(--sp-shadow);overflow:hidden}.sahal-solar-portfolio .sp-card__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:inherit;cursor:pointer;padding:0;text-align:left;width:100%}.sahal-solar-portfolio .sp-card__media{aspect-ratio:4/4.4;background:#eef3ff;overflow:hidden;position:relative}.sahal-solar-portfolio .sp-card__media img{height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .35s ease;width:100%}.sahal-solar-portfolio .sp-card:hover .sp-card__media img{transform:scale(1.04)}.sahal-solar-portfolio .sp-card__media-badge{backdrop-filter:blur(12px);background:hsla(0,0%,100%,.88);border-radius:999px;color:var(--sp-blue);font-size:.78rem;font-weight:700;padding:.45rem .8rem;position:absolute;right:1rem;top:1rem;z-index:1}.sahal-solar-portfolio .sp-card__body{display:flex;flex-direction:column;gap:.8rem;padding:1.25rem 1.25rem 1.4rem}.sahal-solar-portfolio .sp-card__head h3{color:var(--sp-blue);font-size:1.25rem;line-height:1.2;margin:0 0 .35rem}.sahal-solar-portfolio .sp-card__head p{color:var(--sp-muted);line-height:1.5;margin:0}.sahal-solar-portfolio .sp-card__cta{color:var(--sp-blue-light);font-weight:800;letter-spacing:.02em}.sahal-solar-portfolio .sp-modal{display:none;inset:0;position:fixed;z-index:20000}.sahal-solar-portfolio .sp-modal.is-active{display:block}.sahal-solar-portfolio .sp-modal__backdrop{backdrop-filter:blur(8px);background:rgba(10,22,60,.72);inset:0;position:absolute}.sahal-solar-portfolio .sp-modal__dialog{background:#081535;border-radius:1.6rem;box-shadow:0 24px 80px rgba(8,18,52,.34);height:min(92vh,56rem);margin:1rem auto;overflow:hidden;position:relative;width:min(100% - 2rem,92rem);z-index:20001}.sahal-solar-portfolio .sp-modal__close{background:hsla(0,0%,100%,.15);border:0;border-radius:50%;color:#fff;cursor:pointer;font-size:1.8rem;height:2.8rem;line-height:1;position:absolute;right:1rem;top:1rem;width:2.8rem;z-index:5}.sahal-solar-portfolio .sp-modal__media{align-items:center;background:#081535;display:flex;height:100%;justify-content:center;overflow:hidden;position:relative;width:100%}.sahal-solar-portfolio .sp-modal__media-stage{align-items:center;display:flex;height:100%;justify-content:center;padding:1rem;width:100%}.sahal-solar-portfolio .sp-modal__media-stage img,.sahal-solar-portfolio .sp-modal__media-stage video{background:#081535;border-radius:1rem;height:100%;max-height:100%;max-width:100%;-o-object-fit:contain;object-fit:contain;width:100%}.sahal-solar-portfolio .sp-modal__nav{background:hsla(0,0%,100%,.9);border:0;border-radius:50%;color:var(--sp-blue);cursor:pointer;font-size:1.4rem;height:3rem;position:absolute;top:50%;transform:translateY(-50%);width:3rem;z-index:3}.sahal-solar-portfolio .sp-modal__nav--prev{left:1rem}.sahal-solar-portfolio .sp-modal__nav--next{right:1rem}.sahal-solar-portfolio .sp-modal__dots{bottom:1rem;display:flex;gap:.5rem;left:50%;position:absolute;transform:translateX(-50%);z-index:3}.sahal-solar-portfolio .sp-modal__dot{background:hsla(0,0%,100%,.45);border:0;border-radius:50%;cursor:pointer;height:.7rem;width:.7rem}.sahal-solar-portfolio .sp-modal__dot.is-active{background:var(--sp-gold)}@media (max-width:1024px){.sahal-solar-portfolio .sp-hero__grid{grid-template-columns:1fr}.sahal-solar-portfolio .sp-hero__stats{grid-template-columns:repeat(3,1fr)}.sahal-solar-portfolio .sp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sahal-solar-portfolio .sp-modal__dialog{height:min(94vh,64rem);margin:.5rem auto;width:min(100% - 1rem,60rem)}}@media (max-width:767px){.sahal-solar-portfolio .sp-container{width:min(100% - 1.25rem,42rem)}.sahal-solar-portfolio .sp-hero{padding-top:7.5rem}.sahal-solar-portfolio .sp-hero__content h1{font-size:clamp(2.35rem,11vw,3.75rem);max-width:100%}.sahal-solar-portfolio .sp-grid,.sahal-solar-portfolio .sp-hero__stats{grid-template-columns:1fr}.sahal-solar-portfolio .sp-modal__dialog{border-radius:1.1rem;height:min(96vh,100%);width:min(100% - .75rem,100%)}.sahal-solar-portfolio .sp-modal__media-stage{padding:.5rem}.sahal-solar-portfolio .sp-modal__nav{height:2.5rem;width:2.5rem}}