/* Extracted from approved homepage; navigation and footer only. */
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:400 700;
  font-display:swap;
  src:url("/assets/fonts/inter-latin.woff2") format("woff2");
  unicode-range:U+0-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Manrope";
  font-style:normal;
  font-weight:400 800;
  font-display:swap;
  src:url("/assets/fonts/manrope-latin.woff2") format("woff2");
  unicode-range:U+0-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:"Montserrat";
  font-style:normal;
  font-weight:500 900;
  font-display:swap;
  src:url("/assets/fonts/montserrat-latin.woff2") format("woff2");
  unicode-range:U+0-FF,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root{--green-900:#004959;--green-800:#003e4a;--green-700:#0b6870;--teal:#0b6870;--lime:#aec35b;--orange:#0b6870;--orange-dark:#004959;--cream:#f4f8ee;--cream-2:#e3efdf;--paper:#fffdf7;--ink:#173d49;--muted:#536c70;--text-muted:var(--muted);--line:rgba(0,73,89,.12);--shadow:0 20px 58px rgba(0,73,89,.10);}
.brand-nav{position:sticky;top:0;z-index:999;padding:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);box-shadow:0 10px 30px rgba(0,73,89,.06);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);}
.nav-logo-wrap{display:flex;align-items:center;min-width:0;border-radius:0;background:transparent;padding:0;box-shadow:none;}
.nav-logo-wrap img{width:auto;max-width:min(250px,40vw);object-fit:contain;}
.nav-links{display:flex;align-items:center;list-style:none;}
.nav-links a{font-family:"Manrope",Arial,sans-serif;font-weight:800;color:#26392e;text-transform:uppercase;transition:opacity .2s,color .2s,background .2s;}
.nav-links a:hover{opacity:1;color:var(--green-700);}
.nav-links .nav-cta-lnk{opacity:1;}
.nav-menu-toggle{display:none;width:44px;height:44px;flex:0 0 auto;align-items:center;justify-content:center;flex-direction:column;gap:5px;border:1px solid rgba(0,73,89,.12);border-radius:14px;background:#fffdf7;color:var(--green-900);box-shadow:0 10px 26px rgba(0,73,89,.08);cursor:pointer;}
.nav-menu-toggle span{width:20px;height:2px;border-radius:999px;background:currentColor;transition:transform .2s ease,opacity .2s ease;}
body.nav-open .nav-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
body.nav-open .nav-menu-toggle span:nth-child(2){opacity:0;}
body.nav-open .nav-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.brand-footer{padding:52px 5% 28px;background:linear-gradient(180deg,#10331f 0%,#003e4a 100%);}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;}
.ft-brand{display:inline-flex;align-items:center;width:min(235px,72vw);margin-bottom:18px;padding:8px 10px;border-radius:12px;background:rgba(255,253,247,.96);box-shadow:inset 0 1px 0 rgba(255,255,255,.72),0 14px 34px rgba(0,0,0,.18);}
.ft-brand img{display:block;width:100%;height:auto;object-fit:contain;}
.ft-desc,.ft-links a{font-size:.87rem;line-height:1.7;color:rgba(245,241,232,.72);}
.ft-col-title{margin-bottom:18px;font-family:"Montserrat","Manrope",Arial,sans-serif;font-size:.72rem;font-weight:800;color:var(--lime);letter-spacing:.1em;text-transform:uppercase;}
.ft-links{list-style:none;}
.ft-links li{margin-bottom:9px;}
.ft-links a:hover{color:var(--lime);}
.soc-row{display:flex;gap:10px;margin-top:20px;}
.soc-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:rgba(255,255,255,.07);font-family:"Montserrat","Manrope",Arial,sans-serif;font-size:.72rem;font-weight:800;color:rgba(245,241,232,.50);}
.soc-btn:hover{background:var(--green-700);color:#fff;}
.ft-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid rgba(255,255,255,.06);padding-top:24px;}
.ft-copy,.ft-copy a{font-size:.78rem;color:rgba(245,241,232,.56);}
@media (max-width:1024px){.nav-links{gap:18px;}
.footer-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:1320px) and (min-width:761px){.brand-nav{padding-left:3%;padding-right:3%;gap:12px;}
.nav-links{gap:13px;}
.nav-links a{font-size:.72rem;}}
@media (max-width:760px){.nav-logo-wrap img{height:36px;max-width:220px;}
.nav-links{position:fixed;left:0;right:0;z-index:998;display:grid;grid-template-columns:1fr;gap:0;max-height:calc(100vh - 72px);overflow:auto;padding:12px 5% 18px;border-bottom:1px solid rgba(0,73,89,.12);background:rgba(255,253,247,.98);box-shadow:0 22px 54px rgba(0,73,89,.16);transform:translateY(-12px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,transform .2s ease,visibility .2s ease;}
.nav-links li{border-bottom:1px solid rgba(0,73,89,.08);}
.nav-links li:last-child{border-bottom:0;padding-top:10px;}
.nav-links a{min-height:48px;display:flex;align-items:center;justify-content:space-between;font-size:.86rem;opacity:1;}
.nav-links .nav-cta-lnk{justify-content:center;margin-top:4px;}
body.nav-open{overflow:hidden;}
body.nav-open .nav-links{transform:translateY(0);opacity:1;visibility:visible;pointer-events:auto;}
.nav-menu-toggle{display:flex;}}
.brand-nav{height:76px;padding-right:4%;padding-left:4%;gap:24px;background:rgba(255,253,247,.94);}
.nav-logo-wrap img{height:40px;}
.nav-links{margin-left:auto;gap:24px;}
.nav-links a{font-size:.75rem;letter-spacing:.035em;opacity:.88;}
@media (max-width:1100px){.brand-nav{padding-right:3%;padding-left:3%;gap:14px;}
.nav-links{gap:14px;}
.nav-links a{font-size:.7rem;}}
@media (max-width:820px){.brand-nav{height:72px;}
.nav-links{top:72px;}}
@media (max-width:640px){.footer-grid{grid-template-columns:1fr;}}
.problem-index .brand-nav{position:static;display:flex;min-height:0;flex-wrap:wrap;gap:8px;padding:0;background:transparent;box-shadow:none;}
.problem-index .brand-nav a{padding:10px 13px;border:1px solid rgba(0,73,89,.14);border-radius:8px;background:#fff;color:var(--green-900);font-weight:800;}
@media (max-width:640px){.problem-index .brand-nav{align-items:stretch;}
.problem-index .brand-nav a{width:100%;}}
@media (min-width:761px){.brand-nav{height:76px;padding-right:4%;padding-left:4%;gap:24px;}
.nav-links{margin-left:auto;gap:24px;}
.nav-links a{font-size:.75rem;}}
@media (max-width:1100px) and (min-width:761px){.brand-nav{padding-right:3%;padding-left:3%;gap:14px;}
.nav-links{gap:14px;}
.nav-links a{font-size:.7rem;}}
@media (max-width:760px){.brand-nav{height:72px;}
.nav-links{top:72px;}}
@media (min-width:1101px){.brand-nav{display:grid;grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr);align-items:center;}
.nav-logo-wrap{grid-column:1;justify-self:start;}
.nav-links{grid-column:2;margin:0;justify-self:center;}
.nav-menu-toggle{grid-column:3;justify-self:end;}}
.blog-index-page .brand-nav,.article-page .brand-nav{border-bottom:1px solid rgba(0,73,89,.09);box-shadow:none;}
.ft-ai-note{flex-basis:100%;margin:6px 0 0;color:rgba(255,255,255,.58);font-size:.7rem;line-height:1.5;}

:root{--green-900:#004959;--green-800:#003e4a;--green-700:#0b6870;--teal:#0b6870;--lime:#aec35b;--orange:#0b6870;--orange-dark:#004959;--cream:#e3f0ec;--cream-2:#c4e0de;--paper:#fcfdf9;--ink:#173d49;--muted:#536c70;--line:rgba(0,73,89,.14);--shadow:0 18px 60px rgba(0,73,89,.08);--lumi-nav:76px;}
body>.brand-nav{height:76px;min-height:76px;background:rgba(250,253,248,.96);border-bottom:1px solid var(--line);box-shadow:none;backdrop-filter:blur(16px);z-index:1000;}
body>.brand-nav .nav-logo-wrap img{width:210px;height:auto;}
body>.brand-nav .nav-links{gap:22px;}
body>.brand-nav .nav-links a{font-family:Manrope,Inter,sans-serif;font-weight:700;}
body .brand-footer{background:#003e4a;color:#eef6ef;}
.brand-footer .ft-col-title{color:#dbe9bc;}
.lumi-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #004959;}
.lumi-button span{font-size:19px;}
@media (max-width:1050px) and (min-width:761px){body>.brand-nav .nav-links{gap:14px;}
body>.brand-nav .nav-logo-wrap img{width:175px;}}
@media (max-width:760px){:root{--lumi-nav:64px;}
body>.brand-nav{height:64px;min-height:64px;padding-top:0;padding-bottom:0;}
body>.brand-nav .nav-logo-wrap img{width:175px;}
body>.brand-nav .nav-links{gap:4px;}
.lumi-button{font-size:11px;}}
.pe-bill .lumi-button{text-decoration:none!important;}
:root{--pe-ink:#004959;--pe-accent:#5a883b;--pe-soft:#e7f1e5;--store-ink:var(--pe-ink);--store-muted:#536f70;--store-cream:#f6faf3;--store-line:var(--pe-line);--store-orange:var(--pe-ink);--store-orange-dark:#0b6870;}
:root{--pe-space:clamp(28px,5vw,64px);}
body .brand-footer:not(.pe-constellation-foot){background:linear-gradient(105deg,#003e4af2,#004959da),url("/assets/lumi/sky-liguria.webp") center/cover;}
.soc-row .soc-btn{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #d7e6d64d;border-radius:50%;background:#ffffff0a;color:#eff6e8;transition:background .2s,transform .2s;}
.soc-row .soc-btn svg{width:22px;height:22px;fill:currentColor;}
.soc-row .soc-btn:hover{background:#ffffff20;transform:translateY(-2px);}
:root{--pe-page-gutter:max(24px,calc((100% - 1140px)/2));--pe-paper:#fcfdf8;--pe-line:#cbdccf;--pe-radius:18px;--pe-sky:linear-gradient(110deg,#f5f8ec60,#e1efeb15),url("/assets/lumi/sky-liguria.webp") center/cover;}
@media (max-width:760px){.lumi-explanation .lumi-button{font-size:11px;}}
@media (max-width:760px) and (max-height:570px){.lumi-story.is-animated .lumi-explanation:last-child .lumi-button{font-size:10px;}}

:root{--pe-page-gutter:max(24px,calc((100% - 1140px)/2));}
@media (min-width:761px) and (max-width:1050px){.pe-featured-offer>.lumi-button{justify-self:start;}}
@media (max-width:760px){.pe-featured-offer>.lumi-button{justify-self:start;}}
.pe-place-links .lumi-button{font-size:11px;}
@media (max-width:760px){.pe-place-links .lumi-button{font-size:10px;}}
:root{--pe-petrol:#004959;--pe-teal:#0b6870;--pe-lime:#aec35b;--pe-mist:#e3f0ec;--pe-paper:#fcfdf8;--pe-ink:#173d49;--pe-rule:#c4d6cd;--pe-gutter:clamp(20px,4vw,48px);--pe-measure:1140px;--pe-corner:7px 22px 7px 22px;--pe-action-shape:7px 20px 7px 20px;--pe-page-gutter:max(var(--pe-gutter),calc((100% - var(--pe-measure))/2))}
:root body.pe-site .pe-action:disabled,:root body.pe-site .pe-action[aria-disabled=true]{opacity:.55;cursor:not-allowed;box-shadow:none}
.pe-site .nav-links .nav-cta-lnk{min-height:44px;padding:10px 16px 10px 39px;font-size:11px;white-space:nowrap;opacity:1}
.pe-site .nav-cta-lnk::before{width:16px;height:16px;left:12px}
.pe-site .mobile-action-bar .pe-action{min-height:44px;padding:10px 10px 10px 33px;font-size:11px;flex:1}
.pe-site .mobile-action-bar .pe-action::before{left:9px;width:16px;height:16px}
.pe-site .soc-btn{border-radius:12px 18px 12px 18px;background:#ffffff0a;border-color:#dbe8d750}
.pe-site .soc-btn:hover,.pe-site .soc-btn:focus-visible{background:#ffffff22;box-shadow:0 0 18px #e6edbb26}
.pe-site>.brand-nav{padding-inline:var(--pe-page-gutter)}
.footer-grid{width:100%;max-width:var(--pe-measure);margin-inline:auto}
.pe-site .brand-footer:not(.pe-constellation-foot){padding-inline:var(--pe-page-gutter)}
:root body.pe-site.offers-page .pe-catalog .pe-shop-actions .pe-action{font-size:12px;padding:11px 13px 11px 39px}
:root body.pe-site.offers-page .pe-catalog .pe-shop-actions .pe-action::before{width:17px;height:17px;left:11px}
@media(min-width:761px) and (max-width:1050px){.pe-site>.brand-nav{padding-inline:24px}
.pe-site .nav-links{gap:13px}
.pe-site .nav-links a{font-size:10px}}
@media(max-width:760px){:root{--pe-gutter:22px}
.pe-site .pe-place-links .pe-action{font-size:10px;min-height:40px;padding:9px 11px 9px 32px}
.pe-site .pe-place-links .pe-action::before{width:15px;height:15px;left:9px}}
@media(prefers-reduced-motion:reduce){:root body.pe-site .pe-action,:root body.pe-site .pe-action::before{transition:none}}
@media(prefers-reduced-motion:no-preference){}
@media(prefers-reduced-motion:reduce){}
.ft-links a:focus-visible{outline:2px solid currentColor;outline-offset:5px;border-radius:3px}
.pe-site .nav-links a:not(.pe-action){position:relative}
.pe-site .nav-links a:not(.pe-action)::after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:2px;background:linear-gradient(90deg,#70a798,#c7d587);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.pe-site .nav-links a:not(.pe-action):is(:hover,:focus-visible)::after{transform:scaleX(1)}
.pe-site .nav-links a[aria-current]{color:var(--pe-teal)}
@media(max-width:760px){.pe-site .nav-links a:not(.pe-action)::after{bottom:0;right:auto;width:35px}}
@media(prefers-reduced-motion:reduce){.pe-site .nav-links a::after{transition:none}}
.pe-site>.brand-footer{position:relative;isolation:isolate;background:radial-gradient(ellipse at 85% 0,#6398854a,transparent 58%),#003e4a}
.pe-site>.brand-footer::before{content:'';position:absolute;top:0;left:var(--pe-page-gutter);right:var(--pe-page-gutter);height:1px;background:linear-gradient(90deg,#a5c78933,#eff4c4b3,#a5c78933);pointer-events:none}
.pe-site>.brand-footer::after{content:'';position:absolute;right:0;bottom:0;width:min(65%,600px);height:180px;z-index:-1;opacity:.16;background:url('/assets/brand/orizzonte-punto-energia.svg?v=r22') right bottom/contain no-repeat;pointer-events:none}
.blog-question-cta>.pe-action{grid-column:3}
.pe-context-close>.pe-action{grid-column:2;grid-row:1}
@media(max-width:1050px){.pe-context-close>.pe-action{grid-column:1;grid-row:2;justify-self:start}
.blog-question-cta>.pe-action{grid-column:1;justify-self:start}}
@media(max-width:760px){.pe-context-close>.pe-action{grid-row:2}
.pe-landing-page .gh-call-primary.pe-action{flex-direction:row;align-items:center}}

/* Shared shell: consistent link treatment and keyboard focus on every template. */
.brand-nav a,.brand-footer a{text-decoration:none}.brand-footer a:hover{text-decoration:underline;text-underline-offset:4px}.brand-nav a:focus-visible,.brand-footer a:focus-visible,.brand-nav button:focus-visible{outline:2px solid currentColor;outline-offset:5px}.brand-nav .nav-links,.brand-footer .ft-links{padding-left:0}.brand-footer .ft-links{margin-top:0}.brand-nav .nav-cta-lnk{color:#fffdf1}.brand-footer .ft-copy,.brand-footer .ft-copy a,.brand-footer .ft-ai-note{color:#d0e0d6}
