/* GMS Modern Corporate B2B skin — visual only */
:root {
    --gms-navy: #0b1d3a;
    --gms-blue: #354bd6;
    --gms-blue-2: #285fca;
    --gms-red: #ed171c;
    --gms-ink: #132747;
    --gms-muted: #526681;
    --gms-bg: #f3f6fb;
    --gms-surface: #fff;
    --gms-line: #dbe3ef;
    --gms-line-dark: #c8d3e2;
    --gms-radius: 9px;
    --gms-radius-lg: 20px;
    --gms-font: "Plus Jakarta sans", "Segoe UI", Arial, sans-serif;
}

body { font-family: var(--gms-font); }
.gms-section { padding: 88px 0; }
.gms-section--soft { background: var(--gms-bg); }
.gms-container { width: min(1240px, calc(100% - 48px)); }

.gms-eyebrow { gap: 0; color: var(--gms-blue); font-size: 14px; font-weight: 700; letter-spacing: 0; text-transform: none; }
.gms-eyebrow::before { display: none; }
.gms-heading { grid-template-columns: minmax(300px,.9fr) minmax(340px,1.1fr); gap: 72px; margin-bottom: 42px; }
.gms-heading h1,.gms-heading h2 { font-size: clamp(34px,3.8vw,52px); font-weight: 700; line-height: 1.08; letter-spacing: -1.8px; }
.gms-heading p { font-size: 17px; font-weight: 500; line-height: 1.72; }

