/* Homepage refresh: blue brand, dark surfaces, 8px corners, native motion. */
#homepage { --home-bg:#0b1730; --home-panel:#142442; --home-accent:#2563eb; background:var(--home-bg); color:#fff; font-family:Arial, Helvetica, sans-serif; }
#homepage .container { max-width:1320px; }
#homepage > section { background:var(--home-bg); padding:88px 0; }
#homepage h2 { font-size:clamp(28px,3.4vw,44px); letter-spacing:-1.4px; text-align:left; line-height:1.15; margin-bottom:36px; }
#homepage p { line-height:1.7; }
#homepage .text-orange-400, #homepage .text-amber-400 { color:#93b9ff; }
#homepage a, #homepage button { transition:background .2s,color .2s,transform .25s,border-color .2s; }
#homepage a:focus-visible, #homepage button:focus-visible { outline:3px solid #93b9ff; outline-offset:4px; }
#homepage .bg-orange-500 { background:#2563eb; color:white; }
#homepage .bg-orange-500:hover { background:#1d4ed8; }
#homepage .home-hero { position:relative; display:grid; grid-template-columns:1.1fr 1fr; padding:56px max(24px,calc((100% - 1272px)/2)) 36px; gap:24px 48px; overflow:hidden; }
#homepage #hero-slider { position:relative; inset:auto; grid-column:2; grid-row:1; min-height:490px; border-radius:8px; overflow:hidden; background:#142442 url('../uploads/services/solar solution.jpg') center/cover; }
#homepage #hero-slider .slide { transition:opacity .9s ease; }
#homepage #hero-slider .slide > div { background:rgba(11,23,48,.12); }
#homepage #hero-slider img { height:100%; width:100%; object-fit:cover; }
#homepage .home-hero-copy { grid-column:1; grid-row:1; min-height:0; text-align:left; padding:22px 0 0; margin:0; justify-content:center; }
#homepage .home-eyebrow { color:#93b9ff; font-size:12px; letter-spacing:2px; text-transform:uppercase; font-weight:700; margin:0 0 24px; }
#homepage #hero-title { font-size:clamp(36px,4.4vw,64px); line-height:1.08; letter-spacing:-2px; margin-bottom:24px; white-space:pre-line; overflow-wrap:break-word; }
#homepage #hero-subtitle { color:#bdcce4; font-size:17px; margin:0 0 30px; max-width:48ch; white-space:pre-line; }
#homepage .home-actions { justify-content:flex-start; gap:12px; }
#homepage .home-actions a, #homepage .home-actions button { padding:14px 18px; border-radius:6px; font-size:14px; white-space:nowrap; }
#homepage .home-actions a:last-child { border:0; padding-left:0; width:100%; text-align:left; color:#bfdbfe; background:transparent; }
#homepage .home-actions a:last-child:hover { color:#fff; transform:translateX(4px); }
#homepage #open-consultation-modal { background:transparent; border:1px solid #667c9e; }
#homepage #open-consultation-modal:hover { background:#1c3154; }
#homepage .home-stats { margin:32px 0 0; padding-top:24px; width:100%; gap:16px; border-color:#2c3d58; }
#homepage .home-stats p:first-child { font-size:24px; }
#homepage .home-stats p:last-child { font-size:10px; letter-spacing:1px; }
#homepage .home-slider-controls { grid-column:2; display:flex; justify-content:space-between; align-items:center; min-height:32px; }
#homepage #slider-dots { display:flex; gap:8px; }
#homepage #slider-dots .dot { width:32px; height:24px; background:transparent; border:0; border-top:3px solid #526380; cursor:pointer; }
#homepage #slider-dots .dot[aria-pressed="true"] { border-color:#93b9ff; }
#homepage #hero-pause { font-size:12px; color:#c5d2e8; }
#homepage .home-benefits { padding:40px 0 64px; }
#homepage .home-benefits > .container > .grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; }
#homepage .home-benefits .grid > div { text-align:left; padding:0 24px 0 0; border:0; border-radius:0; background:transparent; }
#homepage .home-benefits svg { margin:0 0 20px; width:32px; height:32px; color:#93b9ff; }
#homepage #solutions { border-top:1px solid #283957; }
#homepage #solutions .grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
#homepage #solutions .grid > a { min-height:290px; display:flex; align-items:flex-end; text-align:left; border-radius:8px; overflow:hidden; padding:30px; border:1px solid #31466b; }
#homepage #solutions .grid > a > .relative { max-width:430px; }
#homepage #solutions .lazy-bg { background-color:rgba(10,25,49,.8); transition:transform .6s; }
#homepage #solutions .grid > a:hover .lazy-bg { transform:scale(1.04); }
#homepage #solutions svg { margin:0 0 20px; color:#fff; width:30px; height:30px; }
#homepage #solutions p { color:#e0e9f8; }
#homepage #solutions h3 { font-size:25px; line-height:1.2; }
#homepage #featured-products-grid > div, #homepage #product-grid-homepage > div, #homepage #blog-posts-container > div { background:var(--home-panel); border:1px solid #2c3d58; border-radius:8px; overflow:hidden; transition:transform .25s,border-color .25s; }
#homepage #featured-products-grid > div:hover, #homepage #product-grid-homepage > div:hover, #homepage #blog-posts-container > div:hover { transform:translateY(-5px); border-color:#6389c7; }
#homepage #products { border-top:1px solid #283957; }
#homepage section { scroll-margin-top:90px; }
@keyframes home-enter { from { opacity:0; transform:translateY(22px); } to { opacity:1; transform:none; } }
@media (prefers-reduced-motion:no-preference) {
    #homepage .home-eyebrow { animation:home-enter .65s both; }
    #homepage #hero-title { animation:home-enter .75s .08s both; }
    #homepage #hero-subtitle { animation:home-enter .75s .16s both; }
    #homepage .home-actions { animation:home-enter .75s .24s both; }
    #homepage #hero-slider { animation:home-enter .9s .12s both; }
}
@media (max-width:1023px) {
    #homepage .home-hero { gap:24px; }
    #homepage #hero-title { font-size:40px; }
    #homepage .home-stats { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:767px) {
    #homepage > section { padding:56px 0; }
    #homepage .home-hero { display:flex; flex-direction:column; padding:32px 24px; gap:24px; }
    #homepage .home-hero-copy { order:0; padding:0; }
    #homepage #hero-slider { order:1; min-height:320px; width:100%; }
    #homepage .home-slider-controls { order:2; }
    #homepage #hero-title { font-size:clamp(34px,8vw,48px); letter-spacing:-1.3px; }
    #homepage .home-actions { flex-direction:row; }
    #homepage .home-stats { grid-template-columns:repeat(4,1fr); gap:10px; }
    #homepage .home-stats p:first-child { font-size:21px; }
    #homepage .home-benefits > .container > .grid { grid-template-columns:1fr; gap:28px; }
    #homepage #solutions .grid { grid-template-columns:1fr; }
    #homepage #solutions .grid > a { min-height:260px; }
}
@media (prefers-reduced-motion:reduce) {
    #homepage *, #homepage *::before, #homepage *::after { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
    #homepage a:hover, #homepage .grid > div:hover, #homepage .lazy-bg { transform:none !important; }
}
