/* Shared brand finish. Loaded after each page family so captured styles cannot change the site identity. */
.mahj-site .mc-footer{background:var(--mahj-cream);color:var(--mahj-pine);padding-block:64px 28px}
.mc-footer-grid{display:grid;grid-template-columns:1.8fr 1fr 1.15fr .85fr;gap:40px}
.mahj-site .mc-footer .mahj-wordmark{display:inline-block;padding:0;background:transparent;border-radius:0}
.mahj-site .mc-footer .mahj-logo-frame{width:220px}
.mahj-site .mc-footer-brand p{font-size:14px;line-height:1.7;color:var(--mahj-muted);margin:18px 0}
.mahj-site .mc-footer-inquiry{display:inline-block;font-size:13px;border-bottom:1px solid var(--mahj-line);padding-block:4px}
.mahj-site .mc-footer .mc-footer-group{display:flex;flex-direction:column;align-items:start;gap:13px;font-size:13px}
.mc-footer-group h2{font:500 10px/1.5 var(--mahj-body);letter-spacing:.12em;margin:0 0 8px;color:var(--mahj-muted)}
.mc-footer-group a{padding-block:2px}
.mc-footer-legal{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-top:48px;border-top:1px solid var(--mahj-line);padding-top:24px;font-size:11px;color:var(--mahj-muted)}
.mahj-site .mc-footer-legal p{font-size:11px;line-height:1.7;margin:0}.mc-footer-legal a{font-size:12px;white-space:nowrap}

.mahj-site {
  --mahj-content-width: 1440px;
  --mahj-gutter: 5%;
  --mahj-section-space: 64px;
  -webkit-font-smoothing: antialiased;
}
.mahj-site > .container { width: 100%; max-width: none; padding: 0; margin: 0; background: var(--mahj-cream); }
.mahj-site :is(.mahj-header,.mahj-footer) { width: 100%; float: none; font-family: var(--mahj-body); }
.mahj-site .mahj-header { border-bottom: 1px solid var(--mahj-line); }
/* Source scripts inject a second mobile toolbar and a red scroll control.
   The shared navigation and accessible footer link already provide both actions. */
.mahj-site :is(.mobile-head-items,.gotop) { display: none !important; }
.mahj-site .mahj-footer { border-top: 1px solid var(--mahj-line); }
.mahj-site .mahj-footer :is(a,p,h2) { text-transform: none; }
.mahj-site .mahj-footer .mc-footer-group h2 { font: 500 10px/1.5 var(--mahj-body); letter-spacing: .12em; }
.mahj-site .mahj-footer a { color: var(--mahj-pine); }
.mahj-site .mahj-footer a:focus-visible { outline: 2px solid var(--mahj-clay); outline-offset: 4px; }
.mahj-site :is(.mahj-button,.fl-button,.product-btn-wrap .email,.replica-inquiry .button) { letter-spacing: 0; text-transform: none; }

