/* =====================================================================
   Double L theme: light / dark mode
   Loaded after common.css. Follows the visitor's device setting by
   default; the toggle in the top nav overrides it (saved per browser).
   To change a color, edit the variables in the two blocks below.
   ===================================================================== */

/* ---------- Light theme (default) ---------- */
:root {
    color-scheme: light;
    --brand:            #ffb91f;   /* Double L yellow, used on dark/photo areas */
    --brand-hover:      #ffcb52;
    --brand-on-surface: #b98000;   /* yellow text on light surfaces (readable) */

    --page-bg:          #f3f2ee;   /* plain page background */
    --surface:          #ffffff;   /* light sections, cards, tables */
    --surface-2:        #e9e8e3;   /* gradient end / alternating rows */
    --border:           #d6d4cd;
    --text:             #1d1d1b;
    --text-muted:       #5b5a56;
    --link:             #9a6a00;
    --link-hover:       #1d1d1b;
    --panel:            rgba(255, 255, 255, .62);  /* translucent text panels */
    --panel-fade:       rgba(255, 255, 255, 0);

    --dark-top:         #5e5d5c;   /* dark feature sections (gradient) */
    --dark-bottom:      #1f1c1d;
    --footer-bg:        #1b1c1e;
    --footer-text:      #f2f1ed;
    --nav-bg:           rgba(16, 16, 17, .78);

    --input-bg:         #ffffff;
    --input-text:       #1d1d1b;
    --input-border:     #cfcdc6;
}

/* ---------- Dark theme ---------- */
:root[data-theme="dark"] {
    color-scheme: dark;
    --brand-on-surface: #ffb91f;
    --page-bg:          #121314;
    --surface:          #1b1d1f;
    --surface-2:        #232629;
    --border:           #34373b;
    --text:             #ebe9e4;
    --text-muted:       #a9a7a1;
    --link:             #ffb91f;
    --link-hover:       #ffcb52;
    --panel:            rgba(18, 19, 20, .72);
    --panel-fade:       rgba(18, 19, 20, 0);
    --dark-top:         #2c2e31;
    --dark-bottom:      #101112;
    --footer-bg:        #0c0d0e;
    --nav-bg:           rgba(8, 8, 9, .85);
    --input-bg:         #24272a;
    --input-text:       #ebe9e4;
    --input-border:     #3d4145;
}
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        color-scheme: dark;
        --brand-on-surface: #ffb91f;
        --page-bg:          #121314;
        --surface:          #1b1d1f;
        --surface-2:        #232629;
        --border:           #34373b;
        --text:             #ebe9e4;
        --text-muted:       #a9a7a1;
        --link:             #ffb91f;
        --link-hover:       #ffcb52;
        --panel:            rgba(18, 19, 20, .72);
        --panel-fade:       rgba(18, 19, 20, 0);
        --dark-top:         #2c2e31;
        --dark-bottom:      #101112;
        --footer-bg:        #0c0d0e;
        --nav-bg:           rgba(8, 8, 9, .85);
        --input-bg:         #24272a;
        --input-text:       #ebe9e4;
        --input-border:     #3d4145;
    }
}

/* ---------- Page & links ---------- */
body { background:var(--page-bg);color:var(--text); }
a { color:var(--link); }
a:hover, a:focus { color:var(--link-hover); }
.yellow { color:var(--brand) !important; }

/* ---------- Top nav ---------- */
#top-nav { background:var(--nav-bg);border-top-color:var(--brand);border-bottom-color:var(--brand); }

