/* Home desktop: neutral daylight, clear product photography and cool section colors. */
@media (min-width:1001px) {
  body.hero-art.home-polished {
    --home-ink:#142d4e;
    --home-blue:#165fc4;
    --home-paper:#f7fbff;
    --forest:#22547e;
    --forest-dark:#153b5a;
    --cream:#e5f1ff;
    --leaf:#328b83;
    --line:#cfdfeb;
    --paper:#f8fbff;
    --day-ink:#23342f;
    --day-copy:#526159;
    --day-line:#cfdfec;
    background:#fafbf9;
    color:var(--day-ink);
  }
  .hero-art.home-polished :focus-visible { outline-color:#2876aa; }
  .hero-art.home-polished main :is(.button-blue,.button-green) { color:#fff; background:#165fc4; border-color:#165fc4; }
  .hero-art.home-polished main :is(.button-blue,.button-green):hover { background:#10499b; border-color:#10499b; }
  .hero-art.home-polished main :is(h2,h3,h4) { color:var(--day-ink); }
  .hero-art.home-polished main .section-label { color:#34744f; }
  .hero-art.home-polished main .section-label::before { background:#7aab53; }
  .hero-art.home-polished .text-link { color:#286441; }

  /* Neutral masks protect copy; the rooftop detail stays visible and unfiltered. */
  .hero-art.home-polished .hero { background:#e8f3ff; }
  .hero-art.home-polished .hero-backdrop::after {
    background:radial-gradient(ellipse at 50% 26%,#ffffffc4 0%,#ffffff8c 32%,#ffffff24 64%,transparent 83%),radial-gradient(ellipse 170px 245px at 7% 44%,#ffffffa6 0%,#ffffff40 55%,transparent 100%);
  }
  .hero-art.home-polished .hero h1 { color:#102c50; text-shadow:none; }
  .hero-art.home-polished .hero h1 span { color:#075bc5; }
  .hero-art.home-polished .hero .hero-description { color:#355975; }
  .hero-art.home-polished .hero-eyebrow { background:#f8fcfff2; border-color:#d0e2f0; color:#436783; box-shadow:none; }
  .hero-art.home-polished .hero-search { background:#fcfeff; border-color:#d7e7f4; box-shadow:0 8px 22px #153e6412; }
  .hero-art.home-polished .hero-search .button { color:#fff; background:#165fc4; }
  .hero-art.home-polished .hero-search .button:hover { background:#10499b; }
  .hero-art.home-polished .hero-search input::placeholder { color:#526d83; }
  .hero-art.home-polished .hero-benefits .benefits-intro { color:#355d7a; border-color:#4689ba; }
  .hero-art.home-polished .benefit-icon { background:#f7fcff; box-shadow:0 3px 12px #17496b0a; }
  .hero-art.home-polished .hero-note { color:#356c96; }
  .hero-art.home-polished .hero-note span { border-color:#6ba2c5; }
  .hero-art.home-polished .hero-category:nth-child(n) { background:#f8fcff; color:var(--day-ink); border-color:#d2e3ef; box-shadow:0 5px 16px #183c5c0c; }
  .hero-art.home-polished .hero-category[data-shop='inverters'] { background:#eaf4ff; }
  .hero-art.home-polished .hero-category[data-shop='batteries'] { background:#e6f6ee; border-color:#c6e5d4; }
  .hero-art.home-polished .hero-category[data-shop='mounting'] { background:#fff0ed; border-color:#f3d9d1; }
  .hero-art.home-polished .hero-category[data-shop='accessories'] { background:#f0edfb; border-color:#ded7f0; }
  .hero-art.home-polished .hero-category img,
  .hero-art.home-polished .catalog-photo img { mix-blend-mode:normal; filter:none; opacity:1; }
  .hero-art.home-polished .hero-category:hover { border-color:#7ca8c9; box-shadow:0 8px 22px #183c5c1c; }
  .hero-art.home-polished .category-copy small { color:#45647c; }
  .hero-art.home-polished .category-arrow { background:#dcedfa; color:#255c87; }
  .hero-art.home-polished .hero-trust-wrap { background:#fff; border-color:#e2e8e3; }
  .hero-art.home-polished .hero-trust > div { color:#325342; }
  .hero-art.home-polished .hero-trust > div + div { border-color:#d6e4ee; }
  .hero-art.home-polished .hero-trust .icon,
  .hero-art.home-polished .trust-note { color:#347285; }
  .hero-art.home-polished .hero-trust small { color:#526c80; }
  .hero-art.home-polished .trust-note::after { border-color:#66a9be; }

  /* Equipment stays true to its source colors on neutral photo stages. */
  .hero-art.home-polished .shop-section { background:linear-gradient(105deg,#fffffffa,#fafcf8f2),url('/assets/home-visuals/solar-cells.svg') right top / 660px no-repeat,#fafcf9; }
  .hero-art.home-polished .category-nav { background:none; border:0; box-shadow:none; }
  .hero-art.home-polished .category-nav .category:nth-child(n) { background:#fff; color:#245184; border-color:#d7e2f0; }
  .hero-art.home-polished .category-nav .category[data-category='batteries'] { background:#e5f5eb; color:#256844; border-color:#c7e3d2; }
  .hero-art.home-polished .category-nav .category[data-category='mounting'] { background:#fff0ec; color:#a83f2c; border-color:#f0d6ce; }
  .hero-art.home-polished .category-nav .category[data-category='accessories'] { background:#f0ebfa; color:#694299; border-color:#dfd2ef; }
  .hero-art.home-polished .category-nav .category.active { color:#fff; background:#165fc4; border-color:#165fc4; }
  .hero-art.home-polished .catalogue-heading h3 { color:var(--day-ink); }
  .hero-art.home-polished .filter-tabs button { color:#426681; }
  .hero-art.home-polished .filter-tabs button.active { background:#245e91; color:#f8fcff; }
  .hero-art.home-polished .filter-tabs button:hover:not(.active) { background:#dfedf8; border-color:#bfd8ea; }
  .hero-art.home-polished .catalog-card:nth-child(n) { background:#fff; border-color:#dce5de; box-shadow:0 3px 12px #25392a06; }
  .hero-art.home-polished .catalog-card:hover { border-color:#729fc0; box-shadow:0 9px 24px #21476614; }
  .hero-art.home-polished .catalog-card:nth-child(n) .catalog-photo { background:#fff; border:1px solid #edf2f6; }
  .hero-art.home-polished .catalog-copy .product-brand { color:#4b6c84; }
  .hero-art.home-polished .catalog-copy h3 { color:#1b3e5a; }
  .hero-art.home-polished .catalog-copy .catalog-price { color:#205883; }
  .hero-art.home-polished .catalog-card-bottom { border-color:#dce8f1; }
  .hero-art.home-polished .catalog-card-bottom .add-product { color:#245e91; background:#e7f2fb; }
  .hero-art.home-polished .catalogue-note { color:#536e83; }
  .hero-art.home-polished .expert-strip { background:#e2f3e8; border:1px solid #c4e2cf; }
  .hero-art.home-polished .expert-strip :is(p,.icon,.text-link) { color:#285b40; }
  .hero-art.home-polished .brand-rail { border-color:#b9d5e7; }
  .hero-art.home-polished .brand-pause { color:#355f7d; border-color:#b9d1e3; background:#f8fcff; }

  /* Purpose and services: cool blue and true mint, without yellow undertones. */
  .hero-art.home-polished .home-company { background:linear-gradient(100deg,#fff3efed,#ffe6dbe0),url('/assets/hero-visuals/about-generated.png') center 70% / cover; }
  .hero-art.home-polished .home-company::before { background-image:url('/assets/home-visuals/energy-lines.svg'); opacity:.13; }
  .hero-art.home-polished .home-company .section-label { color:#b13b26; }
  .hero-art.home-polished .home-company h2 { color:#293b32; }
  .hero-art.home-polished .home-company > div > p,
  .hero-art.home-polished .home-company .vision-grid p { color:#46657b; }
  .hero-art.home-polished .vision-grid > div { border-color:#edcfc5; }
  .hero-art.home-polished .vision-grid h3 { color:#a13c28; }
  /* One inset photographic card gives the three figures equal visual weight. */
  .hero-art.home-polished .published-figures {
    --figure-ink:#f5fbf3;
    --figure-label:#d9eddd;
    --figure-divider:#c2e3cc40;
    width:calc(100% - var(--home-inset) - var(--home-inset));
    max-width:1280px;
    margin:40px auto 56px;
    padding:44px clamp(30px,3.5vw,52px);
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:0;
    border:1px solid #59896b;
    border-radius:32px;
    overflow:hidden;
    background:linear-gradient(100deg,#163f30f2 0%,#21543ddb 55%,#2b6641c9 100%),url('/assets/hero-visuals/about-generated.png') center 82% / cover;
    box-shadow:0 14px 32px #1c4a2c12;
  }
  .hero-art.home-polished .published-figures > div {
    min-width:0;
    padding:8px 0;
    gap:12px;
    align-items:flex-start;
  }
  .hero-art.home-polished .published-figures > div + div {
    padding-left:clamp(30px,3.5vw,52px);
    border-left:1px solid var(--figure-divider);
  }
  .hero-art.home-polished .published-figures > div:nth-child(n) > strong {
    color:var(--figure-ink);
    font-size:clamp(48px,4.5vw,64px);
    line-height:1.05;
    font-weight:500;
    letter-spacing:-.035em;
    font-variant-numeric:lining-nums tabular-nums;
  }
  .hero-art.home-polished .published-figures span {
    color:var(--figure-label);
    font-size:14px;
    line-height:1.5;
    font-weight:500;
    letter-spacing:.01em;
  }
  .hero-art.home-polished .solutions-section { background:linear-gradient(110deg,#edf8efed,#d5ecdbe3),url('/assets/hero-visuals/solutions-generated.png') center 70% / cover; }
  .hero-art.home-polished .solutions-section .section-label { color:#287046; }
  .hero-art.home-polished .solutions-section::before { opacity:.16; }
  .hero-art.home-polished .solutions-intro > p { color:#45677b; }
  .hero-art.home-polished .solutions-intro figcaption { background:#e8f5fa; color:#315f7a; }
  .hero-art.home-polished .service-row { background:#f8fcff; border-color:#c5dfe6; }
  .hero-art.home-polished .service-row:first-child { background:#d4ecd9; border-color:#b9d9c1; }
  .hero-art.home-polished .service-row:nth-child(3) { background:#226244; border-color:#226244; }
  .hero-art.home-polished .service-row:nth-child(5) { background:#fff0ec; border-color:#eccfc5; }
  .hero-art.home-polished .service-row h3 { color:#294834; }
  .hero-art.home-polished .service-row :is(p,.service-number) { color:#46687b; }
  .hero-art.home-polished .service-row:nth-child(3) :is(h3,p,.service-number) { color:#e8f4fc; }
  .hero-art.home-polished .service-row > .icon { background:#fff; color:#41734c; }

  .hero-art.home-polished .planner-section { background:linear-gradient(105deg,#09264ded 0%,#103b6ed9 48%,#16467d9c 100%),url('/assets/hero-visuals/solutions-generated.png') center 75% / cover; color:#fff; }
  .hero-art.home-polished .planner-section::before { background-image:url('/assets/home-visuals/energy-lines.svg'); opacity:.22; }
  .hero-art.home-polished .planner-intro h2 { color:#fff; }
  .hero-art.home-polished .planner-intro :is(p,.light-link) { color:#dbeaff; }
  .hero-art.home-polished .planner-intro .section-label { color:#a1cbff; }
  .hero-art.home-polished .planner-intro .section-label::before { background:#8ebf50; }
  .hero-art.home-polished .planner-intro .light-link:hover { color:#fff; }
  .hero-art.home-polished .planner-card { background:#fbfdff; border-color:#c9dfef; box-shadow:0 12px 30px #1d507811; }
  .hero-art.home-polished .planner-card > label,
  .hero-art.home-polished .usage-number > output { color:#274f6c; }
  .hero-art.home-polished .planner-card > label > span,
  .hero-art.home-polished .usage-number > span,
  .hero-art.home-polished .range-labels,
  .hero-art.home-polished .planner-card > .small,
  .hero-art.home-polished .estimate-assumptions { color:#526e83; }
  .hero-art.home-polished .estimate-result { background:#e2f3e8; color:#2b6445; }
  .hero-art.home-polished .estimate-result :is(strong,.icon) { color:#256546; }
  .hero-art.home-polished .planner-card input[type=range]::-webkit-slider-runnable-track { background:linear-gradient(to right,#3680b4 var(--range-progress,24.3%),#dce9f3 var(--range-progress,24.3%)); }
  .hero-art.home-polished .planner-card input[type=range]::-webkit-slider-thumb { border-color:#296ca0; box-shadow:0 2px 6px #235a851f; }
  .hero-art.home-polished .planner-card input[type=range]::-moz-range-progress { background:#3680b4; }
  .hero-art.home-polished .planner-card input[type=range]::-moz-range-thumb { border-color:#296ca0; }

  /* The original project photographs remain untouched and fill their existing frames. */
  .hero-art.home-polished .projects-section { background:linear-gradient(110deg,#f9fbf6f5,#e9f1e3e8),url('/assets/company/ff5401479a49424e.jpeg') center / cover; }
  .hero-art.home-polished .projects-section::before { background-image:url('/assets/home-visuals/energy-lines.svg'); opacity:.14; }
  .hero-art.home-polished #projects .project-card:nth-child(n) { background:#fff; border-color:#d7e1d5; }
  .hero-art.home-polished #projects .project-card:nth-child(2) { background:#e8f5f2; border-color:#c6e1dc; }
  .hero-art.home-polished #projects .project-card:nth-child(3) { background:#fff0eb; border-color:#edcfc5; }
  .hero-art.home-polished #projects .project-card:nth-child(n) h3 { color:#214e70; }
  .hero-art.home-polished #projects .project-card:nth-child(n) :is(p,.project-photo-count) { color:#47687e; border-color:#c5dce8; }
  .hero-art.home-polished #projects :is(.project-tag,.round-arrow) { background:#f7fcff; color:#24547c; }
  .hero-art.home-polished #projects .project-teaser:nth-child(n) { background:#fff; border-color:#d7e1d5; }
  .hero-art.home-polished #projects .project-teaser:nth-child(2n) { background:#fff0e9; border-color:#edcec0; }
  .hero-art.home-polished #projects .project-teaser:nth-child(n) h3 { color:#244d6b; }
  .hero-art.home-polished #projects :is(.project-teaser-type,.project-teaser-link) { color:#456b85; border-color:#c6dce9; }
  .hero-art.home-polished .process-list { background:#dcebd3; }
  .hero-art.home-polished .process-list li + li { border-color:#bbd3b5; }
  .hero-art.home-polished .process-list :is(h4,p) { color:#365b75; }
  .hero-art.home-polished .process-list li > span { color:#2f749f; }

  .hero-art.home-polished .why-japston { background:linear-gradient(100deg,#183c5adb 0%,#214f64b8 60%,#183c5aa6),url('/assets/hero-real.jpeg') center / cover; }
  .hero-art.home-polished .why-japston .section-heading :is(h2,p,.section-label) { color:#fff; }
  .hero-art.home-polished .why-japston .values-grid { background:#fff; }
  .hero-art.home-polished .why-japston .values-grid article + article { border-color:#cfdfeb; }
  .hero-art.home-polished .why-japston .values-grid h3 { color:#275574; }
  .hero-art.home-polished .why-japston .values-grid :is(p,article > span) { color:#486c83; }
  .hero-art.home-polished .credentials-line :is(h3,a) { color:#def2ff; }
  .hero-art.home-polished .company-partners { background:linear-gradient(100deg,#fffffff7,#f7faf4f2),url('/assets/hero-visuals/about-generated.png') center 70% / cover; }
  .hero-art.home-polished .company-partners h2 { color:#2d4937; }
  .hero-art.home-polished .partner-logos img { mix-blend-mode:normal; filter:none; }
  .hero-art.home-polished .testimonials-section { background:linear-gradient(105deg,#fff3f0f7,#fbe7e1f2),url('/assets/hero-visuals/solutions-generated.png') center / cover; }
  .hero-art.home-polished .testimonials-section .section-label { color:#b13b26; }
  .hero-art.home-polished .testimonials-section::before { background-image:url('/assets/home-visuals/energy-lines.svg'); opacity:.16; }
  .hero-art.home-polished .testimonials-grid figure:nth-child(n) { background:#f8fcff; border:1px solid #c7ddea; }
  .hero-art.home-polished .testimonials-grid figure:nth-child(1) { background:#275f40; border-color:#275f40; }
  .hero-art.home-polished .testimonials-grid figure:nth-child(3) { background:#dff1ed; border-color:#c1e0d7; }
  .hero-art.home-polished .testimonials-grid figure:nth-child(4) { background:#efeafb; border-color:#d9cfee; }
  .hero-art.home-polished .testimonials-grid figure:nth-child(n) :is(blockquote,strong,span) { color:#345b76; }
  .hero-art.home-polished .testimonials-grid figure:nth-child(1) :is(blockquote,strong,span) { color:#edf8ff; }
  .hero-art.home-polished .testimonials-grid figcaption { border-color:#b8d0e1; }

  .hero-art.home-polished .faq-section { background:linear-gradient(100deg,#fffffff2,#f5f8f0ed),url('/assets/hero-visuals/contact-generated.png') center / cover; }
  .hero-art.home-polished .faq-section::before { background-image:url('/assets/home-visuals/energy-lines.svg'); opacity:.18; }
  .hero-art.home-polished .faq-grid h2 { color:#294632; }
  .hero-art.home-polished .faq-grid > div > p,
  .hero-art.home-polished .faq-list details p { color:#486b82; }
  .hero-art.home-polished .faq-list details { border-color:#c1d9e9; }
  .hero-art.home-polished .faq-list details[open] { background:#e9f3e2; border-color:#bdd8ad; }
  .hero-art.home-polished .faq-list summary { color:#314f39; }
  .hero-art.home-polished .faq-list summary > span { background:#e2efd7; color:#416d31; }
  .hero-art.home-polished .closing-cta { background:linear-gradient(105deg,#9b301ced,#bb4728d9),url('/assets/hero-visuals/solutions-generated.png') right center / cover; }
  .hero-art.home-polished .closing-cta::before { background-image:url('/assets/home-visuals/energy-lines.svg'); opacity:.22; }
  .hero-art.home-polished .closing-cta :is(h2,p) { color:#f2faff; }
  .hero-art.home-polished .closing-cta .button { color:#214f74; background:#f1f9ff; border-color:#e2f2ff; }
  .hero-art.home-polished .closing-cta .button:hover { color:#214f74; background:#d8edfc; }
  .hero-art.home-polished .contact-section { background:#edf7f0; }
  .hero-art.home-polished .contact-grid { background:linear-gradient(110deg,#e6f4eaf5,#f0f9f2f0),url('/assets/hero-visuals/contact-generated.png') center / cover; border-color:#c7dfce; }
  .hero-art.home-polished .contact-page-form #quote-form { background:#fbfdff; border:1px solid #d2e3ef; }
  .hero-art.home-polished .form-grid :is(input,select,textarea) { background:#fff; border-color:#c6dce9; color:#254c67; }
  .hero-art.home-polished :is(.consent,.form-note,.field-hint) { color:#4e6b80; }
  .hero-art.home-polished .newsletter { background:linear-gradient(105deg,#e6f3def2,#d5e9cce8),url('/assets/hero-visuals/solutions-generated.png') center 68% / cover; border-color:#bed5ad; }
  .hero-art.home-polished .newsletter::before { background-image:url('/assets/home-visuals/energy-lines.svg'); opacity:.22; }
  .hero-art.home-polished .newsletter h2 { color:#2a5937; }
  .hero-art.home-polished .newsletter p { color:#4b654a; }
  .hero-art.home-polished .newsletter input { background:#fbfdff; border-color:#b9d4e5; }
  .hero-art.home-polished .newsletter .button { background:#ba3b23; border-color:#ba3b23; color:#fff; }
  .hero-art.home-polished .newsletter .button:hover { background:#96301d; border-color:#96301d; }
  .hero-art.home-polished .site-footer h3,
  .hero-art.home-polished .site-footer .footer-grid > div:last-child strong { color:#c9e8fb; }
  .hero-art.home-polished .site-footer a:hover { color:#a8d9f5; }
  .hero-art.home-polished .footer-brand .brand { background:#f8fbff; }
}
