{"id":2062,"date":"2026-03-26T00:22:40","date_gmt":"2026-03-25T23:22:40","guid":{"rendered":"https:\/\/realsolar.al\/?page_id=2062"},"modified":"2026-10-08T19:36:10","modified_gmt":"2026-10-08T18:36:10","slug":"cmimi-panele-diellore","status":"publish","type":"page","link":"https:\/\/realsolar.al\/en\/cmimi-panele-diellore\/","title":{"rendered":"Cmimi Panele Diellore"},"content":{"rendered":"\n<section class=\"rs-page-hero\">\n  <div class=\"rs-page-hero-inner\">\n    <div class=\"rs-page-hero-copy\">\n      <div class=\"rs-page-hero-badge\">REAL SOLAR | NATURAL ENERGY<\/div>\n\n      <h1>\u00c7mimi i paneleve diellore<\/h1>\n\n      <p>\n        M\u00ebsoni faktor\u00ebt q\u00eb ndikojn\u00eb n\u00eb \u00e7mimin e nj\u00eb sistemi fotovoltaik dhe llogaritni kursimin e mundsh\u00ebm p\u00ebr sht\u00ebpin\u00eb ose biznesin tuaj.\n      <\/p>\n\n      <div class=\"rs-page-hero-actions\">\n        <a href=\"\/#kalkulatori\" class=\"rs-page-btn-red\">Llogarit kursimet<\/a>\n        <a href=\"\/kontakt\/\" class=\"rs-page-btn-dark\">K\u00ebrko ofert\u00eb falas<\/a>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/section>\n\n\n\n<div id=\"wp-block-themeisle-blocks-advanced-columns-ee26a8c5\" class=\"wp-block-themeisle-blocks-advanced-columns alignfull has-1-columns has-desktop-equal-layout has-tablet-equal-layout has-mobile-equal-layout has-vertical-unset has-light-bg\"><div class=\"wp-block-themeisle-blocks-advanced-columns-overlay\"><\/div><div class=\"innerblocks-wrap\">\n<div id=\"wp-block-themeisle-blocks-advanced-column-89c9cdce\" class=\"wp-block-themeisle-blocks-advanced-column\">\n<section class=\"solar-price-page\">\n\n  <div class=\"solar-price-intro\">\n    <h1>\u00c7mimi i Paneleve Diellore n\u00eb Shqip\u00ebri<\/h1>\n    <p>\n      \u00c7mimi i paneleve diellore n\u00eb Shqip\u00ebri ndryshon sipas konsumit t\u00eb energjis\u00eb, madh\u00ebsis\u00eb s\u00eb sistemit, tipit t\u00eb objektit dhe kushteve t\u00eb instalimit.\n      N\u00eb vend t\u00eb nj\u00eb \u00e7mimi fiks, zgjidhja m\u00eb e mir\u00eb \u00ebsht\u00eb nj\u00eb p\u00ebrllogaritje e personalizuar sipas nevojave t\u00eb sht\u00ebpis\u00eb ose biznesit tuaj.\n    <\/p>\n  <\/div>\n\n  <div class=\"solar-price-section\">\n    <h2>Si llogaritet \u00e7mimi i paneleve diellore?<\/h2>\n<p>N\u00eb k\u00ebt\u00eb udh\u00ebzues, panelet diellore jan\u00eb panele fotovoltaike p\u00ebr prodhimin e energjis\u00eb elektrike. Ato ndryshojn\u00eb nga kolektor\u00ebt diellor\u00eb q\u00eb ngrohin ujin; k\u00ebto sisteme kan\u00eb pajisje dhe kosto t\u00eb ndryshme.<\/p>\n<p>P\u00ebr t\u00eb krahasuar oferta p\u00ebr nj\u00eb sistem fotovoltaik p\u00ebr sht\u00ebpi, k\u00ebrkoni t\u00eb sqarohen panelet, inverteri, struktura e montimit, projektimi dhe instalimi. Kushtet e \u00e7atis\u00eb ose truallit dhe orientimi ndikojn\u00eb n\u00eb zgjidhjen teknike. N\u00ebse k\u00ebrkoni ruajtje energjie me bateri, k\u00ebrkoni q\u00eb ky opsion dhe kostoja e tij t\u00eb paraqiten ve\u00e7mas. Oferta e personalizuar p\u00ebrcakton pajisjet dhe punimet konkrete.<\/p>\n\n    <p>\n      Kostoja e nj\u00eb sistemi fotovoltaik nuk \u00ebsht\u00eb e nj\u00ebjt\u00eb p\u00ebr t\u00eb gjith\u00eb. Ajo ndikohet nga disa faktor\u00eb kryesor\u00eb:\n    <\/p>\n    <ul>\n      <li>Konsumi vjetor i energjis\u00eb elektrike<\/li>\n      <li>Madh\u00ebsia e sistemit n\u00eb kWp<\/li>\n      <li>Tipi i instalimit p\u00ebr sht\u00ebpi apo biznes<\/li>\n      <li>Orientimi dhe sip\u00ebrfaqja e disponueshme<\/li>\n      <li>Kostoja e montimit dhe pajisjeve shtes\u00eb<\/li>\n    <\/ul>\n  <\/div>\n\n  <div class=\"solar-price-section\">\n    <h2>Sa kushtojn\u00eb panelet diellore p\u00ebr sht\u00ebpi dhe biznese?<\/h2>\n    <p>\n      Sistemet me panele diellore dimensionohen sipas konsumit real t\u00eb klientit. P\u00ebr k\u00ebt\u00eb arsye, \u00e7mimi final llogaritet pas analiz\u00ebs s\u00eb konsumit, vendndodhjes dhe objektivit t\u00eb kursimit.\n      P\u00ebr nj\u00eb vler\u00ebsim m\u00eb t\u00eb sakt\u00eb, mund t\u00eb p\u00ebrdorni kalkulatorin ton\u00eb dhe t\u00eb k\u00ebrkoni ofert\u00eb falas.\n    <\/p>\n  <\/div>\n\n  <div class=\"solar-price-section solar-price-calc\">\n    <h2>Llogarit koston e sistemit tuaj diellor<\/h2>\n    <p>\n      P\u00ebrdorni kalkulatorin m\u00eb posht\u00eb p\u00ebr t\u00eb marr\u00eb nj\u00eb vler\u00ebsim t\u00eb personalizuar t\u00eb fuqis\u00eb s\u00eb rekomanduar, prodhimit vjetor dhe kursimit t\u00eb pritsh\u00ebm.\n    <\/p>\n\n        <style>\n  :root{\n    --pvw-accent:#e11d48;\n    --pvw-accent-2:#fb7185;\n    --pvw-ink:#0f172a;\n    --pvw-ink-soft:#334155;\n    --pvw-muted:#64748b;\n    --pvw-line:#e5e7eb;\n    --pvw-line-strong:#cbd5e1;\n    --pvw-bg:#f8fafc;\n    --pvw-card:#ffffff;\n    --pvw-card-2:#fcfcfd;\n    --pvw-shadow:0 20px 60px rgba(15,23,42,.08);\n    --pvw-shadow-soft:0 10px 30px rgba(15,23,42,.06);\n    --pvw-radius:24px;\n    --pvw-radius-sm:16px;\n    --pvw-radius-xs:12px;\n    --pvw-speed:.28s;\n    --pvw-ease:cubic-bezier(.22,.61,.36,1);\n  }\n\n  .pvw-wrap{\n    max-width:1020px;\n    margin:0 auto;\n    font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", sans-serif;\n    color:var(--pvw-ink);\n  }\n\n  .pvw-wrap > .pvw-container{\n    background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(255,255,255,.94));\n    border:1px solid rgba(255,255,255,.7);\n    box-shadow:var(--pvw-shadow);\n    border-radius:32px;\n    padding:28px;\n    backdrop-filter:blur(10px);\n    -webkit-backdrop-filter:blur(10px);\n    position:relative;\n    overflow:hidden;\n  }\n\n  .pvw-wrap > .pvw-container::before{\n    content:\"\";\n    position:absolute;\n    inset:0;\n    pointer-events:none;\n    background:\n      radial-gradient(800px 240px at 50% -120px, rgba(225,29,72,.08), transparent 60%),\n      linear-gradient(180deg, rgba(255,255,255,.5), rgba(255,255,255,0));\n  }\n\n  .pvw-stepbar{\n    display:flex;\n    align-items:center;\n    justify-content:center;\n    gap:10px;\n    margin:4px 0 22px;\n    flex-wrap:wrap;\n  }\n\n  .pvw-stepdot{\n    width:34px;\n    height:34px;\n    border-radius:999px;\n    display:flex;\n    align-items:center;\n    justify-content:center;\n    font-size:13px;\n    font-weight:800;\n    color:var(--pvw-muted);\n    background:#fff;\n    border:1px solid var(--pvw-line);\n    box-shadow:var(--pvw-shadow-soft);\n    transition:all var(--pvw-speed) var(--pvw-ease);\n  }\n\n  .pvw-stepdot.is-active{\n    color:#fff;\n    background:linear-gradient(135deg,var(--pvw-accent),var(--pvw-accent-2));\n    border-color:transparent;\n    transform:translateY(-1px) scale(1.03);\n    box-shadow:0 12px 30px rgba(225,29,72,.24);\n  }\n\n  .pvw-stepdot.is-done{\n    color:var(--pvw-accent);\n    border-color:rgba(225,29,72,.18);\n    background:rgba(225,29,72,.06);\n  }\n\n  .pvw-stepline{\n    width:46px;\n    height:2px;\n    border-radius:999px;\n    background:linear-gradient(90deg,#e2e8f0,#e2e8f0);\n    transition:all var(--pvw-speed) var(--pvw-ease);\n  }\n\n  .pvw-stepline.is-done{\n    background:linear-gradient(90deg,var(--pvw-accent),var(--pvw-accent-2));\n  }\n\n  .pvw-panel{\n    background:linear-gradient(180deg,var(--pvw-card),var(--pvw-card-2));\n    border:1px solid rgba(15,23,42,.06);\n    border-radius:var(--pvw-radius);\n    padding:26px;\n    margin-bottom:16px;\n    box-shadow:var(--pvw-shadow-soft);\n    transition:\n      transform var(--pvw-speed) var(--pvw-ease),\n      box-shadow var(--pvw-speed) var(--pvw-ease),\n      opacity var(--pvw-speed) var(--pvw-ease);\n  }\n\n  .pvw-step{\n    animation:pvwFadeSlide .45s var(--pvw-ease);\n  }\n\n  @keyframes pvwFadeSlide{\n    from{opacity:0; transform:translateY(10px) scale(.995)}\n    to{opacity:1; transform:translateY(0) scale(1)}\n  }\n\n  .pvw-h2{\n    margin:0 0 8px;\n    text-align:center;\n    font-size:28px;\n    font-weight:800;\n    color:var(--pvw-ink);\n  }\n\n  .pvw-h3{\n    margin:0 0 14px;\n    color:var(--pvw-ink);\n    font-size:30px;\n    line-height:1.15;\n    letter-spacing:-.03em;\n    font-weight:800;\n  }\n\n  .pvw-row{\n    display:flex;\n    gap:16px;\n    flex-wrap:wrap;\n    align-items:flex-end;\n  }\n\n  .pvw-row label{\n    display:block;\n    font-weight:700;\n    color:var(--pvw-ink);\n    font-size:14px;\n    letter-spacing:-.01em;\n  }\n\n  .pvw-field{\n    flex:1 1 220px;\n  }\n\n  .pvw-input,\n  .pvw-select{\n    width:100%;\n    min-height:52px;\n    padding:13px 16px;\n    border:1px solid var(--pvw-line);\n    border-radius:14px !important;\n    background:rgba(255,255,255,.98) !important;\n    color:var(--pvw-ink);\n    font-size:15px;\n    font-weight:600;\n    box-shadow:inset 0 1px 0 rgba(255,255,255,.65);\n    transition:\n      border-color var(--pvw-speed) var(--pvw-ease),\n      box-shadow var(--pvw-speed) var(--pvw-ease),\n      transform var(--pvw-speed) var(--pvw-ease);\n  }\n\n  .pvw-input:focus,\n  .pvw-select:focus{\n    outline:none;\n    border-color:rgba(225,29,72,.45) !important;\n    box-shadow:\n      0 0 0 5px rgba(225,29,72,.10),\n      0 10px 25px rgba(225,29,72,.08);\n    transform:translateY(-1px);\n  }\n\n  .pvw-selectbox{\n    position:relative;\n    min-width:220px;\n  }\n\n  .pvw-select{\n    appearance:none;\n    -webkit-appearance:none;\n    -moz-appearance:none;\n    padding-right:46px !important;\n    cursor:pointer;\n  }\n\n  .pvw-caret{\n    position:absolute;\n    right:16px;\n    top:50%;\n    transform:translateY(-50%);\n    width:10px;\n    height:10px;\n    border-right:2px solid #64748b;\n    border-bottom:2px solid #64748b;\n    rotate:45deg;\n    pointer-events:none;\n    transition:all var(--pvw-speed) var(--pvw-ease);\n  }\n\n  .pvw-select:focus + .pvw-caret{\n    border-color:var(--pvw-accent);\n  }\n\n  .pvw-val{\n    display:block;\n    font-size:clamp(42px,5vw,58px);\n    line-height:1;\n    letter-spacing:-.05em;\n    font-weight:900;\n    color:var(--pvw-accent);\n    margin:4px 0 18px;\n  }\n\n  .pvw-kwh{\n    font-size:.8em;\n    letter-spacing:-.03em;\n  }\n\n  .pvw-muted{\n    color:var(--pvw-muted);\n    font-size:14px;\n    line-height:1.6;\n  }\n\n  .pvw-slider{\n    --track-h:10px;\n    --thumb-d:22px;\n    --pvw-fill:0%;\n    width:100%;\n    appearance:none;\n    -webkit-appearance:none;\n    height:var(--track-h);\n    border-radius:999px;\n    outline:none;\n    background:\n      linear-gradient(90deg, #ff8aa2 0%, #e11d48 72%, #881337 100%) 0 \/ var(--pvw-fill) 100% no-repeat,\n      linear-gradient(90deg, #e2e8f0, #e2e8f0) 0 \/ 100% 100% no-repeat;\n    box-shadow:inset 0 1px 2px rgba(15,23,42,.08);\n    margin:8px 0 22px;\n  }\n\n  .pvw-slider::-webkit-slider-runnable-track{\n    height:var(--track-h);\n    background:transparent;\n    border-radius:999px;\n  }\n\n  .pvw-slider::-moz-range-track{\n    height:var(--track-h);\n    background:#e2e8f0;\n    border-radius:999px;\n  }\n\n  .pvw-slider::-moz-range-progress{\n    height:var(--track-h);\n    border-radius:999px;\n    background:linear-gradient(90deg, #ff8aa2 0%, #e11d48 72%, #881337 100%);\n  }\n\n  .pvw-slider::-webkit-slider-thumb{\n    -webkit-appearance:none;\n    width:var(--thumb-d);\n    height:var(--thumb-d);\n    margin-top:calc((var(--track-h) - var(--thumb-d)) \/ 2);\n    border-radius:50%;\n    background:linear-gradient(135deg,#fff,#ffe4ea);\n    border:2px solid var(--pvw-accent);\n    box-shadow:\n      0 6px 18px rgba(225,29,72,.22),\n      0 1px 2px rgba(15,23,42,.10);\n    cursor:pointer;\n    transition:transform .14s ease;\n  }\n\n  .pvw-slider::-webkit-slider-thumb:hover{\n    transform:scale(1.06);\n  }\n\n  .pvw-slider::-moz-range-thumb{\n    width:var(--thumb-d);\n    height:var(--thumb-d);\n    border-radius:50%;\n    background:linear-gradient(135deg,#fff,#ffe4ea);\n    border:2px solid var(--pvw-accent);\n    box-shadow:0 6px 18px rgba(225,29,72,.22);\n    cursor:pointer;\n  }\n\n  .pvw-cards{\n    display:grid;\n    grid-template-columns:repeat(auto-fit,minmax(160px,1fr));\n    gap:14px;\n  }\n\n  .pvw-card{\n    position:relative;\n    border:1px solid var(--pvw-line);\n    border-radius:18px;\n    padding:18px 16px;\n    text-align:center;\n    cursor:pointer;\n    background:linear-gradient(180deg,#fff,#fcfcfd);\n    color:var(--pvw-ink);\n    font-weight:700;\n    transition:\n      transform var(--pvw-speed) var(--pvw-ease),\n      box-shadow var(--pvw-speed) var(--pvw-ease),\n      border-color var(--pvw-speed) var(--pvw-ease);\n    box-shadow:0 6px 18px rgba(15,23,42,.04);\n  }\n\n  .pvw-card:hover{\n    transform:translateY(-3px);\n    border-color:rgba(225,29,72,.22);\n    box-shadow:0 14px 36px rgba(15,23,42,.08);\n  }\n\n  .pvw-card.pvw-selected{\n    border-color:rgba(225,29,72,.24);\n    background:\n      linear-gradient(180deg, rgba(225,29,72,.06), rgba(255,255,255,.96)),\n      linear-gradient(180deg,#fff,#fcfcfd);\n    box-shadow:\n      0 0 0 4px rgba(225,29,72,.10),\n      0 18px 44px rgba(225,29,72,.12);\n    transform:translateY(-3px);\n  }\n\n  #pvw-map{\n    height:430px;\n    border:1px solid var(--pvw-line);\n    border-radius:20px;\n    overflow:hidden;\n    box-shadow:var(--pvw-shadow-soft);\n    display:flex;\n    align-items:center;\n    justify-content:center;\n    color:var(--pvw-muted);\n    font-weight:700;\n    background:rgba(255,255,255,.75);\n  }\n\n  .pvw-sum{\n    display:grid;\n    grid-template-columns:repeat(auto-fit,minmax(220px,1fr));\n    gap:16px;\n  }\n\n  .pvw-sum .pvw-panel{\n    margin:0;\n    text-align:center;\n    padding:22px 18px;\n    border-radius:22px;\n  }\n\n  .pvw-sum .pvw-muted{\n    font-size:13px;\n    letter-spacing:.01em;\n    text-transform:uppercase;\n    color:#64748b;\n  }\n\n  .pvw-sum .pvw-val{\n    font-size:40px;\n    margin-top:10px;\n  }\n\n  .pvw-btn{\n    position:relative;\n    min-height:52px;\n    padding:0 20px;\n    background:linear-gradient(135deg,var(--pvw-accent),var(--pvw-accent-2)) !important;\n    color:#fff !important;\n    border:none !important;\n    border-radius:16px !important;\n    font-size:15px;\n    font-weight:800 !important;\n    letter-spacing:-.01em;\n    cursor:pointer;\n    box-shadow:0 14px 30px rgba(225,29,72,.22);\n    transition:\n      transform var(--pvw-speed) var(--pvw-ease),\n      box-shadow var(--pvw-speed) var(--pvw-ease),\n      filter var(--pvw-speed) var(--pvw-ease),\n      opacity var(--pvw-speed) var(--pvw-ease);\n  }\n\n  .pvw-btn:hover{\n    transform:translateY(-2px);\n    filter:brightness(1.03);\n    box-shadow:0 18px 34px rgba(225,29,72,.28);\n  }\n\n  .pvw-btn:active{\n    transform:translateY(0);\n  }\n\n  .pvw-btn--ghost{\n    background:linear-gradient(180deg,#fff,#f8fafc) !important;\n    color:var(--pvw-ink) !important;\n    border:1px solid var(--pvw-line) !important;\n    box-shadow:0 8px 24px rgba(15,23,42,.06);\n  }\n\n  .pvw-btn--ghost:hover{\n    box-shadow:0 14px 30px rgba(15,23,42,.10);\n  }\n\n  .pvw-nav{\n    display:flex;\n    justify-content:space-between;\n    align-items:center;\n    gap:12px;\n    margin-top:18px;\n  }\n\n  #pvw-next,#pvw-back{\n    display:inline-flex !important;\n    align-items:center;\n    justify-content:center;\n  }\n\t#pvw-next[style*=\"display: none\"]{\n\t  display:none !important;\n\t}\n\n  #pvw-back{\n    transition:opacity .25s ease, transform .25s ease;\n  }\n\n  #pvw-back.is-hidden{\n    opacity:0;\n    pointer-events:none;\n    transform:translateY(4px);\n  }\n\n  .pvw-pre{\n    background:linear-gradient(180deg,#0f172a,#111827);\n    color:#e2e8f0;\n    border:none;\n    border-radius:18px;\n    padding:16px 18px;\n    white-space:pre-wrap;\n    box-shadow:var(--pvw-shadow-soft);\n  }\n\n  .pvw-h2{\n    display:none;\n  }\n\n  @media (max-width:900px){\n    .pvw-wrap > .pvw-container{\n      padding:18px;\n      border-radius:26px;\n    }\n\n    .pvw-panel{\n      padding:18px;\n      border-radius:20px;\n    }\n\n    .pvw-h3{\n      font-size:24px;\n    }\n\n    .pvw-nav{\n      position:sticky;\n      bottom:0;\n      background:rgba(255,255,255,.82);\n      backdrop-filter:blur(10px);\n      -webkit-backdrop-filter:blur(10px);\n      padding:12px;\n      margin:16px -6px -6px;\n      border-top:1px solid rgba(15,23,42,.06);\n      z-index:4;\n    }\n\n    .pvw-nav > button,\n    .pvw-nav > div > button{\n      flex:1 1 0;\n      width:100%;\n    }\n\n    .pvw-stepbar{\n      gap:8px;\n    }\n\n    .pvw-stepline{\n      width:24px;\n    }\n  }\n\n  @media (prefers-reduced-motion: reduce){\n    .pvw-step,\n    .pvw-card,\n    .pvw-panel,\n    .pvw-btn,\n    .pvw-stepdot{\n      animation:none !important;\n      transition:none !important;\n    }\n  }\n<\/style>\n\n  <div class=\"pvw-wrap\" id=\"pvw-root\">\n    <div class=\"pvw-container\">\n\n      <div class=\"pvw-stepbar\" id=\"pvw-stepbar\">\n        <span class=\"pvw-stepdot is-active\" data-step=\"1\">1<\/span>\n        <span class=\"pvw-stepline\"><\/span>\n        <span class=\"pvw-stepdot\" data-step=\"2\">2<\/span>\n        <span class=\"pvw-stepline\"><\/span>\n        <span class=\"pvw-stepdot\" data-step=\"3\">3<\/span>\n        <span class=\"pvw-stepline\"><\/span>\n        <span class=\"pvw-stepdot\" data-step=\"4\">4<\/span>\n      <\/div>\n\n      <!-- STEP 1 -->\n      <section class=\"pvw-panel pvw-step\" id=\"pvw-step1\">\n        <h3 class=\"pvw-h3\">How many kWh of energy do you use per year<\/h3>\n        <span class=\"pvw-val\"><span id=\"pvw-useVal\">4300<\/span> <span class=\"pvw-kwh\">kWh<\/span><\/span>\n        <input id=\"pvw-use\" class=\"pvw-slider\" type=\"range\" min=\"1000\" max=\"100000\" step=\"100\" value=\"4300\" \/>\n        <div class=\"pvw-row\">\n          <label>Or enter manually <input id=\"pvw-useNum\" class=\"pvw-input\" type=\"number\" value=\"4300\" min=\"0\" step=\"100\"><\/label>\n\n          <div class=\"pvw-field\">\n            <label for=\"pvw-seg\">Customer type<\/label>\n            <div class=\"pvw-selectbox\">\n              <select id=\"pvw-seg\" class=\"pvw-select\">\n                <option value=\"F\">Residential<\/option>\n                <option value=\"Bu\"> Small\/medium business<\/option>\n                <option value=\"BM\">Large business<\/option>\n              <\/select>\n              <span class=\"pvw-caret\" aria-hidden=\"true\"><\/span>\n            <\/div>\n          <\/div>\n\n          <label>Energy price \u20ac\/kWh            <input id=\"pvw-price\" class=\"pvw-input\" type=\"number\" value=\"0.095\" step=\"0.001\">\n          <\/label>\n        <\/div>\n        <p class=\"pvw-muted\">Price is set automatically based on type, but you can adjust it according to your bill.<\/p>\n      <\/section>\n\n      <!-- STEP 2 -->\n      <section class=\"pvw-panel pvw-step\" id=\"pvw-step2\" style=\"display:none\">\n        <h3 class=\"pvw-h3\">Installation method<\/h3>\n        <div class=\"pvw-cards\" id=\"pvw-installs\">\n          <div class=\"pvw-card\" data-install=\"sloped\">Pitched roof<\/div>\n          <div class=\"pvw-card\" data-install=\"flat\">Flat roof<\/div>\n          <div class=\"pvw-card\" data-install=\"roofing\">Roof-integrated<\/div>\n          <div class=\"pvw-card\" data-install=\"ground\">Ground-mounted<\/div>\n          <div class=\"pvw-card\" data-install=\"facade\">On facade<\/div>\n        <\/div>\n        <p class=\"pvw-muted\">Fixed loss: 14%. Orientation is set to South (az=0). Angle is set based on method (default 30\u00b0).<\/p>\n      <\/section>\n\n      <!-- STEP 3 -->\n      <section class=\"pvw-panel pvw-step\" id=\"pvw-step3\" style=\"display:none\">\n        <h3 class=\"pvw-h3\">Location on map<\/h3>\n        <div class=\"pvw-row\">\n          <label class=\"pvw-inline\">Search address <input id=\"pvw-addr\" class=\"pvw-input\" type=\"text\" placeholder=\"Street, city\"><\/label>\n          <button id=\"pvw-find\" class=\"pvw-btn\" type=\"button\">Search<\/button>\n        <\/div>\n        <div id=\"pvw-map\">Duke ngarkuar hart\u00ebn...<\/div>\n        <p class=\"pvw-muted\">Map \u00a9 OpenStreetMap contributors. Search: Nominatim.<\/p>\n      <\/section>\n\n      <!-- STEP 4 -->\n      <section class=\"pvw-panel pvw-step\" id=\"pvw-step4\" style=\"display:none\">\n        <h3 class=\"pvw-h3\">Our solar system recommendation<\/h3>\n\n        <div class=\"pvw-sum\">\n          <div class=\"pvw-panel\"><div class=\"pvw-muted\">Recommended power<\/div><span class=\"pvw-val\"><span id=\"pvw-recKw\">\u2014<\/span> kWp<\/span><\/div>\n          <div class=\"pvw-panel\"><div class=\"pvw-muted\">Annual production<\/div><span class=\"pvw-val\"><span id=\"pvw-annKwh\">\u2014<\/span> kWh<\/span><\/div>\n          <div class=\"pvw-panel\"><div class=\"pvw-muted\">Annual savings<\/div><span class=\"pvw-val\"><span id=\"pvw-saveYear\">\u2014<\/span> \u20ac<\/span><\/div>\n        <\/div>\n\n        <div class=\"pvw-row\" style=\"margin-top:10px\">\n          <label>Do kapacitet tjet\u00ebr kWp <input id=\"pvw-userKw\" class=\"pvw-input\" type=\"number\" value=\"5\" min=\"0\" step=\"0.1\"><\/label>\n          <label>System cost (\u20ac\/kWp) <input id=\"pvw-priceKwp\" class=\"pvw-input\" type=\"number\" value=\"900\" step=\"10\"><\/label>\n          <label>Subsidy % <input id=\"pvw-subsidy\" class=\"pvw-input\" type=\"number\" value=\"0\" min=\"0\" max=\"100\"><\/label>\n        <\/div>\n\n        <div class=\"pvw-sum\" style=\"margin-top:10px\">\n          <div class=\"pvw-panel\"><div class=\"pvw-muted\">Estimated cost<\/div><span class=\"pvw-val\"><span id=\"pvw-costGross\">\u2014<\/span> \u20ac<\/span><\/div>\n          <div class=\"pvw-panel\"><div class=\"pvw-muted\">Price after subsidy<\/div><span class=\"pvw-val\"><span id=\"pvw-costNet\">\u2014<\/span> \u20ac<\/span><\/div>\n          <div class=\"pvw-panel\"><div class=\"pvw-muted\">Koha e kthimit t\u00eb investimit<\/div><span class=\"pvw-val\"><span id=\"pvw-payback\">\u2014<\/span> years<\/span><\/div>\n        <\/div>\n\n        <p class=\"pvw-muted\">kWp \u00ebsht\u00eb kapaciteti nominal i instaluar; kWh \u00ebsht\u00eb energjia e prodhuar ose e konsumuar; kW \u00ebsht\u00eb fuqia n\u00eb nj\u00eb \u00e7ast. Koha e kthimit \u00ebsht\u00eb nj\u00eb vler\u00ebsim i thjesht\u00eb: kostoja neto pjes\u00ebtuar me kursimin vjetor sipas supozimeve t\u00eb kalkulatorit, jo ROI p\u00ebr gjith\u00eb jet\u00ebn e sistemit.<\/p>\n        <p id=\"pvw-project-quote\" class=\"pvw-muted\" hidden>\u00c7mim sipas projektit \u2014 k\u00ebrko ofert\u00eb <a href=\"\/kontakt\/\">K\u00ebrko ofert\u00eb<\/a><\/p>\n        <pre id=\"pvw-debug\" class=\"pvw-pre\" style=\"margin-top:10px\"><\/pre>\n      <\/section>\n\n      <!-- NAV -->\n      <div class=\"pvw-nav\">\n        <button id=\"pvw-back\" class=\"pvw-btn pvw-btn--ghost\" type=\"button\">Back<\/button>\n        <div><button id=\"pvw-next\" class=\"pvw-btn\" type=\"button\">Next<\/button><\/div>\n      <\/div>\n\n      <p class=\"pvw-muted\" style=\"margin-top:10px\">Production is calculated using PVGIS. Loss 14%. South orientation, angle based on method.<\/p>\n    <\/div>\n  <\/div>\n\n<script>\n;(function(){\n  const root = document.getElementById('pvw-root');\n  if(!root || root.dataset.inited) return;\n  root.dataset.inited = '1';\n\n  const pvwI18n = {\"address_not_found\":\"Address not found\",\"pvgis_error\":\"PVGIS request error:\",\"coord\":\"Coordinates\",\"loss\":\"Loss\",\"angle\":\"Angle\",\"az\":\"Az\",\"production_per_1kwp\":\"Production per 1 kWp\",\"recommended_power\":\"Recommended power\",\"annual_production\":\"Prodhimi vjetor me %s kWp\",\"energy_price\":\"Energy price\",\"price_per_kwp\":\"\u20ac\/kWp (table)\",\"years\":\"years\",\"kwh_year\":\"kWh\/year\",\"loading_map\":\"Duke ngarkuar hart\u00ebn...\",\"map_failed\":\"Harta nuk u ngarkua\"};\n  const isEnglish=\/^en(?:-|$)\/i.test(document.documentElement.lang);\n  if(isEnglish) pvwI18n.annual_production='Annual production with %s kWp';\n  const prefersReduced = window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\n  const LEAFLET_CSS = \"https:\/\/unpkg.com\/leaflet@1.9.4\/dist\/leaflet.css\";\n  const LEAFLET_JS  = \"https:\/\/unpkg.com\/leaflet@1.9.4\/dist\/leaflet.js\";\n\n  const fmt = n => Number(n || 0).toLocaleString('sq-AL');\n\n  const SEG_PRICE = { F: 0.095, Bu: 0.140, BM: 0.185 };\n  const LOSS = 14;\n  const USE_ADJUST = 1.03;\n\n  let tilt = 30, az = 0;\n  let lat = 41.327, lon = 19.819;\n\n  const $ = id => document.getElementById(id);\n  let step=1, maxStep=4, calculationRun=0, usedTracked=false;\n  function trackUsed(e){\n    if(!e.isTrusted || usedTracked) return;\n    usedTracked=true;\n    window.rsSolarTrack?.('calculator_used', {calculator_type:'pvgis'});\n  }\n  root.addEventListener('input',trackUsed);\n  root.addEventListener('change',trackUsed);\n  root.addEventListener('click',e=>{\n    if(e.target.closest('#pvw-next,.pvw-card,#pvw-find')) trackUsed(e);\n  });\n\n  const use      = $('pvw-use');\n  const useNum   = $('pvw-useNum');\n  const useVal   = $('pvw-useVal');\n  const segSel   = $('pvw-seg');\n  const priceEl  = $('pvw-price');\n  const installs = $('pvw-installs');\n\n  function animateValue(el, end, decimals = 0, duration = 500, formatter = null){\n    if(!el) return;\n    if(prefersReduced){\n      el.textContent = formatter ? formatter(end) : Number(end).toFixed(decimals);\n      return;\n    }\n\n    const animationToken=(el.rsAnimationToken || 0)+1;\n    el.rsAnimationToken=animationToken;\n    const rawStart = String(el.textContent || '0').replace(\/[^\\d.-]\/g,'');\n    const start = Number(rawStart || 0);\n    const startTime = performance.now();\n\n    function frame(now){\n      if(el.rsAnimationToken!==animationToken) return;\n      const p = Math.min(1, (now - startTime) \/ duration);\n      const eased = 1 - Math.pow(1 - p, 3);\n      const val = start + (end - start) * eased;\n      el.textContent = formatter\n        ? formatter(val)\n        : Number(val).toFixed(decimals);\n      if(p < 1) requestAnimationFrame(frame);\n    }\n    requestAnimationFrame(frame);\n  }\n\n  function setStepUI(n){\n    const dots = document.querySelectorAll('.pvw-stepdot');\n    const lines = document.querySelectorAll('.pvw-stepline');\n\n    dots.forEach(dot=>{\n      const s = Number(dot.dataset.step);\n      dot.classList.toggle('is-active', s === n);\n      dot.classList.toggle('is-done', s < n);\n    });\n\n    lines.forEach((line, idx)=>{\n      line.classList.toggle('is-done', idx < n - 1);\n    });\n  }\n\n  function loadLeafletCSS() {\n    return new Promise((resolve, reject) => {\n      if (document.querySelector('link[data-pvw-leaflet=\"1\"]')) {\n        resolve();\n        return;\n      }\n\n      const link = document.createElement('link');\n      link.rel = 'stylesheet';\n      link.href = LEAFLET_CSS;\n      link.dataset.pvwLeaflet = '1';\n      link.onload = () => resolve();\n      link.onerror = () => reject(new Error('Leaflet CSS failed'));\n      document.head.appendChild(link);\n    });\n  }\n\n  function loadLeafletJS() {\n    return new Promise((resolve, reject) => {\n      if (window.L) {\n        resolve();\n        return;\n      }\n\n      const existing = document.querySelector('script[data-pvw-leaflet=\"1\"]');\n      if (existing) {\n        existing.addEventListener('load', () => resolve(), { once:true });\n        existing.addEventListener('error', () => reject(new Error('Leaflet JS failed')), { once:true });\n        return;\n      }\n\n      const script = document.createElement('script');\n      script.src = LEAFLET_JS;\n      script.defer = true;\n      script.dataset.pvwLeaflet = '1';\n      script.onload = () => resolve();\n      script.onerror = () => reject(new Error('Leaflet JS failed'));\n      document.body.appendChild(script);\n    });\n  }\n\n  let leafletPromise = null;\n  function ensureLeaflet() {\n    if (window.L) return Promise.resolve();\n    if (leafletPromise) return leafletPromise;\n\n    leafletPromise = Promise.all([\n      loadLeafletCSS(),\n      loadLeafletJS()\n    ]).then(() => {\n      if (!window.L) throw new Error('Leaflet unavailable');\n    });\n\n    return leafletPromise;\n  }\n\n  async function showStep(n){\n  step = Math.min(Math.max(n,1), maxStep);\n\n  document.querySelectorAll('.pvw-step').forEach((el,i)=>{\n    el.style.display = (i === step - 1) ? 'block' : 'none';\n  });\n\n  $('pvw-back').classList.toggle('is-hidden', step === 1);\n\n  if (step === maxStep) {\n    $('pvw-next').style.display = 'none';\n    $('pvw-next').disabled = true;\n  } else {\n    $('pvw-next').style.display = 'inline-flex';\n    $('pvw-next').disabled = false;\n  }\n\n  setStepUI(step);\n\n  if(step === 3) {\n    try {\n      await initMap();\n    } catch (e) {\n      $('pvw-map').textContent = pvwI18n.map_failed || 'Map failed';\n    }\n  }\n\n  if(step === 4) calculate();\n}\n\n  function updateSliderFill(n){\n    const min = Number(use.min)||0;\n    const max = Number(use.max)||100;\n    const pct = Math.max(0, Math.min(100, 100*(n-min)\/(max-min)));\n    use.style.setProperty('--pvw-fill', pct + '%');\n  }\n\n  function syncUse(v){\n    const n = Math.max(0, Number(v)||0);\n    use.value = n;\n    useNum.value = n;\n    animateValue(useVal, n, 0, 320, val => fmt(Math.round(val)));\n    updateSliderFill(n);\n  }\n\n  use.addEventListener('input', e=> syncUse(e.target.value));\n  useNum.addEventListener('input', e=> { if(e.target.value !== '' && Number(e.target.value)>=0) syncUse(e.target.value); });\n\n  segSel.addEventListener('change', ()=>{\n    priceEl.value = SEG_PRICE[segSel.value] ?? 0.10;\n  });\n\n  priceEl.value = SEG_PRICE[segSel.value];\n\n  installs.addEventListener('click', e=>{\n    const card = e.target.closest('.pvw-card');\n    if(!card) return;\n\n    installs.querySelectorAll('.pvw-card').forEach(c=>c.classList.remove('pvw-selected'));\n    card.classList.add('pvw-selected');\n\n    const t = card.dataset.install;\n    tilt = (t==='flat') ? 10 : (t==='facade') ? 90 : 30;\n\n    setTimeout(()=> showStep(3), 140);\n  });\n\n  let map, marker, mapReady=false;\n\n  async function initMap(){\n    if(mapReady || typeof L!=='undefined' && map){\n      if(map) setTimeout(()=>map.invalidateSize(), 50);\n      return;\n    }\n\n    $('pvw-map').textContent = pvwI18n.loading_map || 'Loading map...';\n\n    await ensureLeaflet();\n\n    if(mapReady){\n      if(map) setTimeout(()=>map.invalidateSize(), 50);\n      return;\n    }\n\n    $('pvw-map').innerHTML = '';\n\n    map = L.map('pvw-map');\n    map.setView([lat, lon], 12);\n\n    L.tileLayer('https:\/\/{s}.tile.openstreetmap.org\/{z}\/{x}\/{y}.png',{\n      maxZoom:19,\n      attribution:'&copy; OpenStreetMap'\n    }).addTo(map);\n\n    marker = L.marker([lat, lon], {draggable:true}).addTo(map);\n    marker.on('dragend', ()=>{\n      const p = marker.getLatLng();\n      lat = p.lat;\n      lon = p.lng;\n    });\n\n    mapReady = true;\n    setTimeout(()=>map.invalidateSize(), 80);\n  }\n\n  $('pvw-find').addEventListener('click', async ()=>{\n    const q = $('pvw-addr').value.trim();\n    if(!q) return;\n\n    const r = await fetch(\n      'https:\/\/nominatim.openstreetmap.org\/search?format=json&q=' + encodeURIComponent(q),\n      { headers:{ 'Accept-Language':'sq' } }\n    );\n\n    const data = await r.json();\n\n    if(data.length){\n      lat = parseFloat(data[0].lat);\n      lon = parseFloat(data[0].lon);\n      await initMap();\n      map.setView([lat,lon],16);\n      marker.setLatLng([lat,lon]);\n    } else {\n      alert(pvwI18n.address_not_found || 'Address not found');\n    }\n  });\n\n  $('pvw-back').addEventListener('click', ()=> showStep(step-1));\n  $('pvw-next').addEventListener('click', ()=> showStep(step+1));\n\n  showStep(1);\n  syncUse(use.value);\n  updateSliderFill(use.value);\n\n  function tierPriceKwp(kW){\n    const v = Number(kW);\n    if (!Number.isFinite(v) || v <= 0 || v > 500) return null;\n    if (v <= 5) return 900;\n    if (v <= 10) return 800;\n    if (v <= 20) return 700;\n    if (v <= 30) return 600;\n    if (v <= 50) return 550;\n    if (v <= 100) return 500;\n    if (v <= 200) return 480;\n    return 450;\n  }\n\n  function getYearlyUse(){\n    const manualUse = Number(useNum.value) || 0;\n    const sliderUse = Number(use.value) || 0;\n    return useNum.value.trim() === '' ? NaN : Number(useNum.value);\n  }\n\n  function normalizedPvgisYield(json, english=false){\n    if(!json || typeof json!=='object' || Array.isArray(json) || json.error) throw new Error(english ? 'PVGIS: invalid response.' : 'PVGIS: p\u00ebrgjigje e pavlefshme.');\n    const annual=json?.outputs?.totals?.fixed?.E_y;\n    const peak=json?.inputs?.pv_module?.peak_power;\n    const validPositive=v=>(typeof v==='number' || (typeof v==='string' && v.trim()!=='')) && Number.isFinite(Number(v)) && Number(v)>0;\n    if(!validPositive(annual) || !validPositive(peak)) throw new Error(english ? 'PVGIS: valid annual output or peak capacity is missing.' : 'PVGIS: mungon prodhimi vjetor ose kapaciteti i vlefsh\u00ebm.');\n    const yieldPerKwp=Number(annual)\/Number(peak);\n    if(!Number.isFinite(yieldPerKwp) || yieldPerKwp<=0) throw new Error(english ? 'PVGIS: invalid yield.' : 'PVGIS: prodhim i pavlefsh\u00ebm.');\n    return yieldPerKwp;\n  }\n\n  async function calculate(){\n    const run=++calculationRun;\n    const yearlyUse = getYearlyUse();\n    ['pvw-recKw','pvw-annKwh','pvw-saveYear','pvw-costGross','pvw-costNet','pvw-payback'].forEach(id=>{ $(id).rsAnimationToken=($(id).rsAnimationToken || 0)+1; $(id).textContent='\u2014'; });\n    $('pvw-userKw').oninput=null;\n    $('pvw-priceKwp').oninput=null;\n    $('pvw-subsidy').oninput=null;\n    const useCalc   = yearlyUse * USE_ADJUST;\n    const priceE    = priceEl.value.trim() === '' ? NaN : Number(priceEl.value);\n\n    const aspect = az;\n    const qs = new URLSearchParams({\n      lat: lat.toFixed(5),\n      lon: lon.toFixed(5),\n      peakpower: 1,\n      loss: LOSS,\n      angle: tilt,\n      aspect,\n      outputformat: 'json'\n    }).toString();\n\n    try{\n      if(!Number.isFinite(yearlyUse) || yearlyUse<=0 || !Number.isFinite(priceE) || priceE<0) throw new Error(isEnglish ? 'Enter positive annual consumption and a valid energy price.' : 'Vendos konsum vjetor pozitiv dhe \u00e7mim energjie t\u00eb vlefsh\u00ebm.');\n      const res = await fetch('\/wp-json\/pvcalc\/v1\/call?' + qs);\n      if(!res.ok) throw new Error('HTTP ' + res.status);\n\n      const json = await res.json();\n\n      const Ey = normalizedPvgisYield(json,isEnglish);\n      if(run!==calculationRun) return;\n\n      const recKw = (useCalc>0 && Ey>0) ? (useCalc \/ Ey) : 0;\n      const recKwRound = Math.round(recKw*10)\/10;\n\n      const priceKwpEl = $('pvw-priceKwp');\n      priceKwpEl.value = tierPriceKwp(recKwRound) ?? '';\n\n      const userKwEl = $('pvw-userKw');\n      userKwEl.value = recKwRound;\n\n      function update(kW){\n        priceKwpEl.disabled=Number(kW)>500;\n        $('pvw-project-quote').hidden=!(Number(kW)>500);\n        const rawCapacity=String(kW).trim();\n        kW = rawCapacity === '' ? NaN : Number(kW);\n        const rawPrice=priceKwpEl.value.trim();\n        const rawSubsidy=$('pvw-subsidy').value.trim();\n        if(!Number.isFinite(kW) || kW<0 || (kW<=500 && rawPrice==='') || !Number.isFinite(Number(rawPrice)) || Number(rawPrice)<0 || rawSubsidy==='' || !Number.isFinite(Number(rawSubsidy))){\n          ['pvw-recKw','pvw-annKwh','pvw-saveYear','pvw-costGross','pvw-costNet','pvw-payback'].forEach(id=>{ $(id).rsAnimationToken=($(id).rsAnimationToken || 0)+1; $(id).textContent='\u2014'; });\n          $('pvw-debug').textContent=isEnglish ? 'Enter valid capacity, cost and subsidy values.' : 'Vendos kapacitet, kosto dhe mb\u00ebshtetje t\u00eb vlefshme.';\n          return false;\n        }\n\n        const ann = kW * Ey;\n        const save = Math.min(ann, useCalc) * priceE;\n\n        const priceKwp = Number(priceKwpEl.value)||0;\n        const subsidy = Math.max(0, Math.min(100, Number($('pvw-subsidy').value)||0))\/100;\n\n        const gross = kW > 500 ? 0 : kW * priceKwp;\n        const net = gross * (1 - subsidy);\n        const payYears = save > 0 ? (net \/ save) : 0;\n\n        animateValue($('pvw-recKw'), kW, 1, 520, v => Number(v).toFixed(1));\n        animateValue($('pvw-annKwh'), ann, 0, 560, v => Math.round(v).toLocaleString('sq-AL'));\n        animateValue($('pvw-saveYear'), save, 0, 560, v => Math.round(v).toLocaleString('sq-AL'));\n        if(kW<=500){\n          animateValue($('pvw-costGross'), gross, 0, 580, v => Math.round(v).toLocaleString('sq-AL'));\n          animateValue($('pvw-costNet'), net, 1, 580, v => Number(v).toFixed(1));\n        }\n        $('pvw-payback').textContent = kW<=500 && save > 0 ? payYears.toFixed(1) : '\u2014';\n        if(kW>500){\n          $('pvw-costGross').rsAnimationToken=($('pvw-costGross').rsAnimationToken || 0)+1;\n          $('pvw-costNet').rsAnimationToken=($('pvw-costNet').rsAnimationToken || 0)+1;\n          $('pvw-costGross').textContent='\u2014';\n          $('pvw-costNet').textContent='\u2014';\n        }\n\n        $('pvw-debug').textContent = [\n          `${pvwI18n.coord || 'Koord'}: ${lat.toFixed(5)} ${lon.toFixed(5)}`,\n          `${pvwI18n.loss || 'Humbje'}: ${LOSS}%  ${pvwI18n.angle || 'K\u00ebnd'}: ${tilt}\u00b0  ${pvwI18n.az || 'Az'}: ${az}\u00b0 (aspect ${aspect})`,\n          `${pvwI18n.production_per_1kwp || 'Prodhim p\u00ebr 1 kWp'}: ${Math.round(Ey)} ${pvwI18n.kwh_year || 'kWh\/vit'}`,\n          `${pvwI18n.recommended_power || 'Fuqia rekomanduar'}: ${kW.toFixed(1)} kWp`,\n          `${(pvwI18n.annual_production || 'Prodhimi vjetor me %s kWp').replace('%s', kW.toFixed(1))}: ${Math.round(ann).toLocaleString('sq-AL')} kWh`,\n          `${pvwI18n.energy_price || '\u00c7mimi energjis\u00eb'}: ${priceE} \u20ac\/kWh (seg: ${segSel.value})`,\n          `${pvwI18n.price_per_kwp || '\u20ac\/kWp (tabela)'}: ${kW>500 ? (isEnglish ? 'Project-specific price \u2014 request a quote' : '\u00c7mim sipas projektit \u2014 k\u00ebrko ofert\u00eb') : priceKwp}`\n        ].join('\\n');\n        return kW>0 && [ann,save,gross,net].every(Number.isFinite);\n      }\n\n      const completed=update(recKwRound);\n      if(completed && usedTracked) window.rsSolarTrack?.('calculator_completed',{calculator_type:'pvgis'});\n      userKwEl.oninput = ()=> {\n        priceKwpEl.value=tierPriceKwp(userKwEl.value) ?? '';\n        update(userKwEl.value);\n      };\n      priceKwpEl.oninput = ()=> update(userKwEl.value);\n      $('pvw-subsidy').oninput = ()=> update(userKwEl.value);\n\n    }catch(e){\n      if(run!==calculationRun) return;\n      $('pvw-debug').textContent = (pvwI18n.pvgis_error || 'Gabim n\u00eb k\u00ebrkes\u00ebn PVGIS:') + ' ' + e.message;\n    }\n  }\n})();\n<\/script>\n  \n  <\/div>\n\n  <div class=\"solar-price-section\">\n    <h2>Sa mund t\u00eb kurseni me panele diellore?<\/h2>\n    <p>\n      Instalimi i paneleve diellore ju ndihmon t\u00eb ulni ndjesh\u00ebm kostot mujore t\u00eb energjis\u00eb dhe t\u00eb rrisni pavar\u00ebsin\u00eb energjetike.\n      N\u00eb shum\u00eb raste, investimi fillestar kthehet brenda disa viteve, nd\u00ebrsa sistemi vazhdon t\u00eb prodhoj\u00eb energji p\u00ebr nj\u00eb periudh\u00eb afatgjat\u00eb.\n    <\/p>\n    <ul>\n      <li>Ulje e fatur\u00ebs s\u00eb energjis\u00eb<\/li>\n      <li>Kursim afatgjat\u00eb p\u00ebr familje dhe biznese<\/li>\n      <li>Rritje e vler\u00ebs s\u00eb pron\u00ebs<\/li>\n      <li>Investim n\u00eb energji t\u00eb past\u00ebr dhe t\u00eb q\u00ebndrueshme<\/li>\n    <\/ul>\n  <\/div>\n\n  <div class=\"solar-price-section\">\n    <h2>Pse t\u00eb zgjidhni Real Solar?<\/h2>\n    <p>\n      Real Solar ofron projektim, instalim dhe mir\u00ebmbajtje t\u00eb sistemeve fotovoltaike n\u00eb Shqip\u00ebri, me fokus te cil\u00ebsia, siguria teknike dhe performanca afatgjat\u00eb.\n      Ne ju ndihmojm\u00eb t\u00eb kuptoni koston reale t\u00eb investimit dhe t\u00eb zgjidhni sistemin m\u00eb t\u00eb p\u00ebrshtatsh\u00ebm p\u00ebr objektin tuaj.\n    <\/p>\n  <\/div>\n\n  <div class=\"solar-price-section\">\n    <h2>Pyetje t\u00eb shpeshta p\u00ebr \u00e7mimin e paneleve diellore<\/h2>\n\n    <h3>A kan\u00eb t\u00eb gjith\u00eb t\u00eb nj\u00ebjtin \u00e7mim?<\/h3>\n    <p>\n      Jo. \u00c7mimi ndryshon sipas konsumit, madh\u00ebsis\u00eb s\u00eb sistemit dhe kushteve t\u00eb instalimit.\n    <\/p>\n\n    <h3>A mund t\u00eb marr nj\u00eb ofert\u00eb pa pages\u00eb?<\/h3>\n    <p>\n      Po. Ju mund t\u00eb na kontaktoni p\u00ebr nj\u00eb ofert\u00eb falas dhe nj\u00eb vler\u00ebsim t\u00eb personalizuar.\n    <\/p>\n\n    <h3>A ja vlen investimi n\u00eb panele diellore?<\/h3>\n    <p>\n      N\u00eb shumic\u00ebn e rasteve po, sepse sistemi ndihmon n\u00eb uljen e kostove t\u00eb energjis\u00eb dhe sjell kursim afatgjat\u00eb.\n    <\/p>\n\n    <h3>A mund t\u00eb instalohen p\u00ebr sht\u00ebpi dhe biznese?<\/h3>\n    <p>\n      Po. Ne ofrojm\u00eb zgjidhje si p\u00ebr objekte rezidenciale, ashtu edhe p\u00ebr biznese dhe nd\u00ebrtesa industriale.\n    <\/p>\n  <\/div>\n\n  <div class=\"solar-price-cta\">\n    <h2>K\u00ebrko ofert\u00eb t\u00eb personalizuar<\/h2>\n    <p>\n      D\u00ebshironi t\u00eb dini koston reale p\u00ebr sht\u00ebpin\u00eb ose biznesin tuaj? Kontaktoni Real Solar dhe merrni nj\u00eb ofert\u00eb falas p\u00ebr instalimin e paneleve diellore.\n    <\/p>\n    <div class=\"solar-price-actions\">\n      <a class=\"solar-price-btn\" href=\"\/kontakt\/\">K\u00ebrko ofert\u00eb<\/a>\n      <a class=\"solar-price-link\" href=\"\/projekt\/\">Shiko projektet<\/a>\n    <\/div>\n  <\/div>\n\n<\/section>\n\n<style>\n.solar-price-page{\n  max-width:1200px;\n  margin:0 auto;\n  padding:30px 16px 60px;\n  box-sizing:border-box;\n}\n\n.solar-price-intro{\n  max-width:950px;\n  margin:0 auto 34px;\n  text-align:center;\n}\n\n.solar-price-intro h1{\n  margin:0 0 16px;\n  font-size:clamp(34px,5vw,52px);\n  line-height:1.08;\n  font-weight:900;\n  color:#0f172a;\n}\n\n.solar-price-intro p{\n  margin:0;\n  font-size:19px;\n  line-height:1.75;\n  color:#374151;\n}\n\n.solar-price-section{\n  max-width:1000px;\n  margin:0 auto 28px;\n  background:#ffffff;\n  border:1px solid rgba(0,0,0,.06);\n  border-radius:20px;\n  padding:26px 24px;\n  box-shadow:0 14px 34px rgba(2,8,23,.05);\n}\n\n.solar-price-section h2{\n  margin:0 0 14px;\n  font-size:28px;\n  line-height:1.2;\n  color:#0f172a;\n  font-weight:800;\n}\n\n.solar-price-section h3{\n  margin:20px 0 8px;\n  font-size:20px;\n  color:#111827;\n  font-weight:800;\n}\n\n.solar-price-section p{\n  margin:0 0 14px;\n  font-size:17px;\n  line-height:1.75;\n  color:#374151;\n}\n\n.solar-price-section ul{\n  margin:0;\n  padding-left:22px;\n}\n\n.solar-price-section li{\n  margin:0 0 10px;\n  font-size:17px;\n  line-height:1.65;\n  color:#374151;\n}\n\n.solar-price-calc{\n  padding-bottom:10px;\n}\n\n.solar-price-cta{\n  max-width:1000px;\n  margin:10px auto 0;\n  text-align:center;\n  background:#ffffff;\n  border:1px solid rgba(0,0,0,.06);\n  border-radius:20px;\n  padding:30px 24px;\n  box-shadow:0 14px 34px rgba(2,8,23,.05);\n}\n\n.solar-price-cta h2{\n  margin:0 0 14px;\n  font-size:30px;\n  line-height:1.2;\n  color:#0f172a;\n  font-weight:900;\n}\n\n.solar-price-cta p{\n  max-width:860px;\n  margin:0 auto;\n  font-size:18px;\n  line-height:1.75;\n  color:#374151;\n}\n\n.solar-price-actions{\n  margin-top:22px;\n  display:flex;\n  justify-content:center;\n  gap:14px;\n  flex-wrap:wrap;\n}\n\n.solar-price-btn,\n.solar-price-link{\n  display:inline-flex;\n  align-items:center;\n  justify-content:center;\n  min-height:48px;\n  padding:13px 22px;\n  border-radius:14px;\n  text-decoration:none;\n  white-space:nowrap;\n  font-weight:800;\n  transition:all .2s ease;\n}\n\n.solar-price-btn{\n  background:#e11d48;\n  color:#fff;\n  box-shadow:0 12px 28px rgba(225,29,72,.22);\n}\n\n.solar-price-btn:hover{\n  transform:translateY(-2px);\n}\n\n.solar-price-link{\n  background:#fff;\n  color:#111827;\n  border:1px solid rgba(0,0,0,.12);\n}\n\n.solar-price-link:hover{\n  background:#f8fafc;\n}\n\n@media (max-width:640px){\n  .solar-price-page{\n    padding:22px 12px 40px;\n  }\n\n  .solar-price-intro p,\n  .solar-price-section p,\n  .solar-price-section li,\n  .solar-price-cta p{\n    font-size:16px;\n  }\n\n  .solar-price-section,\n  .solar-price-cta{\n    padding:20px 16px;\n    border-radius:16px;\n  }\n\n  .solar-price-actions{\n    flex-direction:column;\n  }\n\n  .solar-price-btn,\n  .solar-price-link{\n    width:100%;\n  }\n}\n<\/style>\n<\/div>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>REAL SOLAR | NATURAL ENERGY \u00c7mimi i paneleve diellore M\u00ebsoni faktor\u00ebt q\u00eb ndikojn\u00eb n\u00eb \u00e7mimin e nj\u00eb sistemi fotovoltaik dhe llogaritni kursimin e mundsh\u00ebm p\u00ebr sht\u00ebpin\u00eb ose biznesin tuaj. Llogarit kursimet K\u00ebrko ofert\u00eb falas<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"page-templates\/template-pagebuilder-full-width.php","meta":{"_uag_custom_page_level_css":"","neve_meta_sidebar":"full-width","neve_meta_container":"","neve_meta_enable_content_width":"on","neve_meta_content_width":100,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","_themeisle_gutenberg_block_has_review":false,"footnotes":""},"class_list":["post-2062","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"trp-custom-language-flag":false,"neve-blog":false},"uagb_author_info":{"display_name":"solar","author_link":"https:\/\/realsolar.al\/en\/author\/solar\/"},"uagb_comment_info":0,"uagb_excerpt":"REAL SOLAR | NATURAL ENERGY \u00c7mimi i paneleve diellore M\u00ebsoni faktor\u00ebt q\u00eb ndikojn\u00eb n\u00eb \u00e7mimin e nj\u00eb sistemi fotovoltaik dhe llogaritni kursimin e mundsh\u00ebm p\u00ebr sht\u00ebpin\u00eb ose biznesin tuaj. Llogarit kursimet K\u00ebrko ofert\u00eb falas","_links":{"self":[{"href":"https:\/\/realsolar.al\/en\/wp-json\/wp\/v2\/pages\/2062","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/realsolar.al\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/realsolar.al\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/realsolar.al\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/realsolar.al\/en\/wp-json\/wp\/v2\/comments?post=2062"}],"version-history":[{"count":6,"href":"https:\/\/realsolar.al\/en\/wp-json\/wp\/v2\/pages\/2062\/revisions"}],"predecessor-version":[{"id":2506,"href":"https:\/\/realsolar.al\/en\/wp-json\/wp\/v2\/pages\/2062\/revisions\/2506"}],"wp:attachment":[{"href":"https:\/\/realsolar.al\/en\/wp-json\/wp\/v2\/media?parent=2062"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}