/* ===== Locomoto theme (in-house) ===== */

/* Header: measured from the previous builder layout (1420px bar, 122px tall, menu below) */
#header { background: transparent; box-shadow: none; }
.loco-hdr { position: relative; z-index: 100; padding-top: 10px; }
.loco-hdr__inner { max-width: 1420px; margin: 0 auto; }
.loco-hdr__bar {
  display: grid;
  grid-template-columns: 33.66% 36.34% 29.98%;
  align-items: start;
  min-height: 122px;
  box-sizing: border-box;
  background: rgba(10, 22, 34, 0.89);
  border-radius: 10px 10px 0 0;
  box-shadow: 2px 2px 5px 2px rgba(0, 0, 0, 0.15);
  padding: 10px 0 0 10px;
}
.loco-hdr__logo { padding: 12px 0 0 10px; }
.loco-hdr__logo img, .loco-hdr__logo .logo { width: 321px; max-width: 100%; height: auto; }
.loco-hdr__h1 { margin: 0; font-size: inherit; line-height: 0; }
.loco-hdr__search, .loco-hdr__controls { display: flex; justify-content: flex-end; }
.loco-hdr__menu { position: sticky; top: 0; background: rgb(10, 22, 34); border-radius: 0 0 12px 12px; box-shadow: 0 0 6px rgba(0, 0, 0, 0.3); }
.loco-w { width: 100%; }
@media (max-width: 991px) {
  .loco-hdr__bar { grid-template-columns: 1fr auto; padding: 8px; border-radius: 0; }
  .loco-hdr__search { grid-column: 1 / -1; order: 3; }
  .loco-hdr__logo img { width: 200px; }
}

/* Homepage: full-bleed sections like the builder page (no classic container/padding) */
body#index #wrapper { padding: 0; background: transparent; box-shadow: none; }
body#index #wrapper > .container { width: 100%; max-width: none; padding: 0; }
body#index #wrapper .row { margin: 0; }
body#index #content-wrapper, body#index #main { padding: 0; margin: 0; }
body#index .breadcrumb { display: none; }
.loco-home > .loco-w { display: block; }

/* Footer: the widget supplies its own layout */
#footer { background: transparent; padding: 0; }

/* Page background and section boxes, measured from the builder site */
body { background: rgb(107, 68, 35) url("../../../../img/cms/bg.gif"); }
#wrapper { background: transparent; }
.loco-home > .loco-w { max-width: 1440px; margin: 0 auto; padding: 10px; box-sizing: border-box; }
.loco-home > .loco-w--loco-homepage-hero { max-width: none; padding: 0; }