/* Editorial typography for all inherited product, article and landing pages. */
.mahj-site .mahj-legacy-content { font: 400 16px/1.75 var(--mahj-body); color: var(--mahj-pine); background: var(--mahj-cream); }
.mahj-site .mahj-legacy-content :is(p,li,td,th,div.entry,.fl-rich-text,.product-meta) { font-family: var(--mahj-body) !important; }
.mahj-site .mahj-legacy-content :is(h1,h2,h3,h4,h5,h6,.fl-heading-text) {
  font-family: var(--mahj-display) !important; font-weight: 500 !important;
  line-height: 1.15 !important; letter-spacing: -.025em; text-transform: none; color: var(--mahj-pine);
}
.mahj-site .mahj-legacy-content h1 { font-size: clamp(42px,5vw,64px) !important; }
.mahj-site .mahj-legacy-content h2 { font-size: clamp(32px,3.3vw,46px) !important; }
.mahj-site .mahj-legacy-content h3 { font-size: 29px !important; }
.mahj-site .mahj-legacy-content h4 { font-size: 25px !important; }
.mahj-site .mahj-legacy-content :is(h1,h2,h3,h4,h5,h6) :is(span,strong,b,font) { font: inherit !important; color: inherit !important; }
.mahj-site .mahj-legacy-content :is(.entry,.fl-rich-text,.product-meta) :is(p,li) { font-size: 16px; line-height: 1.8; color: var(--mahj-muted); }
.mahj-site .mahj-legacy-content :is(.entry,.fl-rich-text,.product-meta) :is(span,font) { font-family: inherit !important; color: inherit; }
.mahj-site .mahj-legacy-content p { margin-block: 0 18px; }
.mahj-site .mahj-legacy-content .entry :is(h2,h3,h4) { margin-block: 36px 16px; }
.mahj-site .mahj-legacy-content :is(.entry,.fl-rich-text) a:not(:is(.fl-button,.mahj-style-card-link)) { color: var(--mahj-clay); text-underline-offset: 4px; }
.mahj-site .mahj-legacy-content img { max-width: 100%; }
.mahj-site .mahj-legacy-content .fl-row-bg-photo :is(h1,h2,h3,h4,p,.fl-heading-text) { color: var(--mahj-cream) !important; }
.mahj-site .mahj-legacy-content .fl-row-bg-photo .fl-rich-text { color: var(--mahj-sage); }
.mahj-site .mahj-legacy-content .fl-row-bg-color > .fl-row-content-wrap { background: var(--mahj-sage); }
.mahj-site .mahj-legacy-content .fl-row-bg-none > .fl-row-content-wrap { background: transparent; }
.mahj-site .mahj-legacy-content .fl-callout { border-color: var(--mahj-line); }
.mahj-site .mahj-legacy-content .fl-callout-title { font: 500 29px/1.15 var(--mahj-display); }

/* Builder copy rows already have outer section spacing. Do not stack a row's
   padding, module margins and editorial heading margins around every FAQ. */
.mahj-site .mahj-legacy-content .mahj-copy-row > .fl-row-content-wrap { padding-block: 20px; min-height: 0; height: auto; }
.mahj-site .mahj-legacy-content .mahj-copy-row .fl-col-content { min-height: 0; height: auto; }
.mahj-site .mahj-legacy-content .mahj-copy-row .fl-module-content { margin-block: 0; }
.mahj-site .mahj-legacy-content .mahj-copy-row .fl-module + .fl-module .fl-module-content { margin-top: 12px; }
.mahj-site .mahj-legacy-content .mahj-copy-row .fl-heading { margin-block: 0; }
.mahj-site .mahj-legacy-content .mahj-copy-row .fl-rich-text > :last-child { margin-bottom: 0; }
.mahj-site .mahj-legacy-content .mahj-divider-row > .fl-row-content-wrap { padding-block: 12px; min-height: 0; height: auto; }
.mahj-site .mahj-legacy-content .mahj-divider-row .fl-module-content { margin-block: 0; }
.mahj-site .mahj-legacy-content .mahj-divider-row .fl-separator { margin-block: 0; border-color: var(--mahj-line); }

