/* Follow the visitor's system setting, including changes while the page is open.
   No preference cookie or JavaScript is needed. Photos and logos keep their colors. */
:root{color-scheme:light dark}
@media screen and (prefers-color-scheme:dark){
  :root{
    --ink:#f4f3ef;--muted:#c4c5c3;--paper:#1b1d20;--soft:#292c30;
    --line:#4a4c4e;--accent:#e5ddd2;--visited-menu-color:#f3ad68;
    --photo-paper:#333638;--photo-line:#4a4c4e;--photo-caption:#c4c5c3;
    --orni-ink:#f4f3ef;--orni-bubble:#292c30;--orni-bubble-border:#626569;--orni-focus:#edc99f;
    color:#f4f3ef;background:#1b1d20;
  }
  body{color:var(--ink);background:var(--paper)}
  ::selection{background:#e5c38b;color:#242629}
  a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,
  textarea:focus-visible,summary:focus-visible{outline-color:#edc99f}
  .skip{background:#292c30;color:#f4f3ef}

  /* The alternating chapters retain a quiet difference in tone. */
  .new-home .home-chapter,
  [data-content-layout] [data-content-tone],
  .news-article[data-event-tone="light"]{
    --ink:#f4f3ef;--muted:#c4c5c3;--line:#4a4c4e;
    --photo-caption:#c4c5c3;--photo-line:#4a4c4e;--photo-paper:#333638;
    background:#1b1d20;color:var(--ink);
  }
  .new-home .home-chapter--dark,
  [data-content-layout] [data-content-tone="dark"],
  .news-article[data-event-tone="dark"]{background:#242629;color:#f4f3ef}
  .hero,.machine,.energy-board{background:#242629;color:#f4f3ef}
  .energy-section,.instagram-section,.contact,.design-hero,.brief-section,
  .team-section,.plastics-focus,.shop-process,.shop-teaser,.supply-nav,
  .supply-material-grid article,.handrail-section,.development-section,
  .press-teaser,.terrain-feature,.workholding-feature,.industry-assurance,
  .news-contact,.energy-strip{background:#242629;color:var(--ink);border-color:var(--line)}
  .knowledge-teaser,.partners-section{background:var(--paper)}
  .world,.world-copy{background:transparent;color:var(--ink)}
  .new-home .world{border-bottom-color:var(--line)}
  .new-home .world .eyebrow,.new-home .world-description{color:var(--muted)}
  .new-home .shop-teaser__image{background:var(--photo-paper)}

  /* Navigation, native controls and the existing visited-menu accent. */
  .header,.header .nav,.site-breadcrumbs,.home-location,.industry-subnav{
    background:#1b1d20;color:var(--ink);border-color:var(--line);
  }
  .header .nav>a{border-color:var(--line)}
  .header .nav>a[aria-current]{color:#edc99f;background:#303239;border-left-color:#edc99f}
  .header .nav>a.is-visited{color:var(--visited-menu-color)}
  .header .nav .nav-group-label,.breadcrumb-label,.industry-breadcrumbs,
  .home-location>span{color:var(--muted)}
  .home-location select{color:var(--ink)}
  .home-location select option{background:var(--paper);color:var(--ink)}
  .news-nav-link:not(.is-visited){color:#edc99f}
  .header .nav>a:focus-visible,.site-breadcrumbs a:focus-visible,
  .home-location select:focus-visible{outline-color:#edc99f}
  .primary,.contact .primary,.knowledge-contact .primary,
  [data-content-layout] [data-content-tone] .primary{
    background:#e5ddd2;color:#242629;border-color:#e5ddd2;
  }
  .primary:hover,.contact .primary:hover,
  [data-content-layout] [data-content-tone] .primary:hover{background:#f4efe7;color:#242629}
  .secondary,.form-actions .secondary{color:var(--ink);border-color:#969994}
  .knowledge-contact{background:#292c30;color:var(--ink)}
  .knowledge-topics a:hover,.supply-nav a:hover{background:#383b3f;color:var(--ink)}
  .directions-links a:hover{background:#e5ddd2;color:#242629}

  /* Keep original colored company and partner artwork on a neutral light mount. */
  .header .brand,.footer .brand{background:#fff;padding:4px 10px}
  .partner-logo,.new-home .partner-logo{background:#f2f1ee;padding:12px}
  .trade-mark{width:fit-content;background:#fff;padding:8px}
  .partner-card:hover>span,.team-contact a:hover,.industry-service-card__link span{color:#edc99f}

  /* Captions and small operational information must remain readable. */
  .team-number,.team-person .team-role,.shop-leadtime,.supply-nav span,
  .energy-note,.contact-note,.directions-copy>p,.directions-photo figcaption,
  .press-feature figcaption,.press-source,.video-privacy,.cam-figure figcaption,
  .history-grid .history-year,.visitor-kicker,.visitor-period,
  .visitor-counter p,.visitor-since,.visitor-countries>[data-country-empty],
  .visitor-method,.orni-chat-welcome [data-orni-status]{color:var(--muted)}
  .visitor-counter strong,.knowledge-facts dd,.cam-step-number{color:#edc99f}
  .country-track{background:#45484c}.country-track>span{background:#c3a384}
  .knowledge-question-terms{color:var(--muted)!important}
  .energy-explainer,.brief-grid>div{border-color:var(--line)}
  .shop-product__pending{background:#292c30;color:var(--muted)}
  .press-reader,.news-article__image{background:var(--photo-paper);border-color:var(--line)}
  .cam-page .tool-form-download{background:#292c30}
  .cam-page{--cam-light:#292c30;--cam-accent:#d4b590}
  .form-status{color:#edc99f}

  /* Forms and dialogs share the page theme, including multi-product enquiries. */
  dialog:not(.site-intro),#unavailable-video-dialog{background:#242629;color:#f4f3ef}
  dialog::backdrop{background:rgb(0 0 0 / .72)}
  input,select,textarea,#shop-dialog select,
  .event-registration input:not([type=checkbox]){
    color:#f4f3ef;background:#1b1d20;border-color:#808581;accent-color:#d4b590;
  }
  input::placeholder,textarea::placeholder{color:#aeb1ae;opacity:1}
  input:focus,select:focus,textarea:focus{outline-color:#edc99f}
  .close{background:#383b3f;color:#f4f3ef}
  .shop-summary,.shop-basket-item{background:#292c30;color:#f4f3ef}
  .shop-summary [data-shop-discount-row]{color:#b3d9b6}
  .shop-form-status[data-state="success"]{background:#263d30;color:#c4e6ca;border-color:#6c9275}
  .shop-form-status[data-state="error"]{background:#49352d;color:#f4d4be}
  .event-registration :is(input,button,a):focus-visible{outline-color:#edc99f}
  .unavailable-video-close{background:#e5ddd2;color:#242629;border-color:#e5ddd2}

  /* The attendance forecast and ORNI remain consistent with the surrounding page. */
  .opening-rail{color:#f4f3ef}
  .opening-rail>summary,.opening-rail__panel{background:#292c30;border-color:#626569}
  .opening-rail__close{color:#f4f3ef}.opening-rail__close:hover{background:#383b3f}
  .opening-rail__date,.opening-rail__status,.opening-rail__scale,
  .opening-rail__person-hours,.opening-rail__staff-note{color:#c4c5c3}
  .opening-rail__timeline,.opening-rail__staff-timeline{background:#505357}
  .opening-rail__staff{border-color:#626569}
  .opening-rail__now,.opening-rail__staff-now{background:#f4f3ef}
  .opening-rail__now::after{background:#f4f3ef;border-color:#292c30;box-shadow:0 0 0 1px #f4f3ef}
  .opening-rail__now-label{background:#e5ddd2;color:#242629}
  .opening-rail[data-opening-state="open"]>summary .opening-rail__dot{background:#9fc9a4}
  .opening-rail__person[data-planned-now="true"] .opening-rail__dot{background:#d4ad78}
  .absence-banner,.absence-art{background:#35312c;color:#f4e3cb;border-color:#756650}
  .absence-banner__art{color:#e5cba6}
  .orni-chatbot__dismiss{background:#383b3f;color:#f4f3ef;border-color:#626569}
  .orni-chatbot__dismiss:hover,.orni-chatbot__dismiss:focus-visible{background:#4a4c4e;color:#fff}
  .orni-chatbot__sound,.orni-chatbot__sound:hover,.orni-chatbot__sound:focus-visible,
  .orni-chatbot__usage,.orni-chatbot__bubble-line--note,#orni-dialog .orni-volume-note{color:#c4c5c3}

  /* Owner-facing event editing uses the same automatic preference. */
  .admin-header,.panel,.status,.preview-top{background:#242629;color:#f4f3ef;border-color:#4a4c4e}
  .admin-header img{background:#fff;padding:4px 10px}
  .admin-header span,.admin-intro>p:last-child,.editor-heading>span,.hint,
  .event-list button small,#image-placeholder p,.overview-table small{color:#c4c5c3}
  .admin-intro .eyebrow,.registration-badge,.text-button{color:#edc99f}
  .event-list button{color:#f4f3ef}.event-list button.active{background:#383b3f}
  .secondary:hover{background:#383b3f;color:#f4f3ef}
  .text-button:hover,.image-editor,.metric{background:#292c30}
  .status.error{color:#ffb9af;border-color:#d88d83}
  .panel input:not([type=checkbox]),.panel textarea{background:#1b1d20;color:#f4f3ef;border-color:#808581}
  .admin-toolbar .button,.panel button:not(.text-button):not(.secondary):not([data-event-id]){border-color:#808581}
  .registrations,.overview-table th{border-color:#808581}

  /* The private photo-selection surface also follows the same preference. */
  html:has(.review-header){--green:#b3d9b6;--red:#ffb9af;--amber:#edc99f}
  .review-toolbar,.auth-message,.image-card,.preview-caption,
  .view-switch,.card-photo,.card-text,.editor-photo,.editor-photo figcaption,
  html:has(.review-header) .editor-top,html:has(.review-header) .editor-actions{
    background:#292c30;color:#f4f3ef;border-color:#626569;box-shadow:none;
  }
  .review-intro span,.legend .open,.gallery-heading p,.card-copy p,
  .text-number,.duplicate-note,.editor-position,
  html:has(.review-header) .eyebrow{color:#c4c5c3}
  .review-toolbar input,.review-toolbar select,#review-form input,#review-form textarea{
    background:#1b1d20;color:#f4f3ef;border-color:#808581;
  }
  .view-switch button,.card-actions button,.decision-buttons button,
  .close-button,.retry-load{background:#383b3f;color:#f4f3ef;border-color:#808581}
  .card-actions button:last-child,.review-open,.review-end{background:#263d30;color:#c4e6ca;border-color:#6c9275}
  .review-end strong,.editor-nav button,.editor-message,.notice{color:#b3d9b6}
  .notice.error,.editor-message.error{color:#ffb9af}
  #review-form label span,#review-form label #caption-label{color:#c4c5c3}
}
@media print{
  :root{color-scheme:light}
}