/* ---------- Light sections become dark in dark mode ---------- */
.white-bg { background-color:var(--surface);background-image:linear-gradient(180deg, var(--surface), var(--surface-2)); }
.page-intro, .white-bg .body-text, #tech-specs { color:var(--text); }
.white-bg .content-title .title-right-text { color:var(--text); }
.white-bg .yellow, .page-intro .yellow, #about-team .yellow { color:var(--brand-on-surface) !important; }
.white-bg .black, .page-intro .black, #about-team .black, #feature-links .black { color:var(--text) !important; }
.translucent, .white-bg .left-content-text.translucent, .white-bg .right-content-text.translucent { background:var(--panel); }
.white-bg .left-content-text.translucent + .vignette { background-image:linear-gradient(to right, var(--panel), var(--panel-fade)); }
.white-bg .right-content-text.translucent + .vignette { background-image:linear-gradient(to right, var(--panel-fade), var(--panel)); }
.white-trans-bg { background:linear-gradient(180deg, var(--panel), var(--panel)); }

/* Dark feature sections keep their look, just a little cleaner */
.black-grad-bg { background-image:linear-gradient(180deg, var(--dark-top), var(--dark-bottom)); }

/* Product page "compare / gallery / video" bar */
#feature-links { background:var(--surface);box-shadow:0 -.2rem 1rem rgba(0,0,0,.25); }
#feature-links a:hover .glyphicon, #feature-links a:hover { color:var(--brand-on-surface) !important; }

/* Specs comparison table */
#tech-spec-container.white-bg { background-image:none !important;background-color:var(--surface); }
#tech-specs .table-corner, .frozen-table .table-corner { background-color:var(--surface); }
#tech-specs .table-content tr:nth-child(odd) td { background:var(--surface-2); }
#tech-specs td, #tech-specs th, .frozen-table td, .frozen-table th, .table-header div, .frozen-table .table-corner { border-color:var(--border); }
#tech-specs .table-attributes td { color:#ffffff; }
.content-section .table-arrow { color:var(--text-muted); }

/* About page team tabs */
#about-team .nav-tabs { border-bottom-color:var(--brand); }
#about-team .nav-tabs li a { color:var(--text); }
#about-team .nav-tabs li.active > a, #about-team .nav-tabs li.active > a:hover, #about-team .nav-tabs li.active > a:focus { background:var(--brand);border-color:var(--brand);color:#1d1d1b; }
#about-team .nav-tabs li a:hover { background:var(--surface-2);border-color:transparent; }
.about-employee-name, .about-employee-title { color:var(--text); }

/* ---------- Forms ---------- */
.form-control { background-color:var(--input-bg);color:var(--input-text);border-color:var(--input-border); }
.form-control::placeholder { color:var(--text-muted);opacity:1; }
.form-control:focus { border-color:var(--brand);box-shadow:0 0 0 .2rem rgba(255, 185, 31, .3); }

/* ---------- Footer (dark in both themes) ---------- */
#footer { background:var(--footer-bg);color:var(--brand); }
#footer .white, #footer .copyright { color:var(--footer-text) !important; }
#footer .black { color:var(--brand) !important; }
#footer a { color:var(--footer-text); }
#footer a:hover, #footer a:focus { color:var(--brand); }
#footer .form-control { background-color:#26282b;color:#f2f1ed;border-color:#3d4145; }
#footer .form-control::placeholder { color:#a9a7a1; }

/* ---------- Dealers page ---------- */
.dealer-directory { color:var(--text-muted) !important; }
.dealer-directory .white { color:var(--brand-on-surface) !important;font-size:1.15em; }
.dealer-directory a { color:var(--link); }
.dealer-directory a:hover { color:var(--link-hover); }
.dealer-directory .col-md-4 { margin-bottom:2.5rem; }

