/* GEXYRAL M03 commercial page mobile layout refinement
 * Scope: product/service/solution/about page families only.
 * Desktop >=861px intentionally untouched.
 */
@media (max-width: 860px) {
  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) {
    --gex-m03-card-gap: 14px;
    --gex-m03-card-radius: 18px;
    --gex-m03-section-pad: clamp(54px, 9vw, 72px);
  }

  /* M02-R1: center numbered chapter eyebrow + H heading; keep supporting copy left-aligned. */
  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) :is(.gexyral-inner-section-head,.gexyral-service-split-head,.gexyral-about-split-head) {
    max-width: 100%;
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) .gexyral-inner-section-head > span {
    justify-content: center !important;
  }

  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) :is(.gexyral-inner-section-head > p,.gexyral-service-split-head > p,.gexyral-about-split-head > p) {
    max-width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
    text-align: left !important;
  }

  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) .gexyral-inner-section-head::after {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) :is(.gexyral-inner-section,.gexyral-product-section,.gexyral-product-cta,.gexyral-marketing-paths) {
    padding-top: var(--gex-m03-section-pad);
    padding-bottom: var(--gex-m03-section-pad);
  }

  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) :is(article,a,div) {
    min-width: 0;
  }

  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) :is(h1,h2,h3,p,strong,li,a) {
    overflow-wrap: anywhere;
  }

  /* Product hub/detail */
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-facts {
    margin-top: -18px;
    padding-bottom: 46px;
  }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-fact-grid {
    grid-template-columns: 1fr;
    border-radius: var(--gex-m03-card-radius);
  }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-fact {
    min-height: 0;
    padding: 22px;
    border-right: 0;
    border-bottom: 1px solid var(--product-line);
  }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-fact:last-child { border-bottom: 0; }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-section-head {
    grid-template-columns: 1fr;
    gap: 10px;
    margin-bottom: 28px;
  }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-section-head p { grid-column: 1; }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-grid,
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-grid.is-family-grid {
    grid-template-columns: 1fr;
    gap: var(--gex-m03-card-gap);
  }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-card,
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-card.is-product {
    min-height: 0;
    padding: 22px;
    border-radius: var(--gex-m03-card-radius);
  }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-card-top { margin-bottom: 20px; }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-card-code { margin-bottom: 16px; }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-card h3 { font-size: clamp(22px, 6vw, 29px); }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-card p { margin-top: 13px; }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-card-tags { margin-top: 16px; }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-card-link {
    position: static;
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    margin-top: 20px;
  }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-marketing-paths-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-marketing-paths-grid a {
    min-height: 0;
    padding: 20px;
  }

  /* Service hub */
  body[data-page-type="service_hub"] .gexyral-service-split-head {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-bottom: 30px;
  }
  body[data-page-type="service_hub"] .gexyral-service-map-grid { grid-template-columns: 1fr; gap: var(--gex-m03-card-gap); }
  body[data-page-type="service_hub"] .gexyral-service-map-card,
  body[data-page-type="service_hub"] .gexyral-service-map-card:nth-child(1),
  body[data-page-type="service_hub"] .gexyral-service-map-card:nth-child(2) {
    grid-column: auto;
    min-height: 0;
    padding: 22px;
    border-radius: var(--gex-m03-card-radius);
  }
  body[data-page-type="service_hub"] .gexyral-service-map-card h3 { margin: 28px 0 12px; font-size: 22px; }
  body[data-page-type="service_hub"] .gexyral-service-map-card ul { grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 18px; }
  body[data-page-type="service_hub"] .gexyral-service-map-card > footer { margin-top: 22px; padding-top: 18px; }
  body[data-page-type="service_hub"] .gexyral-business-entry-grid { grid-template-columns: 1fr; gap: 12px; }
  body[data-page-type="service_hub"] .gexyral-business-entry-grid article {
    min-height: 0;
    padding: 20px;
    grid-template-columns: 46px minmax(0,1fr);
    gap: 14px;
    border-radius: var(--gex-m03-card-radius);
  }
  body[data-page-type="service_hub"] .gexyral-business-entry-grid article > b { width: 42px; height: 42px; }
  body[data-page-type="service_hub"] .gexyral-business-entry-grid footer { gap: 12px; }
  body[data-page-type="service_hub"] .gexyral-decision-track article {
    min-height: 0;
    padding: 22px 0;
    grid-template-columns: 1fr;
    gap: 12px;
  }
  body[data-page-type="service_hub"] .gexyral-decision-number { gap: 10px; }
  body[data-page-type="service_hub"] .gexyral-decision-output { padding: 15px 16px; }
  body[data-page-type="service_hub"] .gexyral-delivery-flow {
    grid-template-columns: 1fr;
    gap: 0;
    padding-left: 8px;
  }
  body[data-page-type="service_hub"] .gexyral-delivery-flow::before {
    left: 27px;
    right: auto;
    top: 28px;
    bottom: 28px;
    width: 1px;
    height: auto;
    background: linear-gradient(180deg,transparent,#258fff 10%,#258fff 90%,transparent);
  }
  body[data-page-type="service_hub"] .gexyral-delivery-flow article {
    min-height: 82px;
    padding: 8px 0 22px 70px;
    text-align: left;
  }
  body[data-page-type="service_hub"] .gexyral-delivery-flow article > span {
    position: absolute;
    left: 0;
    top: 8px;
    width: 54px;
    height: 54px;
    margin: 0;
  }
  body[data-page-type="service_hub"] .gexyral-delivery-flow article > i { display: none; }
  body[data-page-type="service_hub"] .gexyral-delivery-baseline {
    grid-template-columns: 1fr;
    gap: 0;
    margin-top: 30px;
    padding: 18px;
    border-radius: var(--gex-m03-card-radius);
  }
  body[data-page-type="service_hub"] .gexyral-delivery-baseline > span { padding-bottom: 12px; }
  body[data-page-type="service_hub"] .gexyral-delivery-baseline > div { padding: 12px 0; border-left: 0; border-top: 1px solid rgba(76,139,233,.14); }
  body[data-page-type="service_hub"] .gexyral-capability-console { grid-template-columns: 1fr; gap: 24px; }
  body[data-page-type="service_hub"] .gexyral-capability-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; order: 1; }
  body[data-page-type="service_hub"] .gexyral-capability-orbit { width: min(230px,64vw); order: 2; }
  body[data-page-type="service_hub"] :is(.gexyral-boundary-grid,.gexyral-commitment-grid,.gexyral-b04-boundary-grid) { grid-template-columns: 1fr; gap: 12px; }

  /* Service/Solution category + detail shared templates */
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) :is(
    .gexyral-category-service-grid,
    .gexyral-category-proof-grid,
    .gexyral-category-scenario-grid,
    .gexyral-category-standard-grid
  ),
  body:is([data-page-type="service_detail"],[data-page-type="solution_detail"]) :is(
    .gexyral-detail-intro-grid,
    .gexyral-detail-scope-grid,
    .gexyral-detail-value-grid,
    .gexyral-detail-process-grid,
    .gexyral-detail-acceptance-grid,
    .gexyral-detail-related-grid
  ) {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) .gexyral-category-service-card,
  body:is([data-page-type="service_detail"],[data-page-type="solution_detail"]) :is(
    .gexyral-detail-scope-grid article,
    .gexyral-detail-value-grid article,
    .gexyral-detail-process-grid article,
    .gexyral-detail-acceptance-grid article,
    .gexyral-detail-related-grid a
  ) {
    min-height: 0;
    border-radius: var(--gex-m03-card-radius);
  }
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) .gexyral-category-service-card { grid-column: auto; padding: 22px; }
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) .gexyral-category-service-card h3 { margin-top: 28px; }
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) .gexyral-category-service-card ul { grid-template-columns: 1fr; }
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) .gexyral-category-service-card footer { align-items: flex-start; flex-direction: column; }
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) .gexyral-category-layer-stack article { grid-template-columns: 58px minmax(0,1fr); gap: 14px; }
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) .gexyral-category-layer-stack article > :is(p,strong) { grid-column: 2; }
  body:is([data-page-type="service_detail"],[data-page-type="solution_detail"]) .gexyral-detail-structure-track article {
    grid-template-columns: 54px minmax(0,1fr);
    gap: 14px;
    padding: 20px 0;
  }
  body:is([data-page-type="service_detail"],[data-page-type="solution_detail"]) .gexyral-detail-structure-track article > div { width: 54px; height: 54px; }
  body:is([data-page-type="service_detail"],[data-page-type="solution_detail"]) .gexyral-detail-structure-track article > strong { grid-column: 2; }
  body:is([data-page-type="service_detail"],[data-page-type="solution_detail"]) .gexyral-detail-process-grid article { min-height: 0 !important; }

  /* Solution hub */
  body[data-page-type="solution_hub"] :is(
    .gexyral-solution-map-grid,
    .gexyral-solution-diagnosis-grid,
    .gexyral-solution-method-track,
    .gexyral-solution-architecture-grid,
    .gexyral-solution-roadmap-grid
  ) {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  body[data-page-type="solution_hub"] .gexyral-solution-card {
    padding: 21px;
    border-radius: var(--gex-m03-card-radius);
  }
  body[data-page-type="solution_hub"] .gexyral-solution-card header { margin-bottom: 18px; }
  body[data-page-type="solution_hub"] .gexyral-solution-card header b { width: 50px; height: 50px; border-radius: 15px; }
  body[data-page-type="solution_hub"] .gexyral-solution-card h3 { font-size: 22px; }
  body[data-page-type="solution_hub"] .gexyral-solution-pain { padding: 16px; border-radius: 16px; }
  body[data-page-type="solution_hub"] .gexyral-solution-pain ul { grid-template-columns: 1fr; }
  body[data-page-type="solution_hub"] .gexyral-solution-card footer { display: grid; grid-template-columns: 1fr; gap: 14px; align-items: start; }
  body[data-page-type="solution_hub"] .gexyral-solution-card small { max-width: none; margin: 0; }
  body[data-page-type="solution_hub"] .gexyral-solution-card a { display: inline-flex; min-height: 44px; align-items: center; }
  body[data-page-type="solution_hub"] :is(.gexyral-solution-diagnosis-grid article,.gexyral-solution-method-track article,.gexyral-solution-architecture-grid article,.gexyral-solution-roadmap-grid article) {
    padding: 20px;
    border-radius: var(--gex-m03-card-radius);
  }

  /* About hub/detail */
  body:is([data-page-type="about_hub"],[data-page-type="about_detail"]) .gexyral-about-split-head {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-bottom: 30px;
  }
  body[data-page-type="about_hub"] .gexyral-about-positioning-layout { grid-template-columns: 1fr; gap: 24px; }
  body[data-page-type="about_hub"] .gexyral-about-identity-card { min-height: 310px; padding: 28px 22px; border-radius: var(--gex-m03-card-radius); }
  body[data-page-type="about_hub"] :is(.gexyral-about-fact-grid,.gexyral-about-principle-grid,.gexyral-about-boundary-grid) {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
  }
  body[data-page-type="about_hub"] .gexyral-about-capability-grid { grid-template-columns: 1fr; gap: 12px; }
  body[data-page-type="about_hub"] .gexyral-about-capability-grid > a { min-height: 0; padding: 22px; }
  body[data-page-type="about_hub"] .gexyral-about-delivery-track article {
    grid-template-columns: 58px minmax(0,1fr);
    gap: 14px;
    padding-right: 0;
  }
  body[data-page-type="about_hub"] .gexyral-about-delivery-track article aside { grid-column: 2; }

  body[data-page-type="about_detail"] .gexyral-about-detail-profile {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 28px 22px;
    border-radius: var(--gex-m03-card-radius);
  }
  body[data-page-type="about_detail"] .gexyral-about-detail-profile aside { width: 150px; height: 150px; margin: 0; }
  body[data-page-type="about_detail"] :is(.gexyral-about-detail-intro-grid,.gexyral-about-evidence-grid,.gexyral-about-fit-grid,.gexyral-about-related-grid) {
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px;
  }
  body[data-page-type="about_detail"] .gexyral-about-detail-block-grid { grid-template-columns: 1fr; gap: 12px; margin-top: 28px; }
  body[data-page-type="about_detail"] .gexyral-about-detail-block-grid article {
    min-height: 0;
    padding: 24px 21px 82px;
    border-radius: var(--gex-m03-card-radius);
  }
  body[data-page-type="about_detail"] .gexyral-about-evidence-grid article { padding: 20px 18px; }
  body[data-page-type="about_detail"] .gexyral-about-fit-grid article { min-height: 0; padding: 22px; }
  body[data-page-type="about_detail"] .gexyral-about-related-grid a { min-height: 210px; padding: 22px 20px; }

  /* CTA conversion area: retain hierarchy, improve mobile reachability */
  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) :is(.gexyral-inner-cta,.gexyral-product-cta) .gexyral-inner-container {
    text-align: left;
  }
  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) :is(.gexyral-inner-cta,.gexyral-product-cta) .gexyral-inner-container > div:last-child {
    justify-content: flex-start;
  }
}

