/* Additions of the new platform to the styles of today's energys.gr (assets/css/site.css stays as it is).
   1. Page styles that were inline <style> blocks in the old templates (moved here for the Content-Security-Policy). */
/* about */
.energys-about{overflow-x:clip;background:#fff}.energys-about__hero{position:relative;isolation:isolate;display:flex;min-height:720px;align-items:center;overflow:hidden;padding:0;background:#051936;color:#fff}.energys-about__hero-media,.energys-about__hero-shade{position:absolute;inset:0}.energys-about__hero-media{z-index:-2}.energys-about__hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}.energys-about__hero-shade{z-index:-1;background:linear-gradient(90deg,rgba(4,20,49,.98) 0%,rgba(4,20,49,.9) 42%,rgba(4,20,49,.42) 72%,rgba(4,20,49,.16) 100%)}.energys-about__hero-grid{display:block;padding:88px 0}.energys-about__hero-copy{max-width:840px}.energys-about__hero h1{max-width:780px;margin:17px 0 22px;color:#fff;font-size:clamp(3rem,4.7vw,4.9rem)}.energys-about__hero-copy>p{max-width:720px;margin:0;color:#d3e0ef;font-size:1.05rem}.energys-about__hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:28px}.energys-about__partner-button{background:#16835f;color:#fff}.energys-about__partner-button:hover,.energys-about__partner-button:focus-visible{background:#0f684b;color:#fff}.energys-about__facts{display:grid;grid-template-columns:repeat(3,1fr);max-width:850px;margin-top:34px;border-top:1px solid rgba(255,255,255,.2)}.energys-about__facts div{padding:18px 18px 0 0}.energys-about__facts div+div{padding-left:18px;border-left:1px solid rgba(255,255,255,.18)}.energys-about__facts strong,.energys-about__facts span{display:block}.energys-about__facts strong{color:#fff;font-size:.9rem}.energys-about__facts span{margin-top:3px;color:#aebfd3;font-size:.75rem;line-height:1.4}
.energys-about__identity{padding:74px 0}.energys-about__identity-grid{display:grid;grid-template-columns:minmax(280px,.68fr) minmax(0,1.32fr);gap:68px;align-items:start}.energys-about__identity-heading{padding-top:2px}.energys-about__identity h2{max-width:480px;margin:14px 0 0;font-size:clamp(2.15rem,3.3vw,3.45rem);line-height:1.08}.energys-about__identity-copy{max-width:820px}.energys-about__identity-copy>p{margin:0;color:var(--muted);font-size:1rem}.energys-about__identity-copy>p:first-child{color:var(--navy);font-size:1.17rem;font-weight:650;line-height:1.65}.energys-about__identity-copy>p+p{margin-top:18px}
.energys-about__system{padding:76px 0;background:var(--soft)}.energys-about__section-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.7fr);gap:55px;align-items:end;margin-bottom:32px}.energys-about__section-head h2{margin:10px 0 0}.energys-about__section-head p{margin:0;color:var(--muted)}.energys-about__flow{display:grid;grid-template-columns:repeat(4,1fr);background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 14px 38px rgba(7,31,73,.07)}.energys-about__flow article{min-height:205px;padding:27px 24px;border-right:1px solid var(--line)}.energys-about__flow article:last-child{border-right:0}.energys-about__flow span{display:block;margin-bottom:28px;color:var(--blue);font-size:.74rem;font-weight:800;letter-spacing:.1em}.energys-about__flow h3{margin-bottom:9px}.energys-about__flow p{margin:0;color:var(--muted);font-size:.86rem}
.energys-about__services{padding:78px 0}.energys-about__service-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.energys-about__service{display:flex;min-height:330px;flex-direction:column;align-items:flex-start;padding:36px;border:1px solid var(--line);border-radius:19px;background:#fff}.energys-about__service--primary{border-color:#0b3a70;background:linear-gradient(135deg,#061a3b,#0b3d78);color:#fff}.energys-about__service>span{color:var(--orange);font-size:.74rem;font-weight:800;letter-spacing:.11em}.energys-about__service h2{margin:22px 0 14px;font-size:clamp(2rem,3vw,3.2rem)}.energys-about__service--primary h2{color:#fff}.energys-about__service p{max-width:620px;margin:0 0 27px;color:var(--muted)}.energys-about__service--primary p{color:#cfdaea}.energys-about__service .button{margin-top:auto}
.energys-about__scope{padding:0 0 78px}.energys-about__scope-panel{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid var(--line);border-radius:18px;overflow:hidden}.energys-about__scope-title{padding:38px;background:#eef5fb}.energys-about__scope-title h2{margin:12px 0 0;font-size:clamp(2rem,3.4vw,3.4rem)}.energys-about__scope-list{background:#fff}.energys-about__scope-list article{display:grid;grid-template-columns:165px 1fr;gap:28px;padding:25px 32px;border-bottom:1px solid var(--line)}.energys-about__scope-list article:last-child{border-bottom:0}.energys-about__scope-list strong{color:var(--navy)}.energys-about__scope-list p{margin:0;color:var(--muted);font-size:.9rem}
.energys-about__credentials{padding:34px 0 76px}.energys-about__credential-grid{display:grid;grid-template-columns:1.2fr .8fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.energys-about__credential-grid div{padding:27px 30px 27px 0}.energys-about__credential-grid div+div{padding-left:30px;border-left:1px solid var(--line)}.energys-about__credential-grid span,.energys-about__credential-grid strong{display:block}.energys-about__credential-grid span{margin-bottom:7px;color:var(--blue);font-size:.7rem;font-weight:800;letter-spacing:.1em}.energys-about__credential-grid strong{color:var(--navy);line-height:1.45}
@media(max-width:1050px){.energys-about__identity-grid{gap:45px}.energys-about__flow{grid-template-columns:1fr 1fr}.energys-about__flow article:nth-child(2){border-right:0}.energys-about__flow article:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:820px){.energys-about__hero{min-height:680px}.energys-about__hero-grid{padding:72px 0}.energys-about__hero-shade{background:linear-gradient(90deg,rgba(4,20,49,.97),rgba(4,20,49,.68))}.energys-about__identity-grid,.energys-about__section-head,.energys-about__scope-panel{grid-template-columns:1fr}.energys-about__hero-copy>p{font-size:1rem}.energys-about__identity,.energys-about__system,.energys-about__services{padding:62px 0}.energys-about__identity-grid{gap:27px}.energys-about__identity h2{max-width:660px}.energys-about__section-head{gap:18px}.energys-about__service-grid{grid-template-columns:1fr}.energys-about__service{min-height:300px}.energys-about__scope{padding-bottom:64px}.energys-about__credential-grid{grid-template-columns:1fr}.energys-about__credential-grid div+div{padding-left:0;border-left:0;border-top:1px solid var(--line)}}
@media(max-width:560px){.energys-about__hero{min-height:650px;align-items:flex-end}.energys-about__hero-media img{object-position:62% center}.energys-about__hero-shade{background:linear-gradient(0deg,rgba(4,20,49,.98) 15%,rgba(4,20,49,.72) 74%,rgba(4,20,49,.38))}.energys-about__hero-grid{padding:68px 0 58px}.energys-about__hero h1{font-size:2.65rem}.energys-about__hero-actions{display:grid}.energys-about__facts{grid-template-columns:1fr}.energys-about__facts div,.energys-about__facts div+div{padding:13px 0;border-left:0;border-bottom:1px solid rgba(255,255,255,.14)}.energys-about__facts div:last-child{border-bottom:0}.energys-about__flow{grid-template-columns:1fr}.energys-about__flow article{min-height:0;border-right:0;border-bottom:1px solid var(--line)}.energys-about__flow article:nth-child(2){border-bottom:1px solid var(--line)}.energys-about__flow article:last-child{border-bottom:0}.energys-about__flow span{margin-bottom:16px}.energys-about__service{min-height:0;padding:28px 23px}.energys-about__scope-title{padding:30px 24px}.energys-about__scope-list article{grid-template-columns:1fr;gap:7px;padding:22px 24px}.energys-about__credentials{padding-top:15px}.energys-about__credential-grid div{padding:23px 0}}
/* partner */
.partner-page{overflow-x:clip;background:#fff}.partner-hero{position:relative;isolation:isolate;display:flex;min-height:640px;align-items:center;overflow:hidden;background:#061a3b;color:#fff}.partner-hero__media,.partner-hero__shade{position:absolute;inset:0}.partner-hero__media{z-index:-2}.partner-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center}.partner-hero__shade{z-index:-1;background:linear-gradient(90deg,rgba(4,20,49,.99) 0%,rgba(4,20,49,.93) 38%,rgba(4,20,49,.48) 66%,rgba(4,20,49,.08) 100%)}.partner-hero__content{padding:88px 0}.partner-hero h1{max-width:830px;margin:17px 0 22px;color:#fff;font-size:clamp(3rem,5vw,5.25rem)}.partner-hero__content>p{max-width:760px;margin:0;color:#d5e2f0;font-size:1.08rem}.partner-hero__content>.button{margin-top:30px}.partner-main{padding:88px 0;background:linear-gradient(180deg,#f5f9fc,#fff)}.partner-main__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}.partner-main__copy h2{margin:13px 0 17px}.partner-main__copy>p{color:var(--muted)}.partner-benefits{display:grid;gap:11px;margin:28px 0}.partner-benefits article{padding:17px 18px;border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:12px;background:#fff}.partner-benefits strong,.partner-benefits span{display:block}.partner-benefits strong{color:var(--navy);font-size:.9rem}.partner-benefits span{margin-top:4px;color:var(--muted);font-size:.78rem;line-height:1.5}.partner-form-column{display:grid;gap:18px}.partner-form-intro{margin-bottom:22px}.partner-form-intro h2{margin:13px 0 17px}.partner-form-intro p{margin:0;color:var(--muted)}.partner-form{padding:34px}.partner-form>.button{min-width:220px}
@media(max-width:920px){.partner-main__grid{grid-template-columns:1fr;gap:38px}.partner-main__copy{max-width:760px}.partner-form{width:100%}}
@media(max-width:680px){.partner-hero{min-height:690px;align-items:flex-end}.partner-hero__media img{object-position:70% center}.partner-hero__shade{background:linear-gradient(0deg,rgba(4,20,49,.99) 15%,rgba(4,20,49,.8) 72%,rgba(4,20,49,.32))}.partner-hero__content{padding:68px 0 56px}.partner-hero h1{font-size:2.65rem}.partner-hero__content>p{font-size:.98rem}.partner-hero__content>.button{width:100%}.partner-main{padding:58px 0}.partner-main__grid{gap:30px}.partner-form{padding:24px 19px}.partner-form>.button{width:100%}}
/* control */
.control-hero{position:relative;isolation:isolate;overflow:hidden;background:#061a3b}
.control-hero__media,.control-hero__shade{position:absolute;inset:0;pointer-events:none}
.control-hero__media{z-index:-2}
.control-hero__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.control-hero__shade{z-index:-1;background:linear-gradient(90deg,rgba(3,19,45,.96) 0%,rgba(3,24,55,.88) 45%,rgba(3,24,55,.67) 100%)}
.control-hero > .container{position:relative;z-index:1}
@media screen and (min-width:1181px){
  #main.energys-control-page > .section{padding-top:56px;padding-bottom:56px}
}
@media screen and (max-width:680px){
  .control-hero__media img{object-position:64% center}
  .control-hero__shade{background:linear-gradient(180deg,rgba(3,19,45,.94) 0%,rgba(3,24,55,.86) 48%,rgba(3,24,55,.72) 100%)}
}
/* referrals */
@media screen and (min-width:1181px){
  #main.referral-page > .section{padding-top:56px;padding-bottom:56px}
}

/* 2. Inline style="" attributes of the old templates, as classes. */
.field[hidden]{display:none}
.hero-actions.hero-actions--form{margin-top:20px}
.referral-why-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px}
.referral-why-card{background:var(--navy,#061a3b);color:#fff;border-radius:16px;padding:28px}
.referral-why-card .eyebrow{color:var(--cyan,#55d9eb)}
.referral-why-card h3{color:#fff;margin:14px 0 12px}
.referral-why-card p{color:#e0e8f2;margin:0}
.yde-form .field>small.yde-help{font-size:12px}
.yde-same-address.yde-request-panel{margin-top:12px}
.yde-request-steps{display:grid;gap:6px;margin:8px 0 0;padding-left:1.3em;color:var(--muted);font-size:.86rem;line-height:1.45}.yde-request-steps li::marker{color:var(--navy);font-weight:800}
.yde-request-panel .check.yde-request-consent{margin-top:12px;margin-bottom:18px}
.yde-same-address small.yde-request-note{display:block;margin-top:12px}
.yde-col-22{width:22%}.yde-col-15-5{width:15.5%}.yde-col-14{width:14%}.yde-col-10{width:10%}.yde-col-23{width:23%}

/* 3. New parts of the platform, in the style of the site. */
.control-member-card{max-width:760px}
.control-member-card h3{margin:0 0 8px;color:var(--navy)}
.control-member-card p{margin:0 0 18px;color:var(--muted)}
.catalog-tools[hidden]{display:none}
.price-row[data-kva-hidden="1"]{display:none}

/* Plan details: popup and /programmata/{slug}/ */
.plan-details__title{margin:22px 0 10px;color:var(--navy);font-size:1rem}
.plan-details__note{margin:10px 0 0;color:var(--muted);font-size:.78rem}
.plan-details__source{margin:14px 0 0;color:var(--muted);font-size:.82rem;font-weight:700}
/* «Χαρακτηριστικά προγράμματος ↗»: small and light, an orange outline; it opens the plan's page. */
.history-modal__page{display:inline-flex;align-items:center;gap:6px;min-height:40px;margin:0 0 16px;padding:8px 14px;border:1.5px solid var(--orange);border-radius:10px;background:#fff;color:#b85f0c;font-size:.84rem;font-weight:800}
.history-modal__page:hover{background:#fff6ed}
.history-modal__page:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.history-modal__page[hidden]{display:none}
.history-modal .table-wrap,.program-page .table-wrap{overflow-x:auto}
.history-modal .table,.program-page .table{width:100%;border-collapse:collapse;font-size:.86rem;font-variant-numeric:tabular-nums}
.history-modal .table th,.history-modal .table td,.program-page .table th,.program-page .table td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:left}
.history-modal .table .num,.program-page .table .num{text-align:right;white-space:nowrap}
.history-modal .table thead th,.program-page .table thead th{color:#738095;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase}
.history-modal .muted,.program-page .muted{color:var(--muted);font-size:.78rem}
.chart{margin:0}
.chart svg{display:block;width:100%;height:auto}
.chart-grid{stroke:var(--line);stroke-width:1}
.chart-axis{fill:#738095;font-size:11px;font-family:inherit}
.chart-line{fill:none;stroke:#0c67b9;stroke-width:2.5}
.chart-dot{fill:#fff;stroke:#0c67b9;stroke-width:2.5}
.chart-hit{fill:transparent}
.chart-point:focus{outline:none}
.chart-point:focus .chart-dot,.chart-point:hover .chart-dot{fill:#0c67b9}
.chart-tip{position:fixed;z-index:1000;display:grid;gap:2px;width:max-content;max-width:220px;padding:8px 10px;border:1px solid #d5dde5;border-radius:10px;background:#fff;box-shadow:0 8px 24px rgba(7,31,73,.16);color:#071f49;font-size:.78rem;line-height:1.35;pointer-events:none}.chart-tip strong{text-transform:capitalize}
.chart-hint--touch{display:none}
@media(hover:none){.chart-hint--pointer{display:none}.chart-hint--touch{display:inline}}
.disclosure{margin-top:12px}
.disclosure summary{cursor:pointer;color:#0b589b;font-weight:700;font-size:.86rem}
.program-hero{padding:48px 0 40px;background:var(--soft);border-bottom:1px solid var(--line)}
.program-hero h1{margin:8px 0 12px;font-size:clamp(2.1rem,4vw,3.6rem)}
.program-hero p{max-width:760px;margin:0;color:var(--muted)}
.program-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:32px;align-items:center}
.program-hero__identity{display:flex;gap:22px;align-items:flex-start}
/* The provider's logo on nothing: no frame, no background. */
.program-hero__logo{flex:none;display:block;width:auto;height:auto;max-width:150px;max-height:56px;object-fit:contain}
.program-hero__price{display:grid;gap:4px;padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}
.program-hero__price span,.program-hero__price small{color:var(--muted);font-size:.78rem}
.program-hero__price strong{color:var(--navy);font-size:2rem;line-height:1.1;font-variant-numeric:tabular-nums}
.program-hero__price .button{margin-top:12px}
.program-cta{display:flex;margin-top:12px}
.program-band .plan-cart{background:#fff;color:var(--navy)}.program-band .plan-cart:hover{background:#e8f1fb}
.section.program-facts-section{padding:32px 0 0}
.program-facts{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.program-facts article{display:grid;gap:4px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}
.program-facts span{color:var(--blue);font-size:.7rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.program-facts strong{color:var(--navy);font-size:1.15rem;font-variant-numeric:tabular-nums}
.program-facts small{color:var(--muted);font-size:.78rem;line-height:1.4}
.section.program-main{padding:32px 0 72px}
.program-column{display:grid;grid-template-columns:minmax(0,1fr);gap:22px;min-width:0}
.program-calculator h2,.program-card__title{margin:6px 0 16px;font-size:1.4rem}
.program-calculator__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:16px;align-items:end}
.program-calculator__result{display:grid;gap:2px;padding:10px 14px;border-radius:12px;background:#eef7ff}
.program-calculator__result span{color:var(--muted);font-size:.75rem}
.program-calculator__result strong{color:var(--navy);font-size:1.35rem;font-variant-numeric:tabular-nums}
.program-kva h2{margin:6px 0 16px;font-size:1.4rem}
.program-kva .program-calculator__row{grid-template-columns:minmax(0,1fr) auto}
.program-kva__result{margin:14px 0 0;padding:12px 14px;border-radius:12px;background:#fff4e8;color:#8a4a0b;font-weight:700}
.program-kva__result.is-fit{background:#eefbf3;color:#17663a}
.program-kva__result a{color:inherit}
.program-aside{display:grid;gap:18px;position:sticky;top:96px}
.program-suits .check-list{margin:10px 0 0}
.program-suits .check-list li{color:var(--muted);font-size:.9rem;line-height:1.5}
.section.program-faq,.section.program-similar{padding:64px 0}
.program-faq h2,.program-similar h2{margin:8px 0 22px;font-size:clamp(1.6rem,2.6vw,2.4rem)}
.program-faq__list{display:grid;gap:10px;max-width:900px}
.program-faq__item{border:1px solid var(--line);border-radius:14px;background:#fff}
.program-faq__item summary{cursor:pointer;padding:16px 18px;color:var(--navy);font-weight:800}
.program-faq__item p{margin:0;padding:0 18px 16px;color:var(--muted)}
.program-similar__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.program-similar__card{display:grid;gap:6px;align-content:start;padding:22px;border:1px solid var(--line);border-radius:16px;background:#fff;color:var(--ink);text-decoration:none}
.program-similar__card:hover,.program-similar__card:focus-visible{border-color:var(--blue)}
.program-similar__card img{width:auto;max-width:120px;max-height:36px;object-fit:contain;margin-bottom:6px}
.program-similar__card strong{color:var(--navy)}
.program-similar__card span{color:var(--muted);font-size:.8rem}
.program-similar__card em{color:var(--navy);font-style:normal;font-weight:800;font-variant-numeric:tabular-nums}
.program-band{padding:48px 0;background:var(--navy);color:#fff}
.program-band__inner{display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between}
.program-band h2{margin:8px 0 0;color:#fff;font-size:clamp(1.5rem,2.6vw,2.3rem)}
.program-breadcrumbs{margin-bottom:14px;color:var(--muted);font-size:.8rem}
.program-breadcrumbs a{color:inherit}
.program-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:28px;align-items:start}
.program-card .plan-info-points{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.program-card .plan-info-points li{position:relative;margin:0;padding:10px 12px 10px 34px;border-radius:11px;background:#f7f9fc;color:#40556d;line-height:1.45}
.program-card .plan-info-points li::before{content:"✓";position:absolute;left:12px;top:10px;color:#17803d;font-weight:800}
.program-card .plan-info-points li.is-highlight{background:#eef7ff;color:#14365d;font-weight:750}
.program-card .plan-info-points li.is-consistency{background:#eefbf3;color:#17663a;font-weight:750}
.program-aside .form-card{display:grid;gap:12px}
.program-aside h2{margin:0;font-size:1.35rem}
.program-aside p{margin:0;color:var(--muted)}
@media(max-width:1100px){.program-facts{grid-template-columns:repeat(3,1fr)}}
@media(max-width:920px){.program-grid,.program-hero__grid{grid-template-columns:minmax(0,1fr)}.program-aside{position:static;grid-template-columns:minmax(0,1fr);min-width:0}.program-similar__grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.program-facts{grid-template-columns:1fr 1fr}.program-calculator__row{grid-template-columns:minmax(0,1fr)}.program-similar__grid{grid-template-columns:1fr}.program-hero__identity{flex-direction:column}}

/* All plans: /timokatalogoi/ (filters in one bar, a card per plan) */
.programs-hero{padding:48px 0 36px;background:var(--soft);border-bottom:1px solid var(--line)}
.programs-hero h1{margin:8px 0 12px;font-size:clamp(2.1rem,4vw,3.6rem)}
.programs-hero p{max-width:760px;margin:0;color:var(--muted)}
.programs-hero .programs-hero__updated{display:inline-block;margin-top:16px;padding:8px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--navy);font-size:.86rem;font-weight:800}
.programs-section{padding:32px 0 80px}
.programs-filters{display:grid;grid-template-columns:max-content max-content minmax(0,1fr) minmax(0,1fr) auto;gap:16px 20px;align-items:end;padding:18px 20px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}
.programs-filters>*{min-width:0}
.programs-filter{display:grid;gap:6px;margin:0;padding:0;border:0}
.programs-filter[hidden],.programs-filters__submit[hidden]{display:none}
.programs-filter legend,.programs-filter>label{padding:0;margin-bottom:6px;color:var(--navy);font-size:.78rem;font-weight:800}
.programs-filter select,.programs-filter input{width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #cbd7e2;border-radius:12px;background:#fff;color:var(--ink);font-size:.95rem;text-overflow:ellipsis}
.programs-choice{display:flex;gap:4px;padding:4px;border-radius:12px;background:var(--soft)}
.programs-choice label{position:relative;flex:1 0 auto;min-width:0}
.programs-choice input{position:absolute;opacity:0;pointer-events:none}
.programs-choice span{display:flex;align-items:center;justify-content:center;min-height:40px;padding:4px 12px;border-radius:9px;color:#304158;font-size:.86rem;font-weight:800;line-height:1.2;text-align:center;white-space:nowrap;cursor:pointer}
.programs-choice input:checked+span{background:var(--navy);color:#fff}
.programs-choice input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.programs-results{margin-top:24px}
.programs-results[aria-busy="true"]{opacity:.55;transition:opacity .15s}
.programs-count{margin:0 0 14px;color:var(--muted);font-size:.86rem;font-weight:700}
.programs-status{margin:0 0 14px;padding:12px 14px;border-radius:12px;background:#eef7ff;color:#14365d;font-weight:700}
.programs-empty{padding:28px;border:1px dashed var(--line);border-radius:16px;color:var(--muted);text-align:center}
.programs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:18px}
.programs-card{display:grid;grid-template-rows:auto auto 1fr auto;gap:14px;min-width:0;padding:20px;border:1px solid var(--line);border-top:4px solid #0c67b9;border-radius:18px;background:#fff}
.programs-card--yellow{border-top-color:#f1c735}
.programs-card--gas{border-top-color:#268f57}
.programs-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.programs-card__logo{display:flex;align-items:center;min-height:40px}
.programs-card__logo img{width:auto;max-width:120px;max-height:40px;object-fit:contain}
.programs-card__kind{flex:none;padding:3px 10px;border-radius:999px;background:var(--soft);color:#304158;font-size:.72rem;font-weight:800}
.programs-card__name{margin:0;font-size:1.15rem;line-height:1.3;letter-spacing:-.01em;overflow-wrap:anywhere}
.programs-card__name a:hover,.programs-card__name a:focus-visible{color:var(--blue)}
.programs-card__facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0}
.programs-card__facts div{display:grid;gap:2px;align-content:start;padding:10px 12px;border-radius:12px;background:#f7f9fc}
.programs-card__facts dt{color:var(--muted);font-size:.72rem;font-weight:700}
.programs-card__facts dd{margin:0;color:var(--navy);font-weight:800;line-height:1.3;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.programs-card__facts small{display:block;margin-top:4px;line-height:1.35;color:var(--muted);font-size:.72rem;font-weight:600}
.programs-card__price dd{font-size:1.2rem}
.programs-card__estimate{background:#eef7ff!important}
.programs-card__actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.programs-card__actions .button{min-height:46px;padding-inline:10px;font-size:.86rem;line-height:1.2;text-align:center}
.programs-card__actions .button:only-child{grid-column:1/-1}
@media(max-width:1100px){.programs-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:1100px) and (min-width:681px){.programs-choice{width:max-content;max-width:100%}}
@media(max-width:680px){.programs-choice label{flex:1 1 0}.programs-choice span{padding-inline:6px;font-size:.8rem;white-space:normal;overflow-wrap:anywhere}.programs-hero{padding:32px 0 26px}.programs-section{padding:22px 0 60px}.programs-filters{grid-template-columns:minmax(0,1fr);padding:16px}.programs-card{padding:16px}}

/* Online switch: /allagi-paroxou/?programma={slug} */
.switch-flow{padding:56px 0 80px;background:var(--soft)}
.switch-flow__grid{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:28px;align-items:start}
.switch-flow__main{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;min-width:0}
.switch-plan{position:sticky;top:96px;display:grid;gap:14px;padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}
.switch-plan__head{display:grid;gap:10px}
.switch-plan__head img{width:auto;max-width:120px;max-height:40px;object-fit:contain}
.switch-plan__head strong{display:block;color:var(--navy);font-size:1.2rem;line-height:1.25}
.switch-plan__head span{color:var(--muted);font-size:.82rem}
.switch-plan__facts{display:grid;gap:8px;margin:0}
.switch-plan__facts div{display:flex;justify-content:space-between;gap:12px;padding:9px 12px;border-radius:11px;background:#f7f9fc}
.switch-plan__facts dt{color:var(--muted);font-size:.8rem}
.switch-plan__facts dd{margin:0;color:var(--navy);font-weight:800;font-variant-numeric:tabular-nums;white-space:nowrap}
.switch-plan__links{margin:0;color:var(--muted);font-size:.82rem}
.switch-plan__links a{color:var(--blue)}
.switch-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}
.switch-steps li{display:flex;align-items:center;gap:10px;min-width:0;overflow-wrap:anywhere;color:var(--muted);font-size:.86rem;font-weight:700}
.switch-steps span{display:inline-flex;flex:none;align-items:center;justify-content:center;width:30px;height:30px;border:2px solid var(--line);border-radius:50%;background:#fff;color:var(--muted);font-size:.8rem}
.switch-steps .is-active{color:var(--navy)}
.switch-steps .is-active span{border-color:var(--navy);color:var(--navy)}
.switch-steps .is-done span{border-color:#17803d;background:#17803d;color:#fff}
.switch-progress{height:6px;border-radius:99px;background:var(--line);overflow:hidden}
.switch-progress span{display:block;height:100%;border-radius:99px;background:#17803d;transition:width .3s ease}
.switch-progress--1{width:33%}.switch-progress--2{width:66%}.switch-progress--3{width:100%}
.switch-notice{margin:0;padding:12px 16px;border:1px solid #b8e0c6;border-radius:12px;background:#eefbf3;color:#17663a;font-weight:700}
/* «Έκανες πολύ καλή επιλογή ✓»: right after «Αλλαγή σε 1′», on the first step of the application (ARCHITECTURE.md, section 18). */
.switch-good-choice{display:grid;gap:2px;margin:0 0 16px;padding:12px 16px;border:1px solid #b8e0c6;border-radius:12px;background:#eefbf3;color:#17663a;line-height:1.4}.switch-good-choice strong{font-size:1.05rem}.switch-good-choice span{color:var(--navy);font-weight:700;overflow-wrap:anywhere}
.switch-form h2,.switch-done h2{margin:6px 0 10px;font-size:clamp(1.5rem,2.4vw,2rem)}
.switch-form__intro{margin:0 0 18px;color:var(--muted)}
.control-bill__row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.control-bill__row input{flex:1 1 200px;min-width:0}.control-bill__hint{display:block;margin-top:6px;color:var(--muted)}.control-suggest{margin:8px 0 0;padding:8px 12px;border-left:3px solid var(--orange);background:var(--soft);overflow-wrap:anywhere}.control-invite{display:grid;gap:8px;margin:0 0 18px}.control-invite div{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.control-invite dt{color:var(--muted)}.control-invite dd{margin:0;font-weight:600;text-align:right;overflow-wrap:anywhere}
.switch-form .form-grid{margin-bottom:18px}
.switch-form .field input,.switch-form .field select{min-height:48px}
.switch-form .field[hidden],.switch-form .check[hidden],.switch-doc[hidden]{display:none!important}
.switch-form .button{min-height:52px}
.field-error{display:block;margin-top:6px;color:#b42318;font-size:.8rem;font-weight:700}
.field input[aria-invalid="true"]{border-color:#b42318}
.switch-code input{max-width:220px;font-size:1.5rem;letter-spacing:.3em;text-align:center}
.switch-code{margin-bottom:16px}
.switch-form__links{display:flex;flex-wrap:wrap;gap:6px 20px;margin-top:14px}
.switch-form__links form{margin:0}
.switch-link{min-height:44px;padding:0;border:0;background:none;color:var(--blue);font:inherit;font-size:.86rem;font-weight:700;text-decoration:underline;cursor:pointer}
.switch-verified{display:inline-block;margin-left:6px;color:#17663a;font-weight:700}
.switch-choice{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px;padding:0;border:0}
.switch-choice legend{width:100%;margin-bottom:8px;color:var(--navy);font-size:.8rem;font-weight:800}
.switch-choice__option{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 16px;border:1px solid #cbd7e2;border-radius:12px;background:#fff;color:var(--navy);font-weight:700;cursor:pointer}
.switch-choice__option:has(input:checked){border-color:var(--navy);box-shadow:inset 0 0 0 1px var(--navy);background:#f4f9ff}
.switch-choice__option input{width:18px;height:18px;margin:0;accent-color:var(--navy)}
.switch-docs__title{margin:6px 0 4px;color:var(--navy);font-size:1.1rem}
.switch-docs__hint{margin:0 0 14px;color:var(--muted);font-size:.82rem}
.switch-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:18px}
.switch-doc{display:grid;gap:8px;align-content:start;padding:14px;border:1px dashed #b9c8d6;border-radius:14px;background:#fbfdff}
.switch-doc.is-filled{border-style:solid;border-color:#7cc596;background:#f3fbf6}
.switch-doc label{color:var(--navy);font-size:.86rem;font-weight:800}
.switch-doc__badge{display:inline-block;margin-left:6px;padding:1px 8px;border-radius:99px;background:#eef3f8;color:var(--muted);font-size:.7rem;font-weight:700}
.switch-doc.is-required .switch-doc__badge{background:#fff1e3;color:#9a4f0b}
.switch-doc input{width:100%;min-width:0;max-width:100%;font-size:.82rem}
.switch-doc__hint{color:var(--muted);font-size:.75rem;line-height:1.4}
.switch-doc__state{color:#17663a;font-size:.8rem;font-weight:700;overflow-wrap:anywhere}
.switch-terms{margin:4px 0 14px}
.switch-done{text-align:center}
.switch-done__check{display:inline-flex;align-items:center;justify-content:center;width:88px;height:88px;margin-bottom:12px;border-radius:50%;background:#17803d;color:#fff;font-size:3rem;font-weight:900}
.switch-done p{max-width:620px;margin:0 auto 12px;color:var(--muted)}
.switch-done .hero-actions{justify-content:center;margin-top:18px}
/* On a phone nothing is wider than the screen: the boxes may narrow below their content (a file button, a long option,
   an email address) instead of pushing the page sideways (CLAUDE.md, rule 7; tests/Browser/mobile-width.mjs).
   A select keeps the text of a long option inside its box: WebKit (every browser on iPhone) lets it widen the page. */
.switch-form .form-grid>*,.switch-docs>*,.switch-doc>*,.switch-plan>*{min-width:0}
select{max-width:100%;contain:paint}
.switch-form select{width:100%;min-width:0;text-overflow:ellipsis}
.switch-form__intro,.switch-done p,.switch-plan__head{overflow-wrap:anywhere}
/* 16px in the fields: with smaller text the iPhone zooms in on a tap and the page stays wider than the screen. */
.switch-form input:not([type=file]):not([type=radio]):not([type=checkbox]),.switch-form select,.switch-form textarea{font-size:16px}
@media(max-width:920px){.switch-flow__grid{grid-template-columns:minmax(0,1fr)}.switch-plan{position:static}}
@media(max-width:680px){.switch-flow{padding:32px 0 56px}.switch-docs{grid-template-columns:minmax(0,1fr)}.switch-steps li{flex-direction:column;align-items:flex-start;gap:4px;font-size:.76rem}.switch-form .button{width:100%}.switch-choice__option{flex:1 1 100%}}

.switch-supply{display:grid;gap:4px;margin:0 0 18px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fbfdff;min-width:0}
.switch-supply__title{padding:0 6px;color:var(--navy);font-weight:800}
.switch-supply__remove{justify-self:end;margin-top:-8px}
.switch-supply__plan{margin:0;padding:12px 13px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--navy);font-weight:700}
.switch-supply__notice{display:block;margin-top:6px;color:#9a4f0b;font-size:.8rem;font-weight:700}
.switch-supply__notice[hidden]{display:none}
.switch-choice__legend{width:100%;margin-bottom:8px;color:var(--navy);font-size:.8rem;font-weight:800}
.switch-add{margin:0 0 22px}
.switch-add[hidden]{display:none}
/* The new logo sits in exactly the box of the old one (1057×350), so nothing around it moves. */
.brand img,.footer-logo img,.personal-card__brand img{aspect-ratio:1057/350;object-fit:contain;object-position:left center}
.footer-logo img{object-position:center}

/* A card inside a card (/istoriko-timon/, 404): on a phone the double padding left no room for a long word
   («χρησιμοποιείται») and the page became wider than the screen. */
@media(max-width:680px){.content:not(.content-card){padding:28px 0;margin:28px auto}.content>.content-card{margin:0 auto;padding:24px 18px}}

/* 16px in every form field of the site on a phone, upright or sideways (low screen): with smaller text the iPhone
   zooms in on a tap and the page stays wider than the screen. Approved exception to «the site stays 100% the same», as
   a fix (tests/Browser/mobile-width.mjs). */
@media(max-width:680px),(max-width:932px) and (max-height:500px){
  body input:not([type=file]):not([type=radio]):not([type=checkbox]):not([type=range]),body select,body textarea{font-size:16px!important}
}

/* Αξιολόγηση λογαριασμού (/aksiologisi/): τα βήματα στη θέση του σημερινού ασφαλούς ανεβάσματος. */
.evaluation-flow{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;max-width:760px;margin:0 auto;min-width:0}

/* Καμπάνιες & Συνεργασίες (/synergasies/{slug}/): νέα σελίδα στην ταυτότητα του site, «ENERGYS × συνεργάτης»,
   η προσφορά, 3 βήματα· με ?tablet=1 η οθόνη της υποδοχής με μεγάλα κουμπιά και QR. */
.campaign-hero{background:linear-gradient(135deg,#061a3b,#0b3d78);color:#fff;padding:84px 0 92px}
.campaign-hero__grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:56px;align-items:center}
.campaign-hero__copy{min-width:0;max-width:820px}
.campaign-hero h1{color:#fff;margin:14px 0 18px}
.campaign-hero p{color:#dce9f8;font-size:1.12rem;max-width:680px}
.campaign-lockup{display:inline-flex;flex-wrap:wrap;align-items:center;gap:14px 18px;max-width:100%;margin-bottom:30px;padding:14px 22px;border-radius:18px;background:#fff;box-shadow:var(--shadow)}
.campaign-lockup__energys{width:170px;height:auto}
.campaign-lockup__x{color:var(--orange);font-size:2rem;font-weight:800;line-height:1}
.campaign-lockup__partner{max-height:52px;max-width:180px;width:auto;height:auto;object-fit:contain}
.campaign-lockup__name{color:var(--navy);font-size:1.35rem;font-weight:800;letter-spacing:-.02em;overflow-wrap:anywhere}
.campaign-offer{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 12px;margin:6px 0 26px;padding:16px 20px;border-radius:16px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08)}
.campaign-offer strong{color:#fff;font-size:1.3rem;font-weight:800}
.campaign-offer span{color:#dce9f8}
.campaign-cta{min-height:56px;padding:14px 30px;font-size:1.08rem}
.campaign-qr{display:flex;flex-direction:column;align-items:center;gap:8px;width:280px;padding:24px;border-radius:22px;background:#fff;color:var(--navy);text-align:center}
.campaign-qr__code svg{width:220px;height:220px;display:block}
.campaign-qr span{color:var(--muted);font-size:.9rem}
.campaign-steps__grid article strong{color:var(--orange)}
.campaign-bottom{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:36px}
.campaign-terms{margin:0;color:var(--muted);font-size:.9rem}
.campaign-page--tablet .campaign-hero{min-height:100vh;display:flex;align-items:center;padding:48px 0}
.campaign-page--tablet .campaign-cta{min-height:76px;padding:20px 48px;font-size:1.45rem;border-radius:18px}
.campaign-page--tablet .campaign-steps{display:none}
@media(max-width:920px){.campaign-hero{padding:56px 0 64px}.campaign-hero__grid{grid-template-columns:minmax(0,1fr);gap:32px}.campaign-qr{width:100%;max-width:320px}}
@media(max-width:520px){.campaign-lockup{padding:12px 16px;gap:10px 12px}.campaign-lockup__energys{width:132px}.campaign-lockup__partner{max-width:130px;max-height:40px}.campaign-cta{width:100%}}

/* Newsletter (ARCHITECTURE.md, section 11): the sign-up at the end of the articles and of «Ενημέρωση». */
.newsletter-signup{max-width:720px;margin:40px auto 0}.newsletter-signup h2{margin:0 0 8px;color:var(--navy);font-size:clamp(1.35rem,2.4vw,1.7rem)}.newsletter-signup p{margin:0 0 18px;color:var(--muted)}
/* «Στείλε μου αυτή τη σύγκριση» (ARCHITECTURE.md, section 17): only in «Σύγκριση», closed until opened, without JavaScript. */
.send-results{margin:22px 0 0;border:1px solid var(--line);border-radius:16px;background:#fff}.send-results__open{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px 18px;color:var(--navy);font-weight:800}.send-results__open::-webkit-details-marker{display:none}.send-results__open:after{content:'+';font-size:1.3rem;line-height:1;color:var(--blue)}.send-results[open] .send-results__open:after{content:'−'}.send-results__form{padding:0 18px 18px}.send-results__form>p{margin:0 0 14px;color:var(--muted)}.send-results__form .button{margin-top:16px}

/* The plans of the price list between a phone and a computer (a phone held sideways, a tablet): the six columns do not
   fit, and the name of the plan was squeezed to a letter a line. The logo on the left, the name over the whole width,
   the price, the fee, the cost and the button under it (ARCHITECTURE.md, section 18). */
@media(min-width:681px) and (max-width:1180px){
  .price-row{grid-template-columns:110px repeat(3,minmax(0,1fr)) auto;overflow:visible}
  .price-provider{grid-row:1/3}
  .price-program{grid-column:2/-1;min-width:0}
}

/* The footer, aligned at every width (owner's request after staging): the columns start on the same line, the links
   keep the same rhythm, the brand takes its own row where four columns do not fit, and the bottom line keeps clear of
   the button of «Βοηθός ENERGYS». */
.footer-grid{align-items:start}
.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:11px;min-width:0}
.footer-grid h2{margin:0 0 5px;font-size:.9rem;line-height:1.2}
.footer-grid>div>a{margin:0;line-height:1.45}
.footer-brand .footer-logo{margin:0}
.footer-brand p,.footer-brand .footer-gemi{margin:0}
.footer-brand .socials{margin-top:6px}
.footer-bottom{align-items:center;padding-right:72px}
.footer-bottom nav{flex-wrap:wrap;gap:8px 18px}
@media(max-width:1180px){
  .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 32px}
  .footer-grid>.footer-brand{grid-column:1/-1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px 28px}
  .footer-grid>div:last-child{grid-column:auto}
  .footer-brand .footer-gemi{grid-column:1;grid-row:2}
  .footer-brand p:not(.footer-gemi){grid-column:2;grid-row:1/3}
  .footer-brand .socials{grid-column:3;grid-row:1/3;margin:0}
}
@media(max-width:680px){
  .footer-grid>.footer-brand{grid-template-columns:minmax(0,1fr);gap:12px}
  .footer-brand .footer-gemi,.footer-brand p:not(.footer-gemi),.footer-brand .socials{grid-column:1;grid-row:auto}
  .footer-bottom{flex-direction:column;align-items:flex-start;padding-right:0;padding-bottom:84px}
}
@media(max-width:480px){
  .footer-grid{grid-template-columns:minmax(0,1fr);gap:30px}
}
/* Σελίδα παρόχου /paroxoi/{slug}/ (Εργασία 18): στο ύφος της σελίδας προγράμματος. */
.provider-notice{margin-bottom:28px;border-left:4px solid var(--orange,#f28c28)}.provider-notice h2{font-size:1.15rem;margin:0 0 8px}.provider-notice p{margin:0;color:var(--muted)}
.provider-group{margin:0 0 32px}.provider-group>h2{font-size:1.25rem;margin:0 0 14px}
.program-facts-section h2.eyebrow{display:block;margin:0 0 14px}
/* «Στείλε» of a plan, in the popup and on its page: small, in the colours of ENERGYS. */
.plan-share{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 14px;border:1.5px solid var(--line);border-radius:999px;background:#fff;color:var(--navy);font-size:.86rem;font-weight:800;cursor:pointer}.plan-share:hover{border-color:var(--navy)}.plan-share:focus-visible{outline:3px solid var(--blue);outline-offset:2px}.plan-share-row{display:flex;justify-content:flex-end;margin:-6px 0 10px}.plan-share__copy{position:fixed;left:-9999px;top:0}
/* «Προσοχή: οι τιμές είναι τελικές…» with the bulb, in bold, without a box; in Commissioner, since in Manrope the «η»
   looks like an «n» and «παραπλανητικές» reads wrong. */
.final-prices{display:flex;gap:8px;align-items:flex-start;margin:14px 0;color:var(--navy);font-family:'Commissioner',sans-serif;font-size:.9rem;line-height:1.45}.final-prices strong{font-weight:700}.final-prices .badge-icon{flex:0 0 auto;width:20px;height:20px;margin-top:1px;color:var(--orange)}
