/* e-man Front Custom — Information, contact and 404 pages v1.5.0 */
[id^="information-"].container,
#error-not-found.container {
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
  padding: 46px 0 84px;
}
[id^="information-"] > .row,
#error-not-found > .row { margin: 0; }
[id^="information-"] #content,
#error-not-found #content { width: 100%; padding: 0; }
[id^="information-"] .page-title,
#error-not-found .page-title {
  margin: 0 0 28px;
  color: #f7f8fa;
  font-size: clamp(28px, 3vw, 42px);
  font-weight: 800;
  letter-spacing: -.035em;
  text-align: left;
}

/* Generic information article */
#information-information #content,
#information-sitemap #content,
#error-not-found #content {
  padding: 30px;
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 15px;
  background: #20272e;
  box-shadow: 0 18px 50px rgba(0,0,0,.12);
}
#information-information #content > .page-title,
#information-sitemap #content > .page-title,
#error-not-found #content > .page-title { margin-bottom: 22px; }
#information-information #content { color: #c1cad2; font-size: 15px; line-height: 1.8; }
#information-information #content h2,
#information-information #content h3,
#information-information #content h4 { margin: 30px 0 12px; color: #fff; line-height: 1.3; }
#information-information #content h2 { font-size: 24px; }
#information-information #content h3 { font-size: 19px; }
#information-information #content p { margin: 0 0 16px; }
#information-information #content a { color: #9bb6ff; }
#information-information #content ul,
#information-information #content ol { margin: 0 0 18px; padding-left: 22px; }
#information-information #content li { margin-bottom: 7px; }
#information-information #content table { width: 100%; margin: 20px 0; border-collapse: collapse; }
#information-information #content td,
#information-information #content th { padding: 12px; border: 1px solid rgba(255,255,255,.09); }

/* Contact */
#information-contact .our-location,
#information-contact .other-stores .panel,
#information-contact form {
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 15px;
  background: #20272e;
  box-shadow: none;
}
#information-contact .our-location { overflow: hidden; margin-bottom: 24px; }
#information-contact .our-location .panel-body { padding: 25px; }
#information-contact .our-location .row { display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 20px; margin: 0; }
#information-contact .our-location [class*="col-"] { width: auto; padding: 0; }
#information-contact .our-location strong,
#information-contact h3,
#information-contact legend { color: #fff; }
#information-contact .our-location address,
#information-contact .our-location p { color: #aeb8c2; line-height: 1.65; }
#information-contact form { max-width: 900px; margin: 28px auto 0; padding: 26px; }
#information-contact fieldset { margin: 0; }
#information-contact legend {
  margin-bottom: 20px;
  padding-bottom: 13px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  font-size: 19px;
  font-weight: 800;
}
#information-contact .form-group { margin-bottom: 16px; }
#information-contact label { color: #cbd4dc; font-size: 12px; font-weight: 700; }
#information-contact .form-control {
  min-height: 46px;
  padding: 11px 14px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 9px;
  background: #181f25;
  color: #f4f7f9;
  box-shadow: none;
}
#information-contact textarea.form-control { min-height: 150px; resize: vertical; }
#information-contact .form-control:focus { border-color: #84a7ff; box-shadow: 0 0 0 3px rgba(132,167,255,.12); }
#information-contact .buttons { display: flex; justify-content: flex-end; margin-top: 22px; }
#information-contact .btn-primary {
  min-height: 45px;
  padding: 0 22px;
  border-color: #84a7ff;
  border-radius: 9px;
  background: #84a7ff;
  color: #111820;
  font-weight: 800;
}
#information-contact .other-stores .panel-heading { border: 0; background: #1a2127; }
#information-contact .other-stores .panel-title a { display: block; padding: 15px 18px; color: #fff; text-decoration: none; }
#information-contact .other-stores .panel-body { border-top: 1px solid rgba(255,255,255,.08); background: #20272e; color: #c3ccd4; }

/* Sitemap */
#information-sitemap #content > .row {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
  margin: 0;
}
#information-sitemap #content > .row > [class*="col-"] { width: auto; padding: 0; }
#information-sitemap ul { margin: 0; padding: 0; list-style: none; }
#information-sitemap li { margin-bottom: 8px; }
#information-sitemap li a {
  display: block;
  padding: 10px 13px;
  border: 1px solid rgba(255,255,255,.07);
  border-radius: 8px;
  background: #1a2127;
  color: #d7dfe6;
  text-decoration: none;
}
#information-sitemap li a:hover { border-color: rgba(132,167,255,.38); color: #fff; }
#information-sitemap li ul { margin: 8px 0 10px 16px; }

/* 404 */
#error-not-found #content { max-width: 760px; margin: 0 auto; padding: 48px 30px; text-align: center; }
#error-not-found #content::before {
  content: '404';
  display: block;
  margin-bottom: 14px;
  color: #84a7ff;
  font-size: clamp(70px, 12vw, 130px);
  font-weight: 900;
  letter-spacing: -.08em;
  line-height: .85;
  opacity: .85;
}
#error-not-found #content p { color: #aeb8c2; font-size: 15px; }
#error-not-found .buttons { display: flex; justify-content: center; margin-top: 25px; }
#error-not-found .btn-primary {
  min-height: 45px;
  padding: 0 22px;
  border-color: #84a7ff;
  border-radius: 9px;
  background: #84a7ff;
  color: #111820;
  font-weight: 800;
}

@media (max-width: 767px) {
  [id^="information-"].container,
  #error-not-found.container { width: min(100% - 24px, 680px); padding: 30px 0 62px; }
  [id^="information-"] .page-title,
  #error-not-found .page-title { margin-bottom: 20px; font-size: 29px; }
  #information-information #content,
  #information-sitemap #content,
  #error-not-found #content { padding: 20px 16px; }
  #information-contact .our-location .row { grid-template-columns: 1fr; }
  #information-contact form { padding: 20px 16px; }
  #information-contact .form-horizontal .control-label,
  #information-contact .form-horizontal [class*="col-sm-"] { width: 100%; float: none; padding-left: 0; padding-right: 0; text-align: left; }
  #information-contact .form-horizontal .control-label { margin-bottom: 7px; }
  #information-contact .buttons .btn { width: 100%; }
  #information-sitemap #content > .row { grid-template-columns: 1fr; }
}
