/* ==========================================================================
   SolarTechonolgy — estilos del theme (reconstrucción de Solartechonolgy.html)
   ========================================================================== */

:root{
  --orange:#F5821F;
  --orange-soft:#ffd089;
  --ink:#1d1d1f;
  --dark:#1f2126;
  --dark-2:#1a1c20;
  --dark-3:#15171b;
  --cream:#faf7f2;
  --muted:#6b6b70;
  --muted-2:#9a9ca3;
  --line:#ece7dd;
  --line-2:#e3ddd2;
  --sora:'Sora',system-ui,sans-serif;
  --manrope:'Manrope',system-ui,sans-serif;
  --wrap:1220px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--manrope);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:var(--sora);margin:0}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
input,select,textarea,button{font-family:inherit}

.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}
.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:8px;top:8px;background:#fff;padding:8px 14px;border-radius:6px;z-index:100}

@keyframes stFade{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes stScan{0%{transform:translateY(-160%)}100%{transform:translateY(260%)}}
@keyframes stGrid{from{background-position:0 0,0 0}to{background-position:44px 44px,44px 44px}}
@keyframes stGlow{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:.95;transform:scale(1.12)}}
@keyframes stPulse{0%,100%{opacity:.25}50%{opacity:.6}}

::-webkit-scrollbar{width:10px;height:10px}
::-webkit-scrollbar-thumb{background:#d8d2c7;border-radius:6px}

/* --- Botones --------------------------------------------------------------- */
.st-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:800;font-size:15px;padding:14px 24px;border-radius:8px;border:none;cursor:pointer;transition:transform .12s ease,filter .12s ease;line-height:1}
.st-btn:hover{filter:brightness(1.04)}
.st-btn:active{transform:translateY(1px)}
.st-btn--orange{background:var(--orange);color:#1a1206}
.st-btn--dark{background:var(--dark);color:#fff}
.st-btn--ghost{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.25)}
.st-btn--ghost-dark{background:transparent;color:var(--dark);border:1px solid var(--line-2)}
.st-btn--wa-outline{background:#fff;color:var(--dark);border:1px solid #d8d2c7}

/* --- Header ---------------------------------------------------------------- */
.st-header{position:sticky;top:0;z-index:40;background:rgba(31,33,38,.97);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}
.st-header__inner{max-width:var(--wrap);margin:0 auto;padding:14px 26px;display:flex;align-items:center;gap:28px}
.st-logo{display:flex;align-items:center;gap:10px;text-decoration:none}
.st-logo__dot{width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 35% 30%,var(--orange-soft),var(--orange) 70%);display:block;box-shadow:0 0 16px rgba(245,130,31,.55)}
.st-logo__text{font-family:var(--sora);font-weight:800;font-size:20px;letter-spacing:.5px;color:#fff}
.st-logo__text span{color:var(--orange)}
.st-nav__list{list-style:none;display:flex;gap:24px;margin:0;padding:0}
.st-nav__list a{color:#cfd0d4;text-decoration:none;font-size:14px;font-weight:600}
.st-nav__list a:hover{color:#fff}
/* Botón hamburguesa: solo aparece en móvil (ver media query de 640px). */
.st-nav-toggle{display:none;width:40px;height:38px;padding:0;background:none;border:1px solid rgba(255,255,255,.18);border-radius:9px;cursor:pointer}
.st-nav-toggle__bars,.st-nav-toggle__bars::before,.st-nav-toggle__bars::after{display:block;width:18px;height:2px;background:#fff;border-radius:2px;margin:0 auto;transition:transform .2s ease,opacity .2s ease}
.st-nav-toggle__bars{position:relative}
.st-nav-toggle__bars::before,.st-nav-toggle__bars::after{content:'';position:absolute;left:0}
.st-nav-toggle__bars::before{top:-6px}
.st-nav-toggle__bars::after{top:6px}
.st-nav-toggle[aria-expanded="true"] .st-nav-toggle__bars{background:transparent}
.st-nav-toggle[aria-expanded="true"] .st-nav-toggle__bars::before{transform:translateY(6px) rotate(45deg)}
.st-nav-toggle[aria-expanded="true"] .st-nav-toggle__bars::after{transform:translateY(-6px) rotate(-45deg)}
.st-header__spacer{flex:1}
.st-wa-pill{display:flex;align-items:center;gap:7px;color:#fff;text-decoration:none;font-size:13.5px;font-weight:700;padding:8px 13px;border:1px solid rgba(255,255,255,.18);border-radius:30px}
.st-wa-pill__dot{width:8px;height:8px;border-radius:50%;background:#25D366;display:block}
.st-cart-btn{position:relative;display:flex;align-items:center;gap:9px;background:var(--orange);color:#1a1206;border:none;border-radius:30px;padding:9px 18px;font-weight:800;font-size:14px;cursor:pointer;text-decoration:none}
.st-cart-count{background:var(--dark);color:#fff;font-size:12px;font-weight:800;min-width:22px;height:22px;border-radius:11px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px}

/* --- Hero / banner deslizante ---------------------------------------------- */
.st-hero{position:relative;background:radial-gradient(120% 130% at 80% 0%,#33363f 0%,var(--dark) 55%,var(--dark-3) 100%);color:#fff;overflow:hidden}

/* Pistas: una para las imágenes (fondo) y otra para los textos. Se mueven juntas. */
.st-slider__track{display:flex;transition:transform .65s cubic-bezier(.4,0,.2,1);will-change:transform}
.st-slider__bglayer{position:absolute;inset:0;z-index:0;overflow:hidden}
.st-slider__bglayer .st-slider__track{height:100%}
.st-slide__bg{flex:0 0 100%;min-width:100%;height:100%;background-size:cover;background-position:center;background-repeat:no-repeat}
/* Degradados de respaldo mientras no se suban imágenes en Personalizar. */
.st-slide__bg--1{background-color:#23262d;background-image:linear-gradient(120deg,#2c3038,#191b1f 65%),repeating-linear-gradient(135deg,rgba(245,130,31,.10),rgba(245,130,31,.10) 14px,transparent 14px,transparent 28px)}
.st-slide__bg--2{background-color:#1e2a33;background-image:linear-gradient(120deg,#26404f,#171b20 70%),repeating-linear-gradient(45deg,rgba(120,200,255,.08),rgba(120,200,255,.08) 14px,transparent 14px,transparent 28px)}
.st-slide__bg--3{background-color:#2b241c;background-image:linear-gradient(120deg,#453121,#1a1714 70%),repeating-linear-gradient(90deg,rgba(245,130,31,.12),rgba(245,130,31,.12) 10px,transparent 10px,transparent 30px)}

.st-hero__fx{position:absolute;inset:0;z-index:1;pointer-events:none}
.st-slider__viewport{position:relative;z-index:2;overflow:hidden}
.st-slide{flex:0 0 100%;min-width:100%}
.st-slide__inner{max-width:var(--wrap);margin:0 auto;padding:70px 26px 92px}
.st-slide__title{font-size:54px;line-height:1.04;font-weight:800;margin:22px 0 0;letter-spacing:-.5px}
.st-slide__title span{color:var(--orange)}

/* Controles */
.st-slider__arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(20,22,26,.45);color:#fff;font-size:26px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s,border-color .15s}
.st-slider__arrow:hover{background:var(--orange);border-color:var(--orange);color:#1a1206}
.st-slider__arrow--prev{left:14px}
.st-slider__arrow--next{right:14px}
.st-slider__dots{position:absolute;left:0;right:0;bottom:26px;z-index:3;display:flex;justify-content:center;gap:9px}
.st-slider__dot{width:11px;height:11px;padding:0;border-radius:50%;border:none;background:rgba(255,255,255,.32);cursor:pointer;transition:width .2s,background .2s}
.st-slider__dot:hover{background:rgba(255,255,255,.6)}
.st-slider__dot.is-active{width:30px;border-radius:6px;background:var(--orange)}

.st-hero__veil{position:absolute;inset:0;pointer-events:none;background:linear-gradient(95deg,rgba(20,22,26,.97) 0%,rgba(20,22,26,.88) 38%,rgba(20,22,26,.62) 70%,rgba(20,22,26,.5) 100%)}
.st-hero__grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(245,130,31,.14) 1px,transparent 1px),linear-gradient(90deg,rgba(245,130,31,.14) 1px,transparent 1px);background-size:44px 44px,44px 44px;animation:stGrid 7s linear infinite;-webkit-mask-image:radial-gradient(120% 90% at 70% 30%,#000 35%,transparent 80%);mask-image:radial-gradient(120% 90% at 70% 30%,#000 35%,transparent 80%)}
.st-hero__scan{position:absolute;left:0;right:0;top:0;height:150px;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(120,200,255,.10) 45%,rgba(245,130,31,.16) 55%,transparent);animation:stScan 6s linear infinite}
.st-hero__glow{position:absolute;border-radius:50%;pointer-events:none}
.st-hero__glow--o{top:-160px;right:-110px;width:520px;height:520px;background:radial-gradient(circle,rgba(245,130,31,.30),transparent 68%);animation:stGlow 5s ease-in-out infinite}
.st-hero__glow--b{bottom:-140px;left:18%;width:360px;height:360px;background:radial-gradient(circle,rgba(80,170,255,.18),transparent 70%);animation:stPulse 6s ease-in-out infinite}
.st-badge{display:inline-block;background:var(--orange);color:#1a1206;font-family:var(--sora);font-weight:800;letter-spacing:3px;font-size:13px;padding:7px 16px;border-radius:4px;text-transform:uppercase}
.st-hero__copy{max-width:660px;animation:stFade .5s ease both}
.st-hero__copy p{color:#c6c8ce;font-size:18px;line-height:1.55;max-width:560px;margin:18px 0 0}
.st-hero__cta{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.st-hero__stats{display:flex;gap:26px;margin-top:34px;flex-wrap:wrap}
.st-hero__stats strong{font-family:var(--sora);font-weight:800;font-size:26px;color:var(--orange);display:block}
.st-hero__stats small{color:var(--muted-2);font-size:13px}

/* --- Benefits -------------------------------------------------------------- */
.st-benefits{background:var(--dark-2);color:#fff;border-top:3px solid var(--orange)}
.st-benefits__inner{max-width:var(--wrap);margin:0 auto;padding:26px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.st-benefit{display:flex;align-items:center;gap:13px}
.st-benefit__ico{flex:none;width:42px;height:42px;border-radius:50%;background:rgba(245,130,31,.15);color:var(--orange);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:800}
.st-benefit strong{font-family:var(--sora);font-weight:700;font-size:15px;display:block}
.st-benefit small{color:var(--muted-2);font-size:13px}

/* --- Section head ---------------------------------------------------------- */
.st-section-head{text-align:center;max-width:640px;margin:0 auto 30px}
.st-section-head--left{text-align:left;margin-left:0}
.st-eyebrow{color:var(--orange);font-weight:800;letter-spacing:2px;font-size:13px;text-transform:uppercase}
.st-section-head h2{font-size:38px;font-weight:800;letter-spacing:-.5px;margin:10px 0 0}
.st-section-head p{color:var(--muted);font-size:16px;margin:12px 0 0}

/* --- Products -------------------------------------------------------------- */
.st-products{max-width:var(--wrap);margin:0 auto;padding:70px 26px 30px}
.st-filters{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-bottom:34px}
.st-chip-btn{border:1px solid var(--line-2);border-radius:30px;padding:10px 18px;font-weight:700;font-size:13.5px;cursor:pointer;transition:all .15s;background:#fff;color:#5a5a5e}
.st-chip-btn.is-active{background:var(--orange);color:#1a1206;border-color:var(--orange)}
.st-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(258px,1fr));gap:20px}
.st-card{background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column}
.st-card.is-hidden{display:none}
.st-card__img{height:150px;background:repeating-linear-gradient(135deg,#fff0db,#fff0db 11px,#ffe0bb 11px,#ffe0bb 22px);display:flex;align-items:center;justify-content:center;position:relative;text-decoration:none;overflow:hidden}
.st-card__img img{width:100%;height:100%;object-fit:cover}
.st-card__cat{position:absolute;top:11px;left:11px;background:rgba(31,33,38,.85);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.5px;padding:4px 9px;border-radius:4px;z-index:2}
.st-card__ph{font-family:ui-monospace,Menlo,monospace;color:#b07a36;font-size:12px;letter-spacing:.5px}
.st-card__body{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1}
.st-card__body h3{font-size:16.5px;font-weight:700;line-height:1.25;font-family:var(--sora)}
.st-card__body h3 a{text-decoration:none;color:inherit}
.st-card__body p{color:var(--muted);font-size:13px;line-height:1.5;margin:7px 0 0}
.st-card__spacer{flex:1}
.st-card__price{display:flex;align-items:flex-end;gap:6px;margin-top:14px}
.st-card__price span{font-family:var(--sora);font-weight:800;font-size:22px;color:var(--dark)}
.st-card__price small{color:#a3a3a8;font-size:12px;font-weight:700;padding-bottom:3px}
.st-card__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:14px}
.st-card__actions .st-btn{width:100%;padding:11px 8px;font-size:13.5px}
.st-quote-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
.st-products__more{text-align:center;margin-top:36px}
.st-empty{grid-column:1/-1;text-align:center;color:var(--muted);padding:40px}

/* --- Process --------------------------------------------------------------- */
.st-process{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:50px}
.st-process__inner{max-width:var(--wrap);margin:0 auto;padding:64px 26px}
.st-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.st-step{padding:6px}
.st-step__n{font-family:var(--sora);font-weight:800;font-size:46px;color:#f1d9bb;line-height:1}
.st-step h3{font-size:18px;font-weight:700;margin:8px 0 0}
.st-step p{color:var(--muted);font-size:14px;line-height:1.55;margin:8px 0 0}

/* --- Testimonials ---------------------------------------------------------- */
.st-testimonials{max-width:var(--wrap);margin:0 auto;padding:70px 26px}
.st-testimonials__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.st-testimonial{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}
.st-testimonial__stars{color:var(--orange);font-size:16px;letter-spacing:2px}
.st-testimonial p{font-size:15px;line-height:1.6;color:#33343a;margin:12px 0 18px}
.st-testimonial__who{display:flex;align-items:center;gap:11px}
.st-testimonial__ini{width:40px;height:40px;border-radius:50%;background:var(--dark);color:var(--orange);display:flex;align-items:center;justify-content:center;font-weight:800;font-family:var(--sora)}
.st-testimonial__who strong{font-weight:700;font-size:14px;display:block}
.st-testimonial__who small{color:var(--muted-2);font-size:12.5px}

/* --- Contact / footer ------------------------------------------------------ */
.st-contact{background:radial-gradient(120% 130% at 20% 0%,#33363f,var(--dark) 60%,var(--dark-3));color:#fff}
.st-contact__inner{max-width:var(--wrap);margin:0 auto;padding:64px 26px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}
.st-contact h2{font-size:36px;font-weight:800;letter-spacing:-.5px}
.st-contact p{color:#b9bbc2;font-size:16px;line-height:1.6;margin:14px 0 26px;max-width:460px}
.st-contact__links{display:flex;flex-direction:column;gap:14px}
.st-contact__links a{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none}
.st-ico{width:44px;height:44px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-weight:800}
.st-ico--wa{background:#25D366;color:#0a3d1f}
.st-ico--mail{background:var(--orange);color:#1a1206}
.st-contact__links small{display:block;color:var(--muted-2);font-size:12px}
.st-contact__links strong{font-family:var(--sora);font-weight:700;font-size:16px}
.st-includes{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:30px}
.st-includes h3{font-size:20px;font-weight:700;margin-bottom:18px}
.st-includes__row{display:flex;align-items:center;gap:11px;padding:9px 0;border-bottom:1px solid rgba(255,255,255,.07)}
.st-includes__row span:first-child{color:var(--orange);font-weight:800}
.st-includes__row span:last-child{font-size:14.5px;color:#dcdde1}
.st-contact__bar{border-top:1px solid rgba(255,255,255,.08)}
.st-contact__bar-inner{max-width:var(--wrap);margin:0 auto;padding:20px 26px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#7d7f86;font-size:13px}

/* --- Cart drawer ----------------------------------------------------------- */
.st-cart-backdrop{position:fixed;inset:0;background:rgba(15,16,18,.5);z-index:50;opacity:0;pointer-events:none;transition:opacity .25s}
.st-cart-backdrop.is-open{opacity:1;pointer-events:auto}
.st-cart-drawer{position:fixed;top:0;right:0;bottom:0;width:min(440px,100vw);background:#fff;z-index:51;display:flex;flex-direction:column;box-shadow:-20px 0 60px rgba(0,0,0,.25);transform:translateX(105%);transition:transform .32s cubic-bezier(.4,0,.2,1)}
.st-cart-drawer.is-open{transform:translateX(0)}
.st-cart-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:20px 22px;border-bottom:1px solid var(--line);flex:none}
.st-cart-drawer__head h3{font-size:18px;font-weight:800;font-family:var(--sora)}
.st-cart-drawer__close{background:#f0ece3;border:none;width:34px;height:34px;border-radius:9px;font-size:18px;cursor:pointer;color:#5a5a5e}
.st-cart-drawer__body{flex:1;overflow-y:auto;padding:8px 22px}
.st-cart-drawer__foot{flex:none;border-top:1px solid var(--line);padding:18px 22px;background:var(--cream);display:flex;flex-direction:column;gap:10px}
.st-cart-drawer__foot .st-btn{width:100%}
/* Estilo del mini-cart de WooCommerce dentro del drawer */
.st-cart-drawer .woocommerce-mini-cart{list-style:none;margin:0;padding:0}
.st-cart-drawer .woocommerce-mini-cart__empty-message{text-align:center;padding:40px 0;color:var(--muted-2)}
.st-cart-drawer .mini_cart_item{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid #f0ece3;position:relative}
.st-cart-drawer .mini_cart_item a.remove{order:3;color:#c0392b!important;font-weight:700}
.st-cart-drawer .woocommerce-mini-cart__total{display:flex;justify-content:space-between;font-family:var(--sora);font-weight:800;font-size:18px;padding:14px 0}
.st-cart-drawer .woocommerce-mini-cart__buttons{display:none}

/* --- Páginas internas / WooCommerce --------------------------------------- */
.st-main{min-height:40vh}
.st-page{max-width:var(--wrap);margin:0 auto;padding:50px 26px}
.st-page--narrow{max-width:820px}
.st-content{line-height:1.7;font-size:16px}
.st-content h2,.st-content h3{margin:1.4em 0 .5em}
.st-content p{margin:0 0 1em}
/* Se acota a .st-main: WooCommerce pone la clase "woocommerce" también en el
   <body>, y sin acotar encogía el header y el footer a --wrap. */
.st-main .woocommerce{max-width:var(--wrap);margin:0 auto;padding:40px 26px}
.woocommerce .button,.woocommerce a.button,.woocommerce button.button{background:var(--orange)!important;color:#1a1206!important;border-radius:8px!important;font-weight:800!important}
.woocommerce .button.alt,.woocommerce #place_order{background:var(--dark)!important;color:#fff!important}
.woocommerce ul.products li.product .price{color:var(--dark);font-family:var(--sora);font-weight:800}
.woocommerce-store-notice,.demo_store{background:var(--orange)!important;color:#1a1206!important}

/* --- Posts ---------------------------------------------------------------- */
.st-post{padding:24px 0;border-bottom:1px solid var(--line)}
.st-post__title a{text-decoration:none;color:var(--ink)}
.st-post__meta{color:var(--muted-2);font-size:13px;margin:6px 0}

/* --- Movimiento reducido --------------------------------------------------- */
@media (prefers-reduced-motion:reduce){
  .st-slider__track{transition:none}
  .st-hero__copy,.st-hero__grid,.st-hero__scan,.st-hero__glow{animation:none}
}

/* --- Responsive ------------------------------------------------------------ */
@media (max-width:980px){
  .st-slide__title{font-size:40px}
  .st-slide__inner{padding:56px 26px 84px}
  .st-benefits__inner{grid-template-columns:repeat(2,1fr)}
  .st-steps{grid-template-columns:repeat(2,1fr)}
  .st-testimonials__grid{grid-template-columns:1fr}
  .st-contact__inner{grid-template-columns:1fr}
}
@media (max-width:640px){
  /* La nav pasa a ser un panel desplegable que abre el botón hamburguesa. */
  .st-nav-toggle{display:block;order:3}
  .st-nav{display:none;order:4;width:100%;border-top:1px solid rgba(255,255,255,.10);padding-top:14px}
  .st-nav.is-open{display:block}
  .st-nav__list{flex-direction:column;gap:0}
  .st-nav__list li{border-bottom:1px solid rgba(255,255,255,.07)}
  .st-nav__list li:last-child{border-bottom:none}
  .st-nav__list a{display:block;padding:13px 2px;font-size:15px}
  .st-header__inner{flex-wrap:wrap;gap:14px;padding:12px 16px}
  .st-header__spacer{display:none}
  .st-logo{order:1;margin-right:auto}
  .st-cart-btn{order:2}
  .st-wa-pill{display:none}
  .st-slide__title{font-size:32px}
  .st-slide__inner{padding:44px 18px 76px}
  .st-hero__copy p{font-size:16px}
  .st-hero__stats{gap:18px}
  .st-slider__arrow{display:none}
  .st-slider__dots{bottom:20px}
  .st-section-head h2{font-size:28px}
  .st-benefits__inner{grid-template-columns:1fr}
  .st-steps{grid-template-columns:1fr}
  .st-card__actions{grid-template-columns:1fr}
  .st-contact__bar-inner{flex-direction:column}
}