@media (max-width: 560px) {
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-section-head h2 { font-size: clamp(27px,8.5vw,34px); }
  body:is([data-page-type="product_hub"],[data-page-type="product_detail"]) .gexyral-product-card { padding: 20px; }
  body[data-page-type="service_hub"] .gexyral-service-map-card ul { grid-template-columns: 1fr; }
  body[data-page-type="service_hub"] .gexyral-service-map-card > footer,
  body[data-page-type="service_hub"] .gexyral-business-entry-grid footer { align-items: flex-start; flex-direction: column; }
  body[data-page-type="service_hub"] .gexyral-capability-grid { grid-template-columns: 1fr; }
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) .gexyral-category-layer-stack article { grid-template-columns: 1fr; }
  body:is([data-page-type="service_category"],[data-page-type="solution_category"]) .gexyral-category-layer-stack article > :is(p,strong) { grid-column: auto; }
  body:is([data-page-type="service_detail"],[data-page-type="solution_detail"]) .gexyral-detail-structure-track article { grid-template-columns: 50px minmax(0,1fr); }
  body[data-page-type="about_hub"] :is(.gexyral-about-fact-grid,.gexyral-about-principle-grid,.gexyral-about-boundary-grid),
  body[data-page-type="about_detail"] :is(.gexyral-about-detail-intro-grid,.gexyral-about-evidence-grid,.gexyral-about-fit-grid,.gexyral-about-related-grid) {
    grid-template-columns: 1fr;
  }
  body[data-page-type="about_hub"] .gexyral-about-delivery-track article aside { grid-column: 1/-1; margin-left: 58px; }
  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) :is(.gexyral-inner-cta,.gexyral-product-cta) .gexyral-inner-container > div:last-child {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }
  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) :is(.gexyral-inner-cta,.gexyral-product-cta) .gexyral-inner-btn {
    width: 100%;
    min-height: 48px;
    justify-content: center;
  }
}

@media (max-width: 360px) {
  body:is(
    [data-page-type="product_hub"],
    [data-page-type="product_detail"],
    [data-page-type="service_hub"],
    [data-page-type="service_category"],
    [data-page-type="service_detail"],
    [data-page-type="solution_hub"],
    [data-page-type="solution_category"],
    [data-page-type="solution_detail"],
    [data-page-type="about_hub"],
    [data-page-type="about_detail"]
  ) { --gex-m03-card-gap: 10px; --gex-m03-section-pad: 50px; }
  body[data-page-type="service_hub"] .gexyral-delivery-flow article { padding-left: 62px; }
  body[data-page-type="service_hub"] .gexyral-delivery-flow article > span { width: 48px; height: 48px; }
  body[data-page-type="about_detail"] .gexyral-about-detail-profile aside { width: 132px; height: 132px; }
}
