/* Shared editorial pages and contact information. */
.wrapper.news-ext { background-attachment: fixed !important; }
.wrapper.news-ext::before { display: none !important; }

html:has(.news-ext, .contacts), body:has(.news-ext, .contacts) { height: auto !important; overflow-x: clip !important; overflow-y: visible !important; }
.wrapper.news-ext, .wrapper.contacts { height: auto !important; min-height: 100vh; overflow: clip !important; }
.wrapper.news-ext.news-ext .content, .wrapper.contacts .contacts-content {
  display: grid !important; grid-template-columns: 280px minmax(0, 1fr) !important;
  width: 100% !important; max-width: 1440px !important; height: auto !important;
  margin: 0 auto !important; padding: 180px 40px 56px !important; gap: 28px !important;
  align-items: start !important; box-sizing: border-box; overflow: visible !important;
}
.wrapper.news-ext.news-ext .content::before, .wrapper.news-ext.news-ext .content::after { content: none !important; }
.wrapper.news-ext.news-ext .content > .lcol, .wrapper.news-ext.news-ext .content > .rcol {
  position: static !important; float: none !important; width: auto !important; min-width: 0; max-width: none !important;
  margin: 0 !important; padding: 0 !important; height: auto !important;
}
.wrapper.news-ext.news-ext .product-list.news-menu-ext,
.wrapper.news-ext.news-ext .news-list-wrapper,
.wrapper.contacts .contacts-panel, .wrapper.contacts .contacts-map-card {
  box-sizing: border-box; background: rgba(24,23,21,.52) !important;
  border: 1px solid #ffffff24 !important; border-radius: 20px !important;
  box-shadow: none !important; -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px);
}
.wrapper.news-ext.news-ext .product-list.news-menu-ext { width: 100% !important; max-height: none !important; padding: 12px !important; margin: 0 !important; }
.wrapper.news-ext.news-ext .product-list.news-menu-ext li {
  position: static !important; width: auto !important; height: auto !important; padding: 0 !important;
  margin: 2px 0 !important; border: 0 !important; background: none !important; border-radius: 10px !important;
}
.wrapper.news-ext.news-ext .product-list.news-menu-ext li::before { content: none !important; }
.wrapper.news-ext.news-ext .product-list.news-menu-ext li a {
  position: static !important; display: block !important; padding: 14px !important; margin: 0 !important;
  font-size: 16px !important; line-height: 1.4 !important; color: #eee8e2 !important;
  background: none !important; border: 0 !important; border-radius: 10px !important; box-shadow: none !important;
  white-space: normal !important; opacity: 1 !important; text-transform: none !important; text-align: left !important;
}
.wrapper.news-ext.news-ext .product-list.news-menu-ext li.active a { background: #a92927 !important; color: white !important; }
.wrapper.news-ext.news-ext .product-list.news-menu-ext a:hover { background: #ffffff10 !important; }
.wrapper.news-ext.news-ext .news-list-wrapper { width: 100% !important; max-width: none !important; height: auto !important; max-height: none !important; padding: 36px !important; overflow: visible !important; animation: none !important; }
.wrapper.news-ext.news-ext .page-heading { margin: 0 0 28px; font-size: clamp(30px, 3vw, 42px); line-height: 1.1; color: white; text-transform: none; letter-spacing: -.02em; text-align: left !important; }
.wrapper.news-ext.news-ext .news-list-wrapper p { max-width: 68ch; font-size: 17px !important; line-height: 1.7 !important; color: #eee8e2 !important; font-family: var(--font-regular) !important; padding: 0 !important; margin: 0 0 20px !important; border: 0 !important; }
.wrapper.news-ext.news-ext .news-wrapper, .wrapper.news-ext.news-ext .news-content-wrapper { padding: 0 !important; margin: 0 !important; background: transparent !important; border: 0 !important; box-shadow: none !important; transform: none !important; }
.wrapper.news-ext.news-ext .news > li { padding: 0 0 32px !important; margin: 0 0 32px !important; border-bottom: 1px solid #ffffff24 !important; }
.wrapper.news-ext.news-ext .news > li:last-child { border-bottom: 0 !important; padding-bottom: 0 !important; margin-bottom: 0 !important; }
.wrapper.news-ext.news-ext .news-content-wrapper h3 { font-size: 26px !important; line-height: 1.3 !important; margin: 0 0 18px !important; text-transform: none !important; text-wrap: balance; }
.wrapper.news-ext.news-ext .news-content-wrapper .date { display: block; font-size: 14px !important; color: #d2bab1 !important; margin-top: 16px; }
.wrapper.news-ext.news-ext .lcol-left-fixed-right-fluid { width: 30% !important; margin: 0 28px 20px 0 !important; }
.wrapper.news-ext.news-ext .ccol-left-fixed-right-fluid { width: auto !important; margin: 0 !important; padding: 0 !important; overflow: hidden; }
.wrapper.news-ext.news-ext .news img { max-width: 100%; height: auto; border-radius: 12px !important; }
.wrapper.news-ext.news-ext video { width: 100% !important; max-width: 100% !important; height: auto !important; border-radius: 12px; }
.wrapper.news-ext.news-ext .history-list { margin: 36px 0 0 !important; padding: 0 !important; }
.wrapper.news-ext.news-ext .history-list::before, .wrapper.news-ext.news-ext .history-list li::before { content: none !important; }
.wrapper.news-ext.news-ext .history-list li { padding: 22px 0 !important; margin: 0 !important; border: 0 !important; border-top: 1px solid #ffffff24 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; transform: none !important; }
.wrapper.news-ext.news-ext .history-list dt { font-size: 28px !important; color: #ffaaa0; }
.wrapper.news-ext.news-ext .history-list .caption { display: block; font-size: 16px !important; line-height: 1.4; margin: 6px 0; color: white; }
.wrapper.news-ext.news-ext .history-list dd { font-size: 17px !important; line-height: 1.6; margin: 8px 0 0; color: #eee8e2; }
.section-picker { display: none; }
.wrapper.news-ext :focus-visible, .wrapper.contacts .contacts-content :focus-visible { outline: 2px solid #ffb7a4 !important; outline-offset: 3px; }

.wrapper.contacts .contacts-content { grid-template-columns: minmax(0, 1.15fr) minmax(0, .85fr) !important; align-items: stretch !important; }
.wrapper.contacts .contacts-panel { padding: 36px !important; }
.wrapper.contacts .contacts-overline { font-size: 16px !important; line-height: 1.4; letter-spacing: 0 !important; text-transform: none !important; color: #d3ccc5; }
.wrapper.contacts .contacts-intro h1 { font-size: clamp(34px, 3.5vw, 48px) !important; line-height: 1.1; letter-spacing: -.025em; text-transform: none !important; margin: 12px 0 20px; }
.wrapper.contacts .contacts-lead { font-size: 18px !important; line-height: 1.6 !important; max-width: 42ch; }
.wrapper.contacts .contacts-grid { grid-template-columns: 1fr !important; gap: 0 !important; margin: 28px 0 0 !important; }
.wrapper.contacts .contact-card { padding: 20px 0 20px 62px !important; min-height: 0 !important; gap: 5px !important; border: 0 !important; border-top: 1px solid #ffffff24 !important; border-radius: 0 !important; background: none !important; box-shadow: none !important; }
.wrapper.contacts .contact-card-icon { left: 0 !important; top: 22px !important; width: 42px !important; height: 42px !important; border-radius: 10px !important; background-color: #ffffff0d !important; }
.wrapper.contacts .contact-card-title { font-size: 14px !important; text-transform: none !important; letter-spacing: 0 !important; color: #d3ccc5 !important; }
.wrapper.contacts .contact-card-value { font-size: 19px !important; line-height: 1.5 !important; color: white !important; overflow-wrap: anywhere; }
.wrapper.contacts .contact-card:hover .contact-card-value { color: #ffb7a4 !important; }
.wrapper.contacts .contacts-social-list { flex-direction: row !important; flex-wrap: wrap; gap: 12px; }
.wrapper.contacts .contacts-social-link { padding: 4px 0 !important; min-height: 36px; border: 0 !important; background: none !important; font-size: 16px; }
.wrapper.contacts .contacts-social-note { display: none; }
.wrapper.contacts .contacts-social-icon { width: 28px; height: 28px; background: none !important; border: 0 !important; }
.wrapper.contacts .contacts-social-icon::after { inset: 3px; }
.wrapper.contacts .contacts-actions { gap: 12px; }
.wrapper.contacts .contact-btn { min-height: 48px; box-sizing: border-box; padding: 12px 20px; border-radius: 12px !important; background: #a92927; font-size: 16px !important; letter-spacing: 0 !important; text-transform: none !important; }
.wrapper.contacts .contact-btn--ghost { background: #ffffff08; border-color: #ffffff30; }
.wrapper.contacts .contacts-map-card { min-height: 500px !important; }
.wrapper.contacts .contacts-map-header { flex-direction: column; align-items: flex-start; padding: 24px !important; gap: 10px; background: transparent !important; }
.wrapper.contacts .contacts-map-header span { font-size: 22px !important; letter-spacing: 0 !important; text-transform: none !important; color: white; }
.wrapper.contacts .contacts-map-link { font-size: 16px !important; min-height: 32px; line-height: 2; }
.wrapper.contacts .map-wrapper { min-height: 400px !important; width: 100% !important; margin: 0 !important; border: 0 !important; border-radius: 0 !important; }
.wrapper.contacts #map { display: block; width: 100%; min-height: 400px !important; height: 100% !important; border: 0; }
@media (min-width: 1024px) {
  .wrapper.contacts .contacts-content { max-width: 1240px !important; min-height: 100dvh; padding: 160px 32px 56px !important; gap: 24px !important; align-content: center; }
  .wrapper.contacts .contacts-panel { padding: 28px !important; }
  .wrapper.contacts .contacts-intro h1 { font-size: 38px !important; margin: 10px 0 14px; }
  .wrapper.contacts .contacts-overline { font-size: 14px !important; }
  .wrapper.contacts .contacts-lead { font-size: 16px !important; }
  .wrapper.contacts .contacts-grid { margin-top: 20px !important; }
  .wrapper.contacts .contact-card { padding: 15px 0 15px 54px !important; }
  .wrapper.contacts .contact-card-icon { top: 17px !important; width: 36px !important; height: 36px !important; }
  .wrapper.contacts .contact-card-value { font-size: 17px !important; }
  .wrapper.contacts .contact-card-title { font-size: 13px !important; }
  .wrapper.contacts .contacts-actions { margin-top: 18px; }
  .wrapper.contacts .contact-btn { min-height: 44px; padding: 10px 16px; font-size: 15px !important; }
  .wrapper.contacts .contacts-map-header { padding: 20px !important; }
  .wrapper.contacts .contacts-map-header span { font-size: 20px !important; }
  .wrapper.contacts .contacts-map-link { font-size: 14px !important; }
}
@media (max-width: 1023px) {
  .wrapper.news-ext.news-ext .content, .wrapper.contacts .contacts-content { padding: 150px 24px 40px !important; gap: 20px !important; }
  .wrapper.news-ext.news-ext .content { grid-template-columns: 240px minmax(0, 1fr) !important; }
  .wrapper.news-ext.news-ext .news-list-wrapper { padding: 28px !important; }
  .wrapper.contacts .contacts-content { grid-template-columns: 1fr !important; }
}
@media (max-width: 767px) {
  .wrapper.news-ext.news-ext .content, .wrapper.contacts .contacts-content { grid-template-columns: 1fr !important; padding: 112px 16px 32px !important; gap: 16px !important; }
  .wrapper.news-ext.news-ext .sub-menu-switcher { display: none !important; }
  .wrapper.news-ext.news-ext .section-picker { display: block; padding: 14px; border: 1px solid #ffffff24; border-radius: 16px; background: rgba(24,23,21,.52); backdrop-filter: blur(6px); color: #d3ccc5; font-size: 14px; }
  .section-picker select { display: block; box-sizing: border-box; width: 100%; min-width: 0; height: 48px; margin-top: 8px; padding: 0 12px; border: 1px solid #ffffff30; border-radius: 10px; background: #302b28; color: white; font: 16px var(--font-regular); color-scheme: dark; }
  .wrapper.news-ext.news-ext .section-picker + .product-list.news-menu-ext { display: none !important; }
  .wrapper.news-ext.news-ext .news-list-wrapper, .wrapper.contacts .contacts-panel { padding: 24px 18px !important; }
  .wrapper.news-ext.news-ext .news-content-wrapper h3 { font-size: 23px !important; }
  .wrapper.news-ext.news-ext .lcol-left-fixed-right-fluid { float: none !important; width: 100% !important; margin: 0 0 20px !important; }
  .wrapper.news-ext.news-ext .news .lcol-left-fixed-right-fluid img { width: 100%; max-height: 320px; object-fit: contain; }
  .wrapper.contacts .contact-card { padding-left: 52px !important; }
  .wrapper.contacts .contact-card-value { font-size: 17px !important; }
  .wrapper.contacts .contacts-actions > a { flex: 1 1 auto; }
  .wrapper.contacts .contacts-map-card { min-height: 400px !important; }
  .wrapper.contacts .map-wrapper, .wrapper.contacts #map { min-height: 320px !important; }
}

/* All About and News pages share the same viewport-sized pair of panels. */
html:has(.news-ext), body:has(.news-ext) { height: 100% !important; overflow: hidden !important; }
.wrapper.news-ext { height: 100dvh !important; min-height: 0 !important; }
.wrapper.news-ext.news-ext .content { height: 100dvh !important; max-width: 1360px !important; grid-template-rows: minmax(0, 1fr); }
.wrapper.news-ext.news-ext .content > .lcol,
.wrapper.news-ext.news-ext .content > .rcol { height: 100% !important; min-height: 0; }
.wrapper.news-ext.news-ext .news-menu-ext,
.wrapper.news-ext.news-ext .news-list-wrapper {
  height: 100% !important; max-height: 100% !important; min-height: 0; margin: 0 !important;
  overflow-y: auto !important; overflow-x: hidden !important;
  overscroll-behavior-y: contain; scrollbar-width: thin; scrollbar-color: #a89b91 transparent;
}
.wrapper.news-ext.news-ext .sub-menu-switcher { display: none !important; }
.wrapper.news-ext.news-ext .company-group-canvas-wrapper::before { content: none !important; }
.wrapper.news-ext.news-ext .company-group-canvas {
  position: static; width: 100%; height: auto; display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr)); gap: 16px;
}
.wrapper.news-ext.news-ext .company-group-canvas > li {
  position: static !important; width: auto; height: auto; margin: 0; padding: 0;
  min-width: 0; animation: none; border-bottom: 1px solid #ffffff24;
}
.wrapper.news-ext.news-ext .company-group-canvas .company-group-center { grid-column: 1 / -1; display: flex; align-items: center; gap: 20px; padding: 0 0 20px; }
.wrapper.news-ext.news-ext .company-group-element a { display: flex; align-items: center; gap: 16px; min-height: 116px; padding: 12px 0; box-sizing: border-box; }
.wrapper.news-ext.news-ext .company-group-canvas img { display: block !important; flex: 0 0 72px; width: 72px; max-height: 100px; object-fit: contain; transform: none; }
.wrapper.news-ext.news-ext .company-group-canvas .company-group-legend {
  position: static !important; display: block; width: auto; min-width: 0; margin: 0;
  font-size: 16px; line-height: 1.5; text-align: left; overflow-wrap: anywhere;
}
@media (max-width: 767px) {
  .wrapper.news-ext.news-ext .content { grid-template-rows: auto minmax(0, 1fr); padding-bottom: 16px !important; }
  .wrapper.news-ext.news-ext .content > .lcol { height: auto !important; }
}
