/*
Theme Name: Elstar Light
Description: Lightweight, native Elstar templates. No parent theme or page builder required.
Version: 0.2.4
Text Domain: elstar-light
*/
:root{--green:#1bae70;--green-dark:#06752e;--ink:#14261c;--muted:#4e5652;--pale:#f4f6f4;--line:#dbe2dc;--white:#fff;--max:1200px;--radius:4px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;color:var(--ink);background:var(--white);font-family:Karla,Arial,sans-serif;font-size:17px;line-height:1.65}h1,h2,h3,h4,.nav,.button{font-family:Rubik,Arial,sans-serif}h1,h2,h3{line-height:1.15;letter-spacing:-.025em;margin:0 0 1rem}h1{font-size:clamp(2.15rem,4.4vw,3.8rem);text-transform:uppercase}h2{font-size:clamp(1.6rem,2.7vw,2.35rem)}h3{font-size:1.2rem}p{margin:0 0 1.15rem}a{color:var(--green-dark);text-underline-offset:.2em}a:hover{color:var(--ink)}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:5px}img{display:block;max-width:100%;height:auto}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}.wrap{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.skip{position:absolute;left:1rem;top:-100px;background:#fff;padding:1rem;z-index:100}.skip:focus{top:1rem}.site-header{background:#080b09;color:#fff}.header-inner{min-height:104px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:block;flex:none}.brand img{width:226px;height:auto}.nav{display:flex;align-items:center;gap:26px;font-size:.85rem}.nav a{color:#fff;text-decoration:none}.nav a:hover{text-decoration:underline}.nav .button{color:#fff;background:var(--green-dark)}.mobile-menu{display:none}.button{display:inline-flex;justify-content:center;align-items:center;gap:.7rem;padding:.85rem 1.6rem;border:1px solid transparent;border-radius:100px;background:var(--green-dark);color:#fff;text-decoration:none;font-size:.9rem;font-weight:700;line-height:1.3}.button:hover{background:var(--ink);color:#fff}.button.secondary{background:transparent;color:var(--ink);border-color:var(--ink)}.button.secondary:hover{background:var(--pale)}.breadcrumbs{font-size:.85rem;color:var(--muted);padding-block:24px;display:flex;gap:.6rem;flex-wrap:wrap}.breadcrumbs a{color:var(--muted)}.section{padding-block:64px}.section.pale{background:var(--pale)}.eyebrow{font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.11em;color:var(--green-dark);margin-bottom:14px}.intro{max-width:720px;color:var(--muted);font-size:1.08rem}.product-hero{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start;padding-block:16px 64px}.product-summary{padding-top:22px}.product-summary h1{font-size:clamp(2.1rem,4vw,3.6rem)}.product-summary .summary-copy{margin-block:24px;color:var(--muted)}.summary-copy ul{padding-left:1.25rem}.summary-copy li{padding-bottom:.4rem}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.gallery-main{background:var(--pale);border-radius:var(--radius);display:block;padding:24px}.gallery-main img{height:430px;width:100%;object-fit:contain;mix-blend-mode:multiply}.gallery-thumbs{display:flex;gap:10px;overflow:auto;padding:14px 0 8px}.gallery-thumbs a{flex:0 0 74px;border:1px solid var(--line);border-radius:var(--radius);background:white;padding:6px}.gallery-thumbs a[aria-current=true]{border:2px solid var(--green-dark)}.gallery-thumbs img{width:60px;height:64px;object-fit:contain}.product-links{display:flex;gap:32px;padding-block:18px;border-block:1px solid var(--line);flex-wrap:wrap}.product-links a{font-size:.95rem;text-decoration:none;font-weight:700}.product-details{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:72px}.prose{max-width:760px;overflow-wrap:anywhere}.prose h2,.prose h3{margin-top:2rem}.prose h2:first-child{margin-top:0}.prose h2{font-size:1.55rem}.prose ul{padding-left:1.25rem}.specs{border-collapse:collapse;width:100%;font-size:.95rem}.specs th,.specs td{text-align:left;vertical-align:top;padding:13px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.specs th{width:48%;font-weight:600;padding-right:20px}.documents{margin-top:36px}.document-link{display:block;background:#fff;border:1px solid var(--line);padding:16px;margin-bottom:10px;text-decoration:none}.document-link span{display:block;font-size:.8rem;color:var(--muted)}.contact-panel{display:grid;grid-template-columns:1fr 1.4fr;gap:72px}.contact-panel a:not(.button){color:var(--green-dark)}.contact-panel .frm_forms{margin:0!important}.contact-panel .frm_style_formidable-style.with_frm_style .frm_form_field>label{color:var(--ink)}.contact-panel .frm_submit button{border-radius:100px!important;background:var(--green-dark)!important;border-color:var(--green-dark)!important}.catalog-head{padding:40px 0 36px}.catalog-toolbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:24px 0}.category-nav{display:flex;gap:10px;flex-wrap:wrap}.category-nav a{padding:8px 16px;border:1px solid var(--line);border-radius:100px;text-decoration:none;font-size:.9rem;color:var(--ink)}.category-nav a[aria-current=page]{background:var(--ink);border-color:var(--ink);color:#fff}.catalog-search{display:flex;gap:8px;max-width:460px;width:100%}.catalog-search input{border:1px solid var(--line);border-radius:4px;padding:10px 12px;min-width:0;width:100%}.catalog-search button{border:0;border-radius:4px;color:#fff;background:var(--green-dark);padding:10px 18px}.result-count{color:var(--muted);font-size:.9rem;margin-block:20px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.product-card{border-bottom:1px solid var(--line);padding-bottom:26px}.product-card a{text-decoration:none;color:var(--ink);display:block}.card-image{background:var(--pale);padding:24px;margin-bottom:20px;overflow:hidden;border-radius:var(--radius)}.card-image img{width:100%;height:240px;object-fit:contain;mix-blend-mode:multiply;transition:transform .2s}.product-card a:hover img{transform:scale(1.035)}.product-card h2{font-size:1.15rem;text-transform:uppercase;margin-bottom:10px}.card-category{font-size:.8rem;color:var(--muted);margin-bottom:4px}.card-cta{font-size:.88rem;color:var(--green-dark);font-weight:700}.pagination{display:flex;gap:12px;justify-content:center;padding-block:40px}.pagination .page-numbers{padding:7px 14px;border:1px solid var(--line);text-decoration:none}.pagination .current{background:var(--ink);color:#fff}.catalog-description{margin-top:48px;padding-top:40px;border-top:1px solid var(--line)}.empty-state{padding:48px;background:var(--pale)}.site-footer{background:#0c1510;color:#dce5df;padding:56px 0 24px;margin-top:64px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:64px}.site-footer h2{font-size:1rem;color:#fff;text-transform:uppercase}.site-footer a{color:#dce5df}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin-bottom:8px}.footer-bottom{border-top:1px solid #344039;margin-top:40px;padding-top:20px;font-size:.85rem;color:#adb9b1}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden;white-space:nowrap}
.product-hero>*,.product-details>*,.contact-panel>*{min-width:0}.summary-copy{overflow-wrap:anywhere}
@media(min-width:901px){.product-summary{position:sticky;top:24px}}
@media(max-width:1100px){.nav{gap:16px;font-size:.8rem}.brand img{width:190px}.product-hero{gap:36px}.gallery-main img{height:380px}}
@media(max-width:900px){.nav.desktop{display:none}.mobile-menu{display:block;position:relative}.mobile-menu summary{cursor:pointer;list-style:none;border:1px solid #647169;border-radius:4px;padding:7px 14px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu .nav{position:absolute;right:0;top:48px;z-index:20;display:flex;flex-direction:column;align-items:stretch;width:260px;background:#111d15;padding:24px;box-shadow:0 12px 30px #0004}.header-inner{min-height:88px}.product-hero,.product-details,.contact-panel{gap:36px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-toolbar{align-items:stretch;flex-direction:column}.footer-grid{gap:28px}}
@media(max-width:640px){.wrap{width:calc(100% - 36px)}.brand img{width:178px}.section{padding-block:40px}.product-hero,.product-details,.contact-panel{grid-template-columns:1fr}.product-hero{padding-bottom:36px;gap:16px}.product-summary{padding-top:8px}.gallery-main img{height:300px}.product-links{gap:20px}.product-grid{gap:24px 16px}.card-image{padding:14px}.card-image img{height:170px}.product-card h2{font-size:1rem}.footer-grid{grid-template-columns:1fr}.catalog-head{padding-top:24px}h1{font-size:2.15rem}.specs{font-size:.9rem}.contact-panel{gap:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card-image img{transition:none}}
.page-heading{padding-block:24px 40px}.page-content .elstar-section{padding:48px 0;margin:0}.elstar-inner{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.elstar-subsection{margin-block:24px}.elstar-section .wp-block-columns{gap:48px;margin:0;align-items:flex-start}.elstar-section .wp-block-column{min-width:0}.elstar-section .wp-block-image{margin:24px 0}.elstar-section .wp-block-image img{max-height:650px;object-fit:contain;width:auto}.elstar-section .wp-block-heading{margin-top:0}.elstar-section p,.elstar-section li{overflow-wrap:anywhere}.elstar-section .wp-block-heading:not(h1){text-transform:none}.elstar-section h4{font-size:1.35rem;line-height:1.3}.elstar-section h3{line-height:1.45}.elstar-section .wp-block-video{margin:32px 0}.elstar-section video{display:block;width:100%;max-height:650px;background:#101712}.elstar-hero,.elstar-band{position:relative;isolation:isolate;overflow:hidden;background:#10271a;color:#fff}.page-content .elstar-hero{padding-block:96px;min-height:580px;display:flex;align-items:center}.elstar-hero .elstar-inner,.elstar-band .elstar-inner{position:relative;z-index:1}.elstar-hero .wp-block-image.hero-background,.elstar-band .wp-block-image.hero-background{position:absolute;inset:0;width:100%;height:100%;margin:0;z-index:-1;opacity:.35;pointer-events:none}.elstar-hero .hero-background img,.elstar-band .hero-background img{width:100%;height:100%;max-height:none;object-fit:cover}.elstar-hero h1{font-size:clamp(2rem,3.5vw,3.2rem);text-transform:none;line-height:1.13}.elstar-hero a,.elstar-band a{color:#fff}.elstar-hero .native-link-list{display:grid;gap:8px;list-style:none;padding:0}.elstar-hero .native-link-list a{font-weight:700}.elstar-band .button{background:#fff;color:var(--ink)}.native-link-list{padding-left:1.2rem}.native-link-list li{margin-bottom:.6rem}.category-grid,.dealer-grid,.document-grid,.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.category-card{display:block;text-decoration:none;color:var(--ink)}.category-card img{width:100%;aspect-ratio:1.2;object-fit:cover;border-radius:4px;margin-bottom:20px}.category-card h2{font-size:1.55rem}.category-card span{font-size:.9rem;font-weight:700;color:var(--green-dark)}.document-card,.dealer-card{border:1px solid var(--line);padding:28px;background:#fff;border-radius:4px}.document-card h2,.dealer-card h2{font-size:1.15rem}.document-card .button{font-size:.85rem;padding:.8rem 1.1rem}.dealer-card{text-align:center}.dealer-card img{width:100%;height:120px;object-fit:contain;margin-bottom:24px}.news-grid img{width:100%;height:230px;object-fit:cover;margin-bottom:20px}.news-grid h2{font-size:1.45rem}.news-grid a{text-decoration:none;color:var(--ink)}.article-content{max-width:800px;margin-inline:auto}.article-image{margin-block:32px;width:100%;max-height:560px;object-fit:contain}.article-date{color:var(--muted)}.article-content .prose{max-width:none}.prose video,.prose iframe{max-width:100%}.faq-list{max-width:900px;margin-inline:auto}.faq-item{padding:22px 0;border-bottom:1px solid var(--line)}.faq-item summary{font-size:1.2rem;font-weight:700;cursor:pointer;line-height:1.4}.faq-item[open] summary{margin-bottom:20px;color:var(--green-dark)}.catalog-editorial{border-top:1px solid var(--line);margin-top:48px;padding-top:36px}.catalog-editorial .elstar-section{padding-block:24px}.catalog-editorial .elstar-inner{width:100%}.catalog-editorial .wp-block-heading{font-size:1.6rem}.page-content .frm_submit button{border-radius:100px!important;background:var(--green-dark)!important;border-color:var(--green-dark)!important}.page-content .frm_forms{max-width:100%}.elstar-inner>h1{max-width:900px}.page-content .elstar-section:only-child .wp-block-column:only-child>h2:first-child{font-size:clamp(2rem,4vw,3rem)}
@media(max-width:900px){.document-grid,.dealer-grid,.category-grid,.news-grid{gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.elstar-section .wp-block-columns{gap:28px}.page-content .elstar-hero{min-height:500px;padding-block:64px}}
@media(max-width:640px){.elstar-inner{width:calc(100% - 36px)}.page-content .elstar-section{padding-block:32px}.elstar-section .wp-block-columns{flex-direction:column}.elstar-section .wp-block-column{width:100%}.elstar-hero .wp-block-column:empty{display:none}.page-content .elstar-hero{padding-block:48px;min-height:480px}.document-grid,.category-grid,.news-grid{grid-template-columns:1fr}.dealer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dealer-card{padding:18px 12px}.dealer-card img{height:70px}.dealer-card a{font-size:.85rem}.elstar-section .wp-block-heading{overflow-wrap:anywhere}.catalog-editorial .elstar-inner{width:100%}}
@media(max-width:640px){.page-content:not(.front-page) h1{font-size:clamp(1.6rem,6.5vw,2rem)}}

/* Decorative, logo-gold link bullets in the homepage hero; no icon/font download. */
.elstar-hero .native-link-list { gap: 4px; }
.elstar-hero .native-link-list li { margin-bottom: 0; }
.elstar-hero .native-link-list a {
    position: relative;
    display: flex;
    align-items: center;
    width: fit-content;
    min-height: 44px;
    padding: 7px 0 7px 42px;
    line-height: 1.45;
    text-decoration: none;
}
.elstar-hero .native-link-list a::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 28px;
    height: 28px;
    border: 1px solid #ffbe2d;
    border-radius: 50%;
    background: rgb(255 190 45 / 12%);
}
.elstar-hero .native-link-list a::after {
    content: '';
    position: absolute;
    left: 9px;
    top: 50%;
    width: 7px;
    height: 7px;
    border-top: 2px solid #ffbe2d;
    border-right: 2px solid #ffbe2d;
    transform: translateY(-50%) rotate(45deg);
}
.elstar-hero .native-link-list a:hover,
.elstar-hero .native-link-list a:focus-visible { text-decoration: underline; }
.elstar-hero .native-link-list a:hover::before,
.elstar-hero .native-link-list a:focus-visible::before { background: rgb(255 190 45 / 25%); }

/* Category entrances: real photographs, quiet dark panels, logo-gold arrows. */
.category-grid { gap: 28px; }
.category-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    border: 1px solid #14261c;
    border-radius: 8px;
    background: #14261c;
    color: #fff;
    box-shadow: 0 4px 14px rgb(20 38 28 / 8%);
    transition: transform .2s ease, box-shadow .2s ease;
}
.category-card .category-card-media {
    display: block;
    overflow: hidden;
    background: var(--pale);
}
.category-card .category-card-media img {
    width: 100%;
    aspect-ratio: 1;
    object-fit: cover;
    margin: 0;
    border-radius: 0;
    transition: transform .35s ease;
}
.category-card-body {
    position: relative;
    flex: 1;
    padding: 28px 82px 28px 26px;
    border-top: 2px solid #ffbe2d;
}
.category-card .category-card-body h2 {
    margin: 0 0 12px;
    color: #fff;
    font-size: clamp(1.4rem, 2.1vw, 1.75rem);
    line-height: 1.2;
}
.category-card .category-card-cta {
    color: #dce5df;
    font-size: .85rem;
    font-weight: 400;
    line-height: 1.5;
}
.category-card .category-card-arrow {
    position: absolute;
    right: 24px;
    top: 50%;
    transform: translateY(-50%);
    display: block;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #ffbe2d;
}
.category-card-arrow::before {
    content: '';
    position: absolute;
    width: 14px;
    height: 2px;
    left: 12px;
    top: 19px;
    background: #14261c;
}
.category-card-arrow::after {
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    right: 12px;
    top: 16px;
    border-top: 2px solid #14261c;
    border-right: 2px solid #14261c;
    transform: rotate(45deg);
}
.category-card:hover, .category-card:focus-visible {
    color: #fff;
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgb(20 38 28 / 16%);
}
.category-card:hover .category-card-media img,
.category-card:focus-visible .category-card-media img { transform: scale(1.035); }
.category-card:hover .category-card-cta,
.category-card:focus-visible .category-card-cta { text-decoration: underline; }
@media (max-width: 900px) {
    .category-grid { gap: 20px; }
    .category-card-body { padding: 24px 72px 24px 20px; }
    .category-card .category-card-arrow { right: 18px; }
}
@media (max-width: 640px) {
    .category-card .category-card-media img { aspect-ratio: 1.2; }
    .category-card .category-card-body h2 { font-size: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
    .category-card, .category-card .category-card-media img { transition: none; }
    .category-card:hover, .category-card:focus-visible,
    .category-card:hover .category-card-media img,
    .category-card:focus-visible .category-card-media img { transform: none; }
}

/* Airy homepage benefits and one clear savings call to action. */
.page-content .elstar-section.elstar-benefits { padding-block: 80px 48px; }
.elstar-benefits > .elstar-inner > h2 {
    max-width: 24ch;
    margin-bottom: 48px;
    font-size: clamp(1.8rem, 3.3vw, 2.65rem);
}
.elstar-benefits .benefit-columns { gap: 80px; align-items: center; }
.elstar-benefits .wp-block-image.benefit-photo { margin: 0; }
.elstar-benefits .benefit-photo img {
    width: 100%;
    max-height: 580px;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 8px;
}
.benefit-item {
    display: grid;
    grid-template-columns: 46px minmax(0, 1fr);
    column-gap: 22px;
    row-gap: 12px;
    padding-block: 30px;
    border-bottom: 1px solid var(--line);
}
.benefit-item:first-child { padding-top: 0; }
.benefit-item:last-child { padding-bottom: 0; border-bottom: 0; }
.benefit-marker {
    grid-column: 1;
    grid-row: 1 / span 2;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 46px;
    height: 46px;
    border-radius: 50%;
    color: #14261c;
    background: #fff1cc;
    font-size: .9rem;
    font-weight: 600;
}
.elstar-benefits .benefit-item h3 { grid-column: 2; margin: 0; font-size: 1.3rem; line-height: 1.25; }
.benefit-item p { grid-column: 2; margin: 0; max-width: 43ch; color: var(--muted); }
.page-content .elstar-section.elstar-savings-cta { padding-block: 48px 24px; }
.elstar-cta-panel {
    padding: 72px 48px;
    border-radius: 8px;
    background: #14261c;
    color: #fff;
    text-align: center;
}
.elstar-cta-panel .eyebrow { color: #ffbe2d; margin: 0 auto 20px; }
.elstar-cta-panel h2 {
    max-width: 22ch;
    margin: 0 auto 24px;
    color: #fff;
    font-size: clamp(2rem, 4vw, 3.1rem);
}
.elstar-cta-panel > p:not(.eyebrow):not(.elstar-cta-action) {
    max-width: 650px;
    margin: 0 auto;
    color: #dce5df;
    font-size: 1.05rem;
}
.elstar-cta-panel .elstar-cta-action { margin: 32px 0 0; }
.elstar-cta-panel .button {
    min-height: 54px;
    padding: 16px 26px;
    background: #ffbe2d;
    color: #14261c;
    font-weight: 600;
    font-size: 1rem;
}
.elstar-cta-panel .button span { font-size: 1.25rem; }
.elstar-cta-panel .button:hover { background: #fff; color: #14261c; }
.elstar-cta-panel .button:focus-visible { outline-color: #ffbe2d; }
@media (max-width: 900px) {
    .elstar-benefits .benefit-columns { flex-direction: column; gap: 40px; }
    .elstar-benefits .benefit-columns > .wp-block-column { width: 100%; }
    .elstar-benefits .benefit-photo img { aspect-ratio: 16 / 9; }
    .benefit-item p { max-width: 65ch; }
}
@media (max-width: 640px) {
    .page-content .elstar-section.elstar-benefits { padding-block: 48px 24px; }
    .elstar-benefits > .elstar-inner > h2 { margin-bottom: 32px; }
    .elstar-benefits .benefit-photo img { aspect-ratio: 4 / 3; }
    .benefit-item { column-gap: 16px; padding-block: 24px; }
    .elstar-benefits .benefit-item h3 { font-size: 1.15rem; }
    .page-content .elstar-section.elstar-savings-cta { padding-block: 24px 0; }
    .elstar-cta-panel { padding: 40px 24px; }
    .elstar-cta-panel h2 { font-size: 1.8rem; }
    .elstar-cta-panel .button { width: 100%; padding-inline: 16px; }
}