/* Header on phones: one compact row (logo | search icon | menu button), like the builder site */
@media (max-width: 767px) {
  .loco-hdr { padding: 8px 8px 0; }
  .loco-hdr__bar { grid-template-columns: 1fr auto; align-items: center; min-height: 0; padding: 10px 62px 10px 12px; border-radius: 10px; }
  .loco-hdr__logo { padding: 0; height: 34px; overflow: hidden; }
  .loco-hdr__logo img, .loco-hdr__logo .logo { width: 245px; max-width: none; }
  .loco-hdr__search { grid-column: auto; order: 0; justify-content: flex-end; }
  .loco-hdr__controls { display: none; }
  .loco-hdr__menu { background: transparent; box-shadow: none; }
}
@media (max-width: 767px) {
  .loco-hdr__logo { height: 40px; }
  .loco-hdr__bar { box-shadow: 0 2px 0 0 #a47148, 2px 2px 5px 2px rgba(0, 0, 0, 0.15); padding-bottom: 12px; }
}

/* Phones: brand-carousel product cards grow to show name + price; price-drop tabs on one swipeable row */
@media (max-width: 767px) {
  .hp-fb-products-track .lhs-card { height: auto; }
  .hp-fb-products-track .lhs-img { flex: none; height: 260px; }
  .hp-fb-products-track .lhs-meta { min-height: 64px; }
  .hp-prods-tabs { flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }
  .hp-prods-tabs::-webkit-scrollbar { display: none; }
  .hp-prods-tab { flex: 0 0 auto; white-space: nowrap; }
}
@media (max-width: 767px) {
  .hp-fb-products-track { height: auto !important; align-items: stretch; }
  .hp-fb-products-track .lhs-card { height: auto !important; max-height: none; overflow: hidden; }
  .hp-fb-products-track .lhs-meta { overflow: visible; }
}
@media (max-width: 767px) {
  /* Same logo crop on every page (logo is in <h1> on home, in <a> elsewhere) */
  .loco-hdr__logo { height: 36px; line-height: 0; }
  .loco-hdr__logo a, .loco-hdr__logo h1 { display: block; line-height: 0; }
}
/* Menu drawer logo text was clipped (line-height 0 inherited) */
.lhc-drawer-logo { line-height: 1.2; height: auto; overflow: visible; }
.lhc-drawer-logo-text { line-height: 1.2; }

/* WhatsApp hidden for now (operator 12 Nov). Delete this block to bring it back. */
.ets_mm_megamenu .lhc-drawer-wa, .lhc-wa-btn, .lhc-drawer-wa, .smf-wa, .ftb-soc.wa, a[href*="wa.me"], a[href*="api.whatsapp.com"] { display: none !important; }

/* Bike pages (locomoto_bike_parts): same 1440px width as the builder site */
body[id^="module-locomoto_bike_parts"] #wrapper > .container { width: 100%; max-width: 1440px; }

/* Product page: 1440px like the builder site */
body#product #wrapper > .container { width: 100%; max-width: 1440px; }

/* List pages (search, brand, specials): headings readable on the dark background */
#js-product-list-header, #main > h1.h2, .block-category h1{color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:-.5px;text-shadow:0 2px 12px rgba(0,0,0,.35)}
#js-product-list-top .total-products p, #js-product-list-top .sort-by, .products-selection p{color:#d6dde6}
#js-product-list-bottom, .pagination .showing{color:#d6dde6}

/* Contact page */
body#contact #wrapper > .container{width:100%;max-width:1200px}
body#contact #content-wrapper{width:100%;max-width:100%;flex:0 0 100%}
.loco-contact{padding:10px 0 40px}
.loco-contact-h1{font-family:'Inter',system-ui,sans-serif;font-size:34px;font-weight:900;text-transform:uppercase;letter-spacing:-1px;color:#fff;margin:6px 0 6px;text-shadow:0 2px 12px rgba(0,0,0,.35)}
.loco-contact-lead{color:#d6dde6;font-size:15px;max-width:640px;margin:0 0 18px}
.loco-contact-grid{display:grid;grid-template-columns:340px minmax(0,1fr);gap:18px;align-items:start}
.loco-contact-card{background:rgb(10,22,34);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:20px;color:#e8edf3;display:flex;flex-direction:column;gap:16px}
.loco-contact-row{display:flex;gap:12px;font-size:14px;line-height:1.45}
.loco-contact-row strong{color:#fff}
.loco-contact-row a{color:#ffb27a}
.loco-contact-ic{flex:0 0 34px;height:34px;border-radius:10px;background:rgba(255,96,0,.14);display:flex;align-items:center;justify-content:center;font-size:16px}
.loco-contact-form{background:#fff;border-radius:18px;padding:22px 24px;box-shadow:0 6px 24px rgba(0,0,0,.12)}
.loco-contact-form .contact-form{background:none;padding:0;box-shadow:none;border:0}
.loco-contact-form .contact-form h3{font-weight:900;font-size:18px;text-transform:none;margin-bottom:14px}
.loco-contact-form .form-control{border-radius:10px;border:1.5px solid #d6dbe2;min-height:44px}
.loco-contact-form textarea.form-control{min-height:140px}
.loco-contact-form .btn-primary{background:#ff6000;border:0;border-radius:12px;padding:12px 26px;font-weight:800;box-shadow:0 6px 18px rgba(255,96,0,.3)}
@media (max-width:767px){.loco-contact-grid{grid-template-columns:minmax(0,1fr)}.loco-contact-h1{font-size:26px}.loco-contact-form{padding:18px 16px}}
body#contact #content, body#contact .page-content, body#contact #main .page-content.card{background:transparent!important;box-shadow:none!important;border:0!important;padding:0!important}

/* ===== Cart, checkout, account, login: same card style as the rest ===== */
body#cart #wrapper > .container, body#checkout #wrapper > .container,
body#my-account #wrapper > .container, body#authentication #wrapper > .container,
body#registration #wrapper > .container, body#password #wrapper > .container,
body[id^="module-"] #wrapper > .container.loco-acc, body#history #wrapper > .container, body#order-detail #wrapper > .container,
body#addresses #wrapper > .container, body#address #wrapper > .container, body#identity #wrapper > .container, body#order-confirmation #wrapper > .container{width:100%;max-width:1200px}
body#cart .card, body#checkout .card, body#checkout section.checkout-step, body#my-account .page-content, body#authentication .page-content,
body#registration .page-content, body#password .page-content, body#history .page-content, body#order-detail .page-content, body#addresses .page-content,
body#address .page-content, body#identity .page-content, body#order-confirmation .card{background:#fff;border:0;border-radius:18px;box-shadow:0 6px 24px rgba(0,0,0,.12);overflow:hidden}
body#cart h1, body#checkout .step-title, body#cart .card-block h1{font-family:'Inter',system-ui,sans-serif;font-weight:900;letter-spacing:-.3px}
body#cart h1{font-size:22px;text-transform:uppercase}
body#my-account .page-header h1, body#authentication .page-header h1, body#registration .page-header h1, body#password .page-header h1,
body#history .page-header h1, body#order-detail .page-header h1, body#addresses .page-header h1, body#address .page-header h1, body#identity .page-header h1,
body#checkout h1, body#order-confirmation h3.card-title{color:#fff;font-family:'Inter',system-ui,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.5px;text-shadow:0 2px 12px rgba(0,0,0,.35)}
body#order-confirmation .card h3.card-title{color:#1f6b43;text-shadow:none}
body#cart .btn-primary, body#checkout .btn-primary, body#my-account .btn-primary, body#authentication .btn-primary, body#registration .btn-primary,
body#password .btn-primary, body#address .btn-primary, body#identity .btn-primary, body#order-detail .btn-primary{background:#ff6000;border:0;border-radius:12px;padding:12px 22px;font-weight:800;text-transform:none;box-shadow:0 6px 18px rgba(255,96,0,.28)}
body#cart .btn-primary:hover, body#checkout .btn-primary:hover{background:#ff7a20}
body#cart .cart-summary .btn-primary{width:100%;padding:14px 22px;font-size:15px}
body#checkout .form-control, body#authentication .form-control, body#registration .form-control, body#address .form-control, body#identity .form-control, body#password .form-control{border-radius:10px;border:1.5px solid #d6dbe2;min-height:44px}
body#checkout section.checkout-step{margin-bottom:14px}
body#checkout section.checkout-step .step-title{padding:16px 20px;font-size:16px;text-transform:uppercase}
body#checkout section.checkout-step.-current .step-title{color:#ff6000}
body#checkout section.checkout-step.-complete .step-title .done{color:#22a05a}
body#checkout #js-checkout-summary, body#cart .cart-summary{border-radius:18px}
body#cart .product-line-grid-left img, body#checkout .media-left img{border-radius:10px;background:#fff}
body#my-account .link-item{border-radius:14px;background:#f6f7f9;box-shadow:none;transition:background .15s,transform .15s}
body#my-account .link-item:hover{background:rgba(255,96,0,.08);transform:translateY(-2px)}
body#my-account .link-item i{color:#ff6000}
body#cart .cart-grid-body > a.label, body#cart .cart-grid-body > a.label i{color:#d6dde6}
/* checkout header / footer */
body#checkout #header{background:transparent;box-shadow:none}
.loco-co-hdr{max-width:1200px;margin:14px auto 6px;padding:12px 18px;display:flex;align-items:center;gap:16px;background:rgba(10,22,34,.89);border-radius:14px}
.loco-co-logo img{height:44px;width:auto;display:block}
.loco-co-logo h1{margin:0}
.loco-co-secure{color:#9fe3b9;font-weight:800;font-size:13px;letter-spacing:.02em}
.loco-co-back{margin-left:auto;color:#ffb27a;font-weight:700;font-size:13px;text-decoration:none}
.loco-co-foot{max-width:1200px;margin:20px auto 30px;padding:0 16px;text-align:center;color:#9fb0c2;font-size:12.5px}
.loco-co-foot a{color:#ffb27a}
body#checkout #footer{background:transparent;padding:0}
@media (max-width:767px){.loco-co-hdr{margin:8px 10px 4px;padding:10px 12px;gap:10px}.loco-co-logo img{height:30px}.loco-co-secure{font-size:11.5px}}
#header .loco-co-logo img.logo{height:44px!important;width:auto!important;max-width:none}
@media (max-width:767px){#header .loco-co-logo img.logo{height:30px!important}}
body#checkout section.checkout-step.-complete .step-title, body#checkout section.checkout-step .step-title{color:#1d2b3a}body#checkout section.checkout-step.-current .step-title{color:#ff6000}body#checkout section.checkout-step.-unreachable .step-title{color:#9aa1ad}

/* Info pages, brands, 404: readable headings + card content */
body#cms .page-header h1, body#manufacturer .page-header h1, body#manufacturer #main > h1, body#pagenotfound .page-header h1, body#stores .page-header h1, body#sitemap .page-header h1{color:#fff;font-family:'Inter',system-ui,sans-serif;font-weight:900;text-transform:uppercase;letter-spacing:-.5px;text-shadow:0 2px 12px rgba(0,0,0,.35)}
body#cms #wrapper > .container, body#pagenotfound #wrapper > .container{max-width:1100px}
body#cms #content.page-cms{background:#fff;border-radius:18px;box-shadow:0 6px 24px rgba(0,0,0,.12);padding:26px 30px;font-size:15px;line-height:1.6;color:#1d2b3a}
body#cms #content.page-cms h2, body#cms #content.page-cms h3, body#cms #content.page-cms strong{color:#111}
body#cms #content.page-cms a{color:#ff6000}
@media (max-width:767px){body#cms #content.page-cms{padding:18px 16px;font-size:14.5px}}
.loco-404{background:#fff;border-radius:18px;box-shadow:0 6px 24px rgba(0,0,0,.12);padding:34px 26px;text-align:center;max-width:640px;margin:10px auto 30px}
.loco-404-icon{font-size:42px;margin-bottom:6px}
.loco-404 h4{font-family:'Inter',system-ui,sans-serif;font-weight:900;font-size:22px;color:#111;margin:0 0 8px}
.loco-404 p{color:#5a6a7a;margin:0 0 18px}
.loco-404-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:16px}
.loco-404-btn{display:inline-block;padding:12px 22px;border-radius:12px;background:#ff6000;color:#fff!important;font-weight:800;text-decoration:none!important;box-shadow:0 6px 18px rgba(255,96,0,.28)}
.loco-404-btn--ghost{background:#fff;color:#1d2b3a!important;border:1.5px solid #d6dbe2;box-shadow:none}
body#manufacturer .brand{background:#fff;border-radius:14px}