.gms-hero { min-height: calc(100vh - 90px); padding: 72px 0; border: 0; background: var(--gms-bg); }
.gms-hero::after { display: none; }
.gms-hero__grid { grid-template-columns: minmax(0,1.32fr) minmax(390px,.88fr); gap: clamp(54px,7vw,110px); }
.gms-hero h1 { max-width: 850px; margin: 48px 0 20px; font-size: clamp(52px,5.45vw,78px); font-weight: 700; line-height: 1.01; letter-spacing: -3.6px; }
.gms-hero p { max-width: 780px; color: #304967; font-size: 20px; font-weight: 500; line-height: 1.65; }
.gms-actions { gap: 16px; margin-top: 58px; }
.gms-btn { min-height: 58px; padding: 14px 34px; border-radius: 8px; font-size: 16px; font-weight: 700; }
.gms-btn--primary { border-color: var(--gms-blue); background: var(--gms-blue); }
.gms-btn--secondary { border-color: var(--gms-blue); background: #fff; color: var(--gms-blue) !important; }
.gms-trustline { margin-top: 32px; border: 0; color: var(--gms-muted); font-size: 12px; }
.gms-trustline span,.gms-trustline span+span { padding: 5px 18px 5px 0; border: 0; }
.gms-trustline span::before { color: var(--gms-blue); }

.gms-hero__visual { min-height: 645px; padding: 0; overflow: hidden; border: 3px solid #fff; border-radius: 22px; background: #fff; box-shadow: 7px 8px 18px rgba(11,29,58,.24); }
.gms-hero__visual::before,.gms-hero__visual::after { display: none; }
.gms-hero__visual img { display: block; width: 100%; height: 645px; max-height: none; object-fit: cover; object-position: center; }
.gms-hero__visual.has-logo { padding: 54px; box-shadow: 0 12px 32px rgba(11,29,58,.11); }
.gms-hero__visual.has-logo img { height: 430px; object-fit: contain; }
.gms-hero__visual p { right: 18px; bottom: 18px; left: 18px; width: auto; margin: 0; padding: 10px 14px; border-radius: 7px; background: rgba(7,26,58,.84); color: #fff; font-size: 12px; text-align: left; }
.gms-hero--compact { min-height: auto; padding: 70px 0; }
.gms-hero--compact .gms-hero__visual { min-height: 440px; }
.gms-hero--compact .gms-hero__visual img { height: 440px; max-height: none; }

.gms-audience-grid,.gms-category-grid,.gms-solution-grid,.gms-steps,.gms-compare,.gms-card-grid,.gms-catalog-grid { gap: 18px; border: 0; background: transparent; }
.gms-audience-grid>a,.gms-audience-grid>article,.gms-solution-grid article,.gms-steps article,.gms-compare article,.gms-content-card,.gms-catalog-card { border: 1px solid var(--gms-line); border-radius: 14px; background: #fff; box-shadow: none; }
.gms-audience-grid>a,.gms-audience-grid>article,.gms-steps article { border-right: 1px solid var(--gms-line); }
.gms-audience-grid>a:hover,.gms-content-card:hover,.gms-catalog-card:hover { border-color: #b7c6dc; box-shadow: 0 12px 28px rgba(11,29,58,.08); }
.gms-audience-grid>a::after { right: 22px; bottom: 0; left: 22px; height: 3px; }
.gms-audience-grid h3,.gms-solution-grid h3,.gms-compare h3,.gms-steps h3 { font-weight: 700; }

.gms-category-grid a { border: 1px solid var(--gms-line); border-radius: 10px; }
.gms-category-grid a:nth-child(4n),.gms-category-grid a:nth-last-child(-n+4) { border: 1px solid var(--gms-line); }
.gms-category-grid a:hover { border-color: var(--gms-navy); }
.gms-mini-grid { gap: 12px; border: 0; }
.gms-mini-grid article { border: 1px solid rgba(255,255,255,.2) !important; border-radius: 10px; background: rgba(255,255,255,.055); }

.gms-solution-grid article { border: 1px solid var(--gms-line) !important; }
.gms-checklist { gap: 10px; border: 0; background: transparent; }
.gms-checklist span { border: 1px solid var(--gms-line) !important; border-radius: 9px; }
.gms-decision-grid { grid-template-columns: 1.15fr .925fr .925fr; gap: 14px; border: 0; background: transparent; }
.gms-decision-grid article { border: 1px solid var(--gms-line) !important; border-radius: 14px; background: #fff; }
.gms-decision-grid article:first-child { background: #edf2ff; }
.gms-assurance-list { gap: 10px; border: 0; }
.gms-assurance-list span { border: 1px solid rgba(255,255,255,.2) !important; border-radius: 9px; }

.gms-upload-band,.gms-final-cta { padding: 44px 48px; border: 0; border-radius: 18px; background: #eef2ff; box-shadow: none; }
.gms-final-cta { border-left: 5px solid var(--gms-red); }
.gms-faq { gap: 10px; border: 0; }
.gms-faq details { border: 1px solid var(--gms-line); border-radius: 10px; }
.gms-faq details:last-child { border-bottom: 1px solid var(--gms-line); }
.gms-contact-grid,.gms-choice-row,.gms-trust-placeholder { gap: 14px; border: 0; }
.gms-contact-grid article,.gms-choice-row a,.gms-trust-placeholder span { border: 1px solid var(--gms-line) !important; border-radius: 14px; }
.gms-content-card img,.gms-catalog-card img { border-radius: 13px 13px 0 0; }
.gms-collection-filter { gap: 8px; border: 0; }
.gms-collection-filter button { border: 1px solid var(--gms-line); border-radius: 8px; background: #fff; }
.gms-collection-filter button.is-active { border-color: var(--gms-blue); background: var(--gms-blue); color: #fff; }

.gms-rfq,.gms-detail-panel { border-radius: 14px; }
.gms-rfq input,.gms-rfq select,.gms-rfq textarea,.gms-choice span,.gms-upload { border-radius: 8px; }
.gms-rfq-actions button { border-radius: 8px; }

@media (max-width: 1050px) {
    .gms-hero { min-height: auto; }
    .gms-hero__grid { grid-template-columns: minmax(0,1.08fr) minmax(340px,.92fr); gap: 44px; }
    .gms-hero h1 { font-size: clamp(48px,6vw,64px); }
    .gms-hero__visual,.gms-hero__visual img { min-height: 530px; height: 530px; }
}

@media (max-width: 900px) {
    .gms-section { padding: 72px 0; }
    .gms-hero__grid { grid-template-columns: 1fr; }
    .gms-hero { padding: 62px 0; }
    .gms-hero h1 { margin-top: 30px; }
    .gms-hero__visual,.gms-hero__visual img { min-height: 480px; height: 480px; }
}

@media (max-width: 600px) {
    .gms-container { width: min(100% - 30px,1240px); }
    .gms-section { padding: 56px 0; }
    .gms-hero { padding: 48px 0; }
    .gms-hero h1 { margin: 26px 0 18px; font-size: clamp(38px,11vw,48px); line-height: 1.04; letter-spacing: -2px; }
    .gms-hero p { font-size: 16px; }
    .gms-actions { margin-top: 34px; }
    .gms-btn { width: 100%; min-height: 54px; }
    .gms-hero__visual,.gms-hero__visual img { min-height: 360px; height: 360px; border-radius: 15px; }
    .gms-hero__visual.has-logo { padding: 32px; }
    .gms-hero__visual.has-logo img { height: 285px; }
    .gms-heading { gap: 14px; }
    .gms-upload-band,.gms-final-cta { padding: 30px 24px; border-radius: 13px; }
}