/* ---------- Theme toggle button (top nav) ---------- */
#top-nav #theme-toggle-item { margin-left:1.5rem; }
.theme-toggle { background:transparent;border:.15rem solid rgba(255,255,255,.55);border-radius:50%;width:2.6rem;height:2.6rem;padding:0;color:#ffffff;cursor:pointer;vertical-align:middle;line-height:1;transition:border-color .2s, color .2s; }
.theme-toggle:hover, .theme-toggle:focus { border-color:var(--brand);color:var(--brand);outline:none; }
.theme-toggle .glyphicon { font-size:1.3rem;top:0; }

/* ---------- Text over photos (photos are no longer pre-darkened) ---------- */
.bgimg .caption .feature-title, .bgimg .caption .content-title, .bgimg .caption .content-subtitle,
.hero-title .content-title, .hero-title .content-subtitle, .product-hero-nav,
#about-hero .content-title, #about-hero .content-subtitle {
    text-shadow:0 .15rem .6rem rgba(0,0,0,.75), 0 0 .15rem rgba(0,0,0,.9);
}
/* Homepage slideshow: no darkening layer on the photos */
.hero-slide::after { display:none; }
.hero-slide-caption, .hero-slide-dots { filter:drop-shadow(0 .1rem .4rem rgba(0,0,0,.7)); }

/* ---------- Potato Farming Equipment page: small photo on each tile ---------- */
.pfe-tile-photo { position:absolute;left:3.33333rem;top:3.33333rem;width:28%;max-width:520px;z-index:1; }
.pfe-tile-photo img { display:block;width:100%;height:auto;aspect-ratio:3 / 2;object-fit:cover;border-radius:.4rem;border-bottom:.3rem solid var(--brand);box-shadow:0 .4rem 1.4rem rgba(0,0,0,.35); }
.pfe-tile-photo ~ .hp-product-image { display:none !important; }
@media screen and (max-width:991px){
    .pfe-tile-photo { position:relative;left:auto;top:auto;width:auto;max-width:640px;margin:2.5rem 3.33333rem 0; }
}
@media screen and (max-width:767px){
    .pfe-tile-photo { margin:1.5rem 1rem 0; }
}