/* Shared page width and rhythm; article columns stay narrower for reading. */
.mahj-site .mahj-legacy-content.page_main { padding-block: 48px 72px; }
.mahj-site .mahj-legacy-content > .layout,
.mahj-site .mahj-legacy-content > .geo-procurement-guides,
.mahj-site .path_bar > .layout {
  width: 100%; max-width: var(--mahj-content-width); margin-inline: auto; padding-inline: var(--mahj-gutter);
}
.mahj-site .mahj-legacy-content.global_page > .layout { padding-block: 32px 64px; }
.mahj-site .path_bar { background: var(--mahj-sage); border: 0; color: var(--mahj-pine); font: 13px/1.7 var(--mahj-body); }
.mahj-site .path_bar .path_nav { padding-block: 18px; }
.mahj-site .path_bar a { color: var(--mahj-pine); }
.mahj-site .mahj-legacy-content .page_title { margin: 0 0 32px; padding: 0; border: 0; }
.mahj-site .mahj-legacy-content .page_title::after { display: none; }
.mahj-journal-article .mahj-legacy-content > .layout { max-width: 1040px; }
.mahj-site .mahj-legacy-content .blog-article { border: 1px solid var(--mahj-line); background: #fff; padding: clamp(24px,4vw,56px); }
.mahj-site .mahj-legacy-content .geo-editorial-note { background: var(--mahj-sage); border: 0; padding: 24px; margin-top: 32px; font-size: 14px; }
.mahj-site .mahj-legacy-content .geo-procurement-guides { margin-block: 48px 0; padding-block: 32px; border-top: 1px solid var(--mahj-line); }
.mahj-site .mahj-legacy-content .geo-procurement-guides a { color: var(--mahj-clay); text-decoration: underline; text-underline-offset: 4px; }
.mahj-site .mahj-table-scroll { border: 1px solid var(--mahj-line); background: var(--mahj-cream); }
.mahj-site .mahj-table-scroll table { width: 100%; border-collapse: collapse; font: 14px/1.7 var(--mahj-body); }
.mahj-site .mahj-table-scroll :is(td,th) { border: 1px solid var(--mahj-line) !important; padding: 14px 18px; color: var(--mahj-pine); background: transparent; }
.mahj-site .mahj-table-scroll th { background: var(--mahj-sage); font-weight: 500; text-align: left; }

/* Products use the same quiet image surfaces, buttons and separators as the catalog. */
.mahj-site .product-intro { gap: 48px; }
.mahj-site .product-summary .product-meta { color: var(--mahj-muted); }
.mahj-site .product-summary .product-meta h3 { margin-bottom: 16px; }
.mahj-site .product-image { background: #fff; border: 1px solid var(--mahj-line); }
.mahj-site .image-additional .image-item { border-color: var(--mahj-line); }
.mahj-site .image-additional .image-item.current { border-color: var(--mahj-pine); }
.mahj-site .product-btn-wrap .email,
.mahj-site .replica-inquiry .button,
.mahj-site .fl-button { display: inline-flex; justify-content: center; align-items: center; gap: 8px; min-height: 54px; padding: 15px 24px; font: 400 15px/1.5 var(--mahj-body); border: 1px solid var(--mahj-pine); border-radius: 0; cursor: pointer; }
.mahj-site :is(.product-btn-wrap .email,.replica-inquiry .button,.fl-button):hover { background: #28594e !important; }
.mahj-site .detail-tabs { border-bottom: 1px solid var(--mahj-line); background: transparent; display: flex; flex-wrap: wrap; gap: 8px 28px; }
.mahj-site .mahj-legacy-content .detail-tabs .tab-title { border: 0; background: transparent; color: var(--mahj-muted); font: 400 15px/1.5 var(--mahj-body) !important; padding: 18px 0; margin: 0; }
.mahj-site .detail-tabs .tab-title.current { border-bottom: 2px solid var(--mahj-pine); color: var(--mahj-pine); }
.mahj-site .goods-may-like { margin-top: 48px; border-top: 1px solid var(--mahj-line); padding-top: 32px; }
.mahj-site :is(.product_item,.blog-item) { border-color: var(--mahj-line); background: transparent; box-shadow: none; }
.mahj-site .mahj-legacy-content :is(.item-title,.item_title) { font-size: 25px !important; line-height: 1.2 !important; }
.mahj-site .mahj-legacy-content .item-detail { color: var(--mahj-muted); font: 14px/1.75 var(--mahj-body); }
.mahj-site .blog_list .item-info { padding-block: 24px; }
.mahj-site .blog_list .item-more { color: var(--mahj-clay); font: 13px/1.5 var(--mahj-body); background: transparent; border: 0; text-decoration: underline; text-underline-offset: 5px; }
.mahj-site .blog_list > ul { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 40px 28px; padding: 0; margin: 0; }
.mahj-site .blog_list .blog-item { padding: 0; margin: 0; width: auto; min-width: 0; border: 0; border-bottom: 1px solid var(--mahj-line); list-style: none; }
.mahj-site .blog_list .item-wrap { display: flex; flex-direction: column; height: 100%; margin: 0; }
.mahj-site .blog_list .item-img { display: block; float: none; width: 100%; max-width: none; padding: 0; border: 0; border-radius: 0; aspect-ratio: 4/3; background: #fff; }
.mahj-site .blog_list .item-img img { display: block; width: 100%; height: 100%; object-fit: contain; }
.mahj-site .blog_list .item-info { width: 100%; float: none; flex: 1; }
.mahj-site .blog_list .item-info time { color: var(--mahj-muted); font: 12px/1.5 var(--mahj-body); }
.mahj-site .blog_list .item-detail { margin-block: 14px 18px; }
.mahj-site .blog_list .item-info .item-more { color: var(--mahj-clay) !important; padding: 4px 0; }
.mahj-site .blog_list .item-more::before,.mahj-site .blog_list .item-more::after,.mahj-site .product_item .item_title::before { display: none; }
.mahj-site .page_bar .pages a { border: 1px solid var(--mahj-line); background: transparent; color: var(--mahj-pine); font-family: var(--mahj-body); }
.mahj-site .page_bar .pages a.current { background: var(--mahj-pine); border-color: var(--mahj-pine); color: var(--mahj-cream); }
.mahj-site .global_page :is(.global_section,.border_shadow) { border-color: var(--mahj-line); box-shadow: none; }
.mahj-site .global_page :is(.global_tabs,.global_toppd_btn) { background: var(--mahj-pine); color: var(--mahj-cream); }
.mahj-site .global_page .global_title { border-color: var(--mahj-line); }
.mahj-site .global_page,.mahj-site .global_page > .layout { background: var(--mahj-cream) !important; }
.mahj-site .global_page .global_title::before { background: var(--mahj-clay); }
.mahj-site .global_page .global_product { border-color: var(--mahj-line); background: var(--mahj-cream); }
.mahj-site .global_page .global_product .global_toppd_btn { background: var(--mahj-pine) !important; color: var(--mahj-cream) !important; border: 1px solid var(--mahj-pine); border-radius: 0; padding: 12px 20px; font: 400 14px/1.5 var(--mahj-body); }
.mahj-site :is(.swiper-button-next,.swiper-button-prev) { color: var(--mahj-pine); }
.mahj-site .product-view :is(.swiper-button-next,.swiper-button-prev) { background: var(--mahj-pine); color: var(--mahj-cream); }

/* One form system across the homepage, customization, business and product pages. */
.mahj-site .replica-inquiry { padding: 32px; border: 1px solid var(--mahj-line); background: var(--mahj-cream); margin-block: 24px; }
.mahj-site .replica-inquiry h3 { font: 500 32px/1.15 var(--mahj-display) !important; letter-spacing: -.025em; margin: 0 0 24px; }
.mahj-site .replica-inquiry label { font: 400 13px/1.5 var(--mahj-body); color: var(--mahj-pine); }
.mahj-site .replica-inquiry :is(input,select,textarea) { font: 400 15px/1.5 var(--mahj-body); width: 100%; min-width: 0; padding: 14px; min-height: 52px; background: #fff; color: var(--mahj-pine); border: 1px solid var(--mahj-line); border-radius: 0; }
.mahj-site .replica-inquiry :is(input,textarea)::placeholder { color: var(--mahj-muted); opacity: 1; }
.mahj-site .replica-form-grid { gap: 20px; min-width: 0; }
.mahj-site .replica-inquiry .replica-form-note { margin-block: 20px; font: 12px/1.7 var(--mahj-body); }
.mahj-site .replica-inquiry .replica-form-note a { text-decoration: underline; text-underline-offset: 3px; }
.mahj-site .replica-form-status:empty { display: none; }
.mahj-site .mahj-project-form { border: 0; padding: 0; margin: 0; background: transparent; }
.mahj-site .replica-local-contact { min-height: 44px; padding: 12px 18px; font: 13px/1.5 var(--mahj-body); }

/* Business information follows the same display/body pairing and page gutters. */
.mahj-site .geo-business { max-width: 1040px; padding-block: var(--mahj-section-space) 80px; font: 16px/1.8 var(--mahj-body); }
.mahj-site .geo-business h1 { font: 500 clamp(42px,5vw,64px)/1.08 var(--mahj-display); letter-spacing: -.025em; margin: 0 0 28px; color: var(--mahj-pine); }
.mahj-site .geo-business h2 { font: 500 clamp(30px,3vw,40px)/1.15 var(--mahj-display); letter-spacing: -.025em; margin: 40px 0 16px; color: var(--mahj-pine); }
.mahj-site .geo-business :is(p,li) { color: var(--mahj-muted); margin-block: 0 18px; }
.mahj-site .geo-business li { padding-left: 8px; }
.mahj-site .geo-business ol { padding-left: 22px; }
.mahj-site .geo-business a { color: var(--mahj-clay); text-underline-offset: 4px; }
.mahj-site .geo-business .mahj-eyebrow { font: 400 11px/1.5 var(--mahj-body); letter-spacing: .1em; color: var(--mahj-clay); margin-bottom: 20px; }
.mahj-site .mahj-business-contactus { max-width: 1440px; display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 64px; align-items: start; }
.mahj-site .mahj-business-contactus .replica-inquiry { margin: 0; background: var(--mahj-sage); border: 0; }
.mahj-site .mahj-business-form { min-width: 0; }
.mahj-site .mahj-business-form .mahj-product-request { margin: 0 0 20px; color: var(--mahj-pine); font-size: 14px; }
.mahj-site .mahj-not-found { min-height: 52vh; }
.mahj-site .mahj-error-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px 28px; margin-top: 32px; }
.mahj-site .mahj-error-actions .mahj-button { color: var(--mahj-cream); text-decoration: none; }

@media(min-width:1441px) { .mahj-site { --mahj-gutter: 72px; } }
@media(max-width:1100px) { .mc-footer-grid { gap: 28px; grid-template-columns: 1.4fr 1fr 1.15fr 1fr; } }
@media(max-width:950px) {
  .mahj-site { --mahj-gutter: 24px; --mahj-section-space: 48px; }
  .mahj-site .mahj-legacy-content.page_main { padding-block: 32px 48px; }
  .mahj-site .mahj-business-contactus { grid-template-columns: 1fr; gap: 32px; }
  .mahj-site .mahj-business-intro { max-width: 680px; }
  .mahj-site .product-intro { gap: 28px; }
  .mahj-site .blog_list > ul { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media(max-width:750px) {
  .mahj-site .mc-footer { padding-block: 44px 24px; }
  .mc-footer-grid { grid-template-columns: 1fr 1fr; gap: 32px 20px; }
  .mc-footer-brand { grid-column: 1/-1; }
  .mc-footer-legal { margin-top: 32px; align-items: start; }
  .mc-footer-legal > div { max-width: 240px; }
}
@media(max-width:600px) {
  .mahj-site { --mahj-section-space: 32px; }
  .mahj-site .geo-business { padding-bottom: 48px; }
  .mahj-site .geo-business h1 { overflow-wrap: anywhere; }
  .mahj-site .replica-inquiry { padding: 24px 20px; }
  .mahj-site .replica-form-grid { grid-template-columns: minmax(0,1fr); gap: 18px; }
  .mahj-site .replica-inquiry h3 { font-size: 29px !important; }
  .mahj-site .replica-inquiry .button { width: 100%; }
  .mahj-site .mahj-project-form { padding: 0; }
  .mahj-site .mahj-legacy-content .page_title { margin-bottom: 24px; overflow-wrap: anywhere; }
  .mahj-site .mahj-legacy-content .blog-article { padding: 24px 20px; }
  .mahj-site .mahj-legacy-content :is(.entry,.product-summary) { overflow-wrap: anywhere; }
  .mahj-site .mahj-legacy-content > .geo-procurement-guides { margin-top: 32px; }
  .mahj-site .mahj-table-scroll :is(td,th) { padding: 12px; }
  .mahj-site .product-view { margin: 0 0 28px; }
  .mahj-site .blog_list > ul { grid-template-columns: minmax(0,1fr); gap: 32px; }
}