/* ---------- Contact forms ---------- */
.dl-hp { position:absolute !important;left:-10000px !important;top:auto;width:1px;height:1px;overflow:hidden; }
.form-status { display:none;margin:0 0 1rem;padding:.75rem 1rem;border-radius:.3rem;font-family:'pt_sansregular', Arial, sans-serif;font-size:1.2rem;line-height:1.5;letter-spacing:0;border-left:.35rem solid transparent; }
.form-status.is-info    { background:rgba(255,255,255,.08);border-left-color:#a9a7a1;color:inherit; }
.form-status.is-success { background:rgba(103,168,61,.16);border-left-color:#67a83d;color:#cfe8bd; }
.form-status.is-error   { background:rgba(214,69,65,.15);border-left-color:#d64541;color:#f3c4c2; }
.white-bg .form-status.is-info    { background:var(--surface-2);color:var(--text); }
.white-bg .form-status.is-success { color:var(--text); }
.white-bg .form-status.is-error   { color:var(--text); }
.form-control.error { border-color:#d64541 !important;box-shadow:0 0 0 .15rem rgba(214,69,65,.25) !important;background:var(--input-bg) !important; }
#footer .form-control.error { background:#26282b !important; }
.lg-btn.is-sending { opacity:.5;pointer-events:none; }

/* =====================================================================
   Site header (Option A) - markup in includes/top-nav.php
   Dark in both themes. Overrides the old #top-nav rules in common.css.
   ===================================================================== */
#top-nav.site-header {
    position:fixed;top:0;left:0;right:0;width:100%;z-index:50;padding:0;margin:0;
    background:#141516;border:0;border-bottom:3px solid var(--brand);
    font-family:'pt_sansregular', Arial, sans-serif;color:#ffffff;
    box-shadow:0 2px 14px rgba(0,0,0,.25);
}
.site-header .sh-bar { display:flex;align-items:center;gap:2.4rem;height:76px;padding:0 2.6rem;transition:height .25s ease; }
.site-header.is-scrolled .sh-bar { height:64px; }
.site-header .sh-logo { flex:none;display:block;line-height:0; }
.site-header .sh-logo img { height:44px;width:auto;transition:height .25s ease; }
.site-header.is-scrolled .sh-logo img { height:38px; }

.site-header .sh-nav { margin-left:auto; }
.site-header .sh-links { display:flex;align-items:center;gap:2.2rem;list-style:none;margin:0;padding:0; }
.site-header .sh-link {
    display:inline-flex;align-items:center;gap:.45rem;padding:.6rem 0;background:none;border:0;cursor:pointer;
    color:#ffffff;font-family:inherit;font-weight:700;font-size:.95rem;letter-spacing:.14em;text-transform:uppercase;
    text-decoration:none;border-bottom:2px solid transparent;transition:color .15s, border-color .15s;white-space:nowrap;line-height:1.2;
}
.site-header .sh-link:hover, .site-header .sh-link:focus-visible,
.site-header .sh-item.is-current .sh-link, .site-header.mega-open .sh-mega-toggle { color:var(--brand);text-decoration:none; }
.site-header .sh-item.is-current .sh-link { border-bottom-color:var(--brand); }
.site-header .sh-caret { width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid currentColor;transition:transform .2s; }
.site-header.mega-open .sh-caret { transform:rotate(180deg); }

.site-header .sh-actions { display:flex;align-items:center;gap:1.4rem;flex:none; }
.site-header .sh-phone { color:#ffffff;font-size:1rem;letter-spacing:.04em;white-space:nowrap;text-decoration:none; }
.site-header .sh-phone .glyphicon { font-size:.85rem;margin-right:.3rem;top:1px; }
.site-header .sh-phone:hover { color:var(--brand); }
.site-header .sh-cta {
    background:var(--brand);color:#141516;font-weight:700;font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;
    padding:.8rem 1.4rem;border-radius:4px;text-decoration:none;white-space:nowrap;transition:background .15s;
}
.site-header .sh-cta:hover, .site-header .sh-cta:focus-visible { background:var(--brand-hover);color:#141516;text-decoration:none; }
.site-header .theme-toggle { width:2.4rem;height:2.4rem;display:inline-grid;place-items:center;flex:none;color:#ffffff;border-color:rgba(255,255,255,.45); }
.site-header .theme-toggle svg { display:block; }
.site-header .sh-burger { display:none;width:2.8rem;height:2.8rem;padding:.65rem .5rem;background:none;border:0;cursor:pointer; }
.site-header .sh-burger span { display:block;height:3px;background:#ffffff;border-radius:2px;margin:4px 0; }
.site-header :focus-visible { outline:2px solid var(--brand);outline-offset:3px; }

/* Equipment mega menu */
.site-header .sh-mega {
    position:absolute;top:100%;left:50%;transform:translateX(-50%);width:min(1180px, calc(100% - 4rem));margin-top:3px;
    background:#1b1c1e;border-radius:0 0 .6rem .6rem;box-shadow:0 22px 44px rgba(0,0,0,.5);padding:1.8rem 2rem 1.2rem;
}
.site-header .sh-mega[hidden] { display:none; }
.site-header .sh-mega-grid { display:grid;grid-template-columns:repeat(4, 1fr);gap:1.8rem; }
.site-header .sh-mega h4 { font-family:'league_gothicregular';font-size:1.9rem;line-height:1;letter-spacing:.02em;color:var(--brand);text-transform:uppercase;margin:0 0 1rem; }
.site-header .sh-mega-item { display:flex;align-items:center;gap:.9rem;padding:.4rem;margin:0 -.4rem .4rem;border-radius:.4rem;color:#ffffff;text-decoration:none;font-size:1.05rem;line-height:1.25;transition:background .15s; }
.site-header .sh-mega-item:hover, .site-header .sh-mega-item:focus-visible, .site-header .sh-mega-item.is-current { background:rgba(255,255,255,.07);color:#ffffff;text-decoration:none; }
.site-header .sh-mega-item img { width:96px;height:58px;object-fit:cover;border-radius:.3rem;flex:none; }
.site-header .sh-mega-item small { display:block;color:#a9a7a1;font-size:.85rem;margin-top:.15rem; }
.site-header .sh-mega-foot { display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #34373b;margin-top:1rem;padding-top:1rem;font-size:1rem; }
.site-header .sh-mega-foot a { color:var(--brand);text-decoration:none; }
.site-header .sh-mega-foot a:hover { color:var(--brand-hover);text-decoration:underline; }

/* Phone / tablet drawer */
.site-header .sh-drawer-backdrop { position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:60; }
.site-header .sh-drawer {
    position:fixed;top:0;right:0;bottom:0;width:min(88vw, 400px);z-index:61;overflow-y:auto;
    background:#141516;padding:1.2rem 1.6rem 7rem;box-shadow:-12px 0 30px rgba(0,0,0,.55);
}
.site-header .sh-drawer[hidden], .site-header .sh-drawer-backdrop[hidden], .site-header .sh-acc[hidden] { display:none; }
.site-header .sh-drawer-close { display:block;margin-left:auto;background:none;border:0;color:#b5b3ad;font-size:2.4rem;line-height:1;cursor:pointer; }
.site-header .sh-drawer-row {
    display:flex;justify-content:space-between;align-items:center;width:100%;padding:1.1rem 0;background:none;border:0;border-bottom:1px solid #2c2e31;
    color:#ffffff;font-family:inherit;font-weight:700;font-size:1.05rem;letter-spacing:.12em;text-transform:uppercase;text-decoration:none;text-align:left;cursor:pointer;
}
.site-header .sh-drawer-row:hover, .site-header .sh-acc-toggle[aria-expanded="true"] { color:var(--brand);text-decoration:none; }
.site-header .sh-acc { padding:.3rem 0 .8rem; }
.site-header .sh-acc a { display:flex;align-items:center;gap:.8rem;padding:.55rem 0;color:#dedcd6;font-size:1.05rem;text-decoration:none; }
.site-header .sh-acc a:hover { color:var(--brand); }
.site-header .sh-acc img { width:60px;height:38px;object-fit:cover;border-radius:.25rem;flex:none; }
.site-header .sh-acc .sh-acc-all { color:var(--brand);font-size:.95rem;padding-left:0; }
.site-header .sh-drawer-btns { position:fixed;right:0;bottom:0;width:min(88vw, 400px);display:grid;grid-template-columns:1fr 1fr;gap:.8rem;padding:1.2rem 1.6rem;background:#141516;border-top:1px solid #2c2e31; }
.site-header .sh-drawer-btns a { text-align:center;padding:.95rem 0;border-radius:.4rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;font-size:.95rem;text-decoration:none; }
.site-header .sh-btn-outline { border:2px solid #ffffff;color:#ffffff; }
.site-header .sh-btn-solid { background:var(--brand);color:#141516; }
body.sh-locked { overflow:hidden; }

@media screen and (max-width:1199px){
    .site-header .sh-phone { display:none; }
    .site-header .sh-links { gap:1.6rem; }
    .site-header .sh-bar { gap:1.6rem;padding:0 1.6rem; }
}
@media screen and (max-width:991px){
    .site-header .sh-nav, .site-header .sh-cta, .site-header .sh-mega { display:none !important; }
    .site-header .sh-burger { display:block; }
    .site-header .sh-actions { margin-left:auto;gap:.8rem; }
    .site-header .sh-bar, .site-header.is-scrolled .sh-bar { height:64px;padding:0 1rem 0 1.2rem; }
    .site-header .sh-logo img, .site-header.is-scrolled .sh-logo img { height:36px; }
}
@media (prefers-reduced-motion: reduce){
    .site-header .sh-bar, .site-header .sh-logo img, .site-header .sh-caret { transition:none; }
}
@media screen and (min-width:992px) and (max-width:1199px){
    .site-header .sh-mega { padding:1.4rem 1.4rem 1rem; }
    .site-header .sh-mega-grid { gap:1.2rem; }
    .site-header .sh-mega-item { gap:.6rem;font-size:.98rem; }
    .site-header .sh-mega-item img { width:64px;height:42px; }
    .site-header .sh-mega h4 { font-size:1.6rem; }
}
