/* Shared content scale. Brand artwork has its own approved proportions in brand.css. */
:root {
  --mas-type-body:14px; --mas-type-tag:12px; --mas-type-label:14px;
  --mas-type-title:24px; --mas-type-hero:24px; --mas-type-subtitle:18px;
  --mas-type-section-space:36px; --mas-type-body-color:#475569;
}
body { font-family:"Noto Sans TC",system-ui,-apple-system,"Segoe UI",sans-serif; font-size:var(--mas-type-body); font-weight:400; line-height:1.7; }
:is(.shell,.workspace-shell,.supplier-directory-page,.supplier-search-page,.match-page) { font-size:var(--mas-type-body); font-weight:400; }
:is(.shell,.workspace-shell,.supplier-directory-page) h1,
:is(.shell,.workspace-shell,.supplier-directory-page) h2 { font-size:var(--mas-type-title); font-weight:700; line-height:1.3; letter-spacing:normal; overflow-wrap:anywhere; }
:is(.shell,.workspace-shell,.supplier-directory-page) h3 { font-size:var(--mas-type-subtitle); font-weight:700; line-height:1.4; }
:is(.shell,.workspace-shell,.supplier-directory-page) h4 { font-size:var(--mas-type-label); font-weight:500; line-height:1.5; }
.shell .mas-match-copy h1,.shell .page-hero h1 { font-size:var(--mas-type-hero); font-weight:700; line-height:1.2; }
.shell .mas-match-copy h1 .mas-match-title-line { font-size:inherit; font-weight:inherit; line-height:inherit; letter-spacing:normal; }
.workspace-shell .workspace-hero h1,.workspace-shell .rfq-top h1,.workspace-shell .rfq-supplier-top h1,
.supplier-directory-page .directory-hero h1 { font-size:var(--mas-type-title); font-weight:700; line-height:1.3; }
:is(.shell,.workspace-shell) .eyebrow,.shell .mas-match-copy .eyebrow,
.shell .mas-home-supplier-search-heading .eyebrow,.supplier-directory-page .directory-eyebrow,
.shell .card-number,.shell .services-feature-copy .card-number { font-size:var(--mas-type-tag); font-weight:500; line-height:1.5; letter-spacing:.04em; }
:is(.shell,.workspace-shell) :is(.lead,.muted,.workspace-hero p,.rfq-supplier-intro),
.shell :is(.mas-match-copy .lead,.mas-vision-feature-copy p,.mas-trust-grid p,.card p,.footer p),
.supplier-directory-page :is(p,dd,.directory-source,.directory-help) { font-size:var(--mas-type-body); font-weight:400; line-height:1.7; }
:is(.shell,.workspace-shell,.supplier-directory-page) :is(p,dd) { color:var(--mas-type-body-color); }
:is(.shell,.workspace-shell,.supplier-directory-page) :is(.error,.success,.warning,.workspace-error,.workspace-success,.rfq-supplier-error,.rfq-supplier-success) p { color:inherit; }
:is(.shell,.workspace-shell,.supplier-directory-page) :is(label,.mas-home-supplier-search-field label),
.workspace-shell :is(.workspace-form,.workspace-settings-form,.workspace-contact-form,.rfq-supplier-form,.rfq-structured-form,.rfq-import-requirements,.rfq-structured-grid,.rfq-match-section,.workspace-member-invite) label,
.workspace-shell .workspace-member-invite > label:not(.buyer-permission-control) { font-size:var(--mas-type-label); font-weight:500; line-height:1.5; }
/* Keep editable controls at 16px: iOS otherwise zooms the viewport on focus. */
body :is(input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),select,textarea) { font-family:inherit; font-size:16px; font-weight:400; line-height:1.5; color:var(--mas-type-body-color); }
body :is(input,textarea)::placeholder { font-size:var(--mas-type-body); font-weight:400; color:#94a3b8; opacity:1; }
:is(.shell,.workspace-shell,.supplier-directory-page) :is(.button,button,.directory-inquiry-button,.directory-card-link) { font-size:var(--mas-type-label); font-weight:700; line-height:1.5; }
:is(.shell,.workspace-shell) :is(.nav-links a,.nav-actions a,.workspace-nav-actions a,.workspace-nav-actions button,.workspace-mobile-nav a) { font-size:var(--mas-type-label); font-weight:500; }
:is(.shell,.workspace-shell,.supplier-directory-page) :is(b,strong,legend,summary,.directory-product-tag,.directory-tags span) { font-weight:500; }
.workspace-shell :is(.rfq-supplier-rfq-grid b,.workspace-meta-grid b,.rfq-review-value) { font-size:var(--mas-type-body); font-weight:500; line-height:1.7; }
.workspace-shell .rfq-supplier-quote-summary b { font-size:20px; font-weight:700; }
.workspace-shell :is(.workspace-card,.rfq-supplier-card,.rfq-panel) h2 { font-size:var(--mas-type-title); font-weight:700; }
.shell :is(.section,.page-hero,.mas-match-hero,.mas-role-flows,.mas-vision-plus,.mas-trust-section,.mas-home-cta) { padding-block:var(--mas-type-section-space); }
.shell .mas-home-entry { gap:36px; }
.shell .mas-match-copy h1 { margin-block:16px; }
.shell .mas-home-supplier-search-heading h2 { margin-block:12px 18px; }
.shell .mas-match-copy .mas-role-cta-row { margin-top:24px; }
.shell .mas-role-flow-card :is(b,p),.shell .mas-vision-tags span { font-size:var(--mas-type-body); font-weight:400; line-height:1.7; }
.shell .mas-radar :is(li,b,span) { font-weight:500; }
@media (min-width:821px) and (max-width:1023px) {
  :root { --mas-type-body:15px; --mas-type-tag:14px; --mas-type-label:15px; --mas-type-title:28px; --mas-type-hero:36px; --mas-type-section-space:48px; }
}
@media (min-width:1024px) {
  :root { --mas-type-body:16px; --mas-type-tag:16px; --mas-type-label:16px; --mas-type-title:32px; --mas-type-hero:44px; --mas-type-subtitle:22px; --mas-type-section-space:64px; --mas-type-body-color:#334155; }
}
@media (max-width:820px) {
  :is(.shell,.workspace-shell,.supplier-directory-page) h1,
  :is(.shell,.workspace-shell,.supplier-directory-page) h2,
  .shell .mas-match-copy h1,.workspace-shell .workspace-hero h1,
  .supplier-directory-page .directory-hero h1 { line-height:1.25; }
  .shell .mas-match-hero { padding-block:32px; }
  .workspace-shell .rfq-supplier-attachment-section b { font-size:14px; font-weight:500; line-height:1.5; }
}

/* Data labels and decorative text use the same scale; status colors remain local. */
.shell .mas-match-copy .lead,.shell .page-hero .lead { color:var(--mas-type-body-color); }
:is(.shell,.workspace-shell,.supplier-directory-page) small,
.workspace-shell :is(.rfq-supplier-rfq-grid small,.rfq-supplier-quote-summary small,.workspace-note),
.supplier-directory-page :is(.directory-detail dt,.directory-tag,.directory-process-tag,.directory-more-tag),
.shell :is(.mas-capability-tags span,.mas-capability-label,.footer-bottom,.mas-vision-tags span) { font-size:var(--mas-type-body); font-weight:400; line-height:1.7; }
.shell :is(.mas-radar-score-list li,.mas-radar-score-list li b,.mas-radar-score-list li span,.mas-radar-score-center,.mas-role-flow-card li::before,.services-radar-art > span,.mas-collaboration-step) { font-size:var(--mas-type-body); font-weight:500; }
.shell .mas-radar-score-center { font-weight:700; }
.workspace-shell .rfq-supplier-attachments > b { font-size:var(--mas-type-label); font-weight:500; line-height:1.5; }

/* File controls have a large intrinsic width; constrain their grid track as well. */
.workspace-shell .rfq-supplier-attachments { grid-template-columns:minmax(0,1fr); min-width:0; max-width:100%; }
.workspace-shell .rfq-supplier-attachment-upload { min-width:0; max-width:100%; }
.workspace-shell .rfq-supplier-attachment-upload input[type="file"] { width:100%; min-width:0; max-width:100%; }

.shell .mas-process-tags > strong,.shell .mas-process-tags > span,.shell .mas-role-flow-note,
.shell .mas-radar-score-list li strong { font-size:var(--mas-type-body); font-weight:400; line-height:1.7; }
.shell .mas-radar-kicker { font-size:var(--mas-type-tag); font-weight:500; line-height:1.5; }
@media (max-width:620px) {
  /* Keep 14px radar labels readable instead of squeezing them beside a central disc. */
  .shell .mas-radar-scorecard { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:12px; }
  .shell .mas-radar-score-center { grid-column:1/-1; grid-row:1; justify-self:center; width:88px; height:88px; }
  .shell .mas-radar-score-list { grid-row:2; align-self:stretch; }
  .shell .mas-radar-score-list li { flex-direction:column; justify-content:center; gap:2px; min-height:76px; text-align:center; padding:8px; }
}

:is(.shell,.workspace-shell,.supplier-directory-page) main p { font-size:var(--mas-type-body); font-weight:400; line-height:1.7; }

/* Homepage: introduction, search, then radar, in the same order at every size. */
.mas-home-page .shell .mas-match-hero { padding-block:40px 48px; }
.mas-home-page .shell .mas-match-copy { width:100%; max-width:760px; margin-inline:auto; text-align:center; }
.mas-home-page .shell .mas-match-copy h1 { max-width:none; }
.mas-home-page .shell .mas-match-copy .eyebrow { display:flex; justify-content:center; }
.mas-home-page .shell .mas-match-copy .lead { max-width:740px; margin-inline:auto; }
.mas-home-page .shell .mas-match-copy .hero-actions { justify-content:center; margin-top:24px; }
.mas-home-page .shell :is(.mas-match-copy .eyebrow,.mas-home-supplier-search-heading .eyebrow,.section-heading .eyebrow,.mas-radar-board-head .eyebrow,.mas-vision-feature-copy > .eyebrow,.mas-home-cta > .container > .eyebrow) { color:#2167d1; font-size:var(--mas-type-tag); font-weight:500; line-height:1.5; letter-spacing:.04em; }
.mas-home-page .shell .mas-home-supplier-search-heading .eyebrow { font-size:var(--mas-type-tag); font-weight:500; line-height:1.5; display:flex; margin:0 0 12px; }
.mas-home-page .shell .mas-radar-board { width:100%; max-width:780px; justify-self:center; }
.mas-home-page .shell .mas-home-entry > .mas-process-tags { margin:0; justify-content:center; text-align:center; }
/* Draw a consistent 22px menu icon rather than inheriting a tiny text glyph. */
.shell .mobile-toggle { width:44px; height:44px; padding:10px; }
.shell .nav-menu-icon { display:flex; flex-direction:column; gap:4px; width:22px; margin:auto; }
.shell .nav-menu-icon > span { display:block; width:22px; height:2px; border-radius:2px; background:currentColor; }
@media (max-width:820px) {
  .mas-home-page .shell .mas-match-hero { padding-block:20px 36px; }
  .mas-home-page .shell .mas-match-copy { text-align:left; }
  .mas-home-page .shell .mas-match-copy .eyebrow { justify-content:flex-start; }
  .mas-home-page .shell .mas-match-copy .hero-actions { justify-content:flex-start; }
  .shell .nav-links { left:auto; right:0; top:calc(100% + 4px); width:160px; max-width:calc(100vw - 32px); padding:8px; }
  .shell .nav-links > a,.shell .nav-links .nav-account-menu > summary,.shell .nav-links > button { margin:0; padding:9px 12px; min-height:42px; }
  .shell .nav-account-panel { padding:5px 0; }
}

/* Show six matching dimensions without publishing score weights. */
.mas-home-page .shell .mas-radar-board { max-width:600px; }
.mas-home-page .shell .mas-radar-scorecard { grid-template-columns:minmax(0,176px) 108px minmax(0,176px); justify-content:center; min-height:188px; }
.mas-home-page .shell .mas-radar-score-list { grid-auto-rows:1fr; }
.mas-home-page .shell .mas-radar-score-list li { justify-content:center; min-height:44px; padding:8px 12px; text-align:center; }
@media (max-width:620px) {
  .mas-home-page .shell .mas-radar-scorecard { grid-template-columns:repeat(2,minmax(0,1fr)); min-height:0; }
  .mas-home-page .shell .mas-radar-score-list li { min-height:56px; padding:8px; }
}

/* Hero gives an overview; services and the radar precede the supplier search. */
.mas-home-page .shell .mas-home-hero-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:48px; align-items:center; }
.mas-home-page .shell .mas-match-copy { max-width:none; margin:0; text-align:left; }
.mas-home-page .shell .mas-match-copy .eyebrow,.mas-home-page .shell .mas-match-copy .hero-actions { justify-content:flex-start; }
.mas-home-page .shell .mas-match-copy .lead { margin-inline:0; max-width:520px; }
.mas-home-page .shell .mas-home-journey { min-width:0; margin:0; padding:40px 24px 28px; border:1px solid #d9e5ef; border-radius:24px; background:linear-gradient(145deg,#fff,#eef5ff); }
.mas-home-page .shell .mas-home-journey-stages { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding:0; margin:0; list-style:none; }
.mas-home-page .shell .mas-home-journey-stages li { position:relative; min-width:0; display:grid; justify-items:center; gap:16px; text-align:center; }
.mas-home-page .shell .mas-home-journey-stages li:not(:last-child)::after { content:""; position:absolute; top:46px; left:calc(50% + 50px); width:calc(100% - 84px); border-top:2px solid #bfd3ef; }
.mas-home-page .shell .mas-home-journey-stages li:not(:last-child)::before { content:""; position:absolute; top:42px; left:calc(150% - 40px); width:8px; height:8px; border-top:2px solid #bfd3ef; border-right:2px solid #bfd3ef; transform:rotate(45deg); }
.mas-home-page .shell .mas-home-journey-icon { display:grid; place-items:center; width:94px; height:94px; border:1px solid #c9daf8; border-radius:24px; color:#1B4F82; background:#fff; box-shadow:0 6px 18px #1b4f820a; }
.mas-home-page .shell .mas-home-journey-icon svg { width:48px; height:48px; }
.mas-home-page .shell .mas-home-journey-label { font-size:18px; line-height:1.5; font-weight:700; color:#10243b; }
.mas-home-page .shell .mas-home-journey figcaption { margin-top:28px; font-size:var(--mas-type-body); line-height:1.6; text-align:center; color:#475569; }
.mas-home-page .shell .mas-home-services-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px; align-items:center; }
.mas-home-page .shell .mas-home-services-grid .mas-radar-board { max-width:none; margin:0; min-width:0; }
.mas-home-page .shell .mas-home-services-grid .mas-radar-scorecard { grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr); gap:10px; }
.mas-home-page .shell .mas-home-services-grid .mas-radar-score-center { width:88px; height:88px; }
.mas-home-page .shell .mas-home-benefits { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; min-width:0; }
.mas-home-page .shell .mas-home-benefit { min-width:0; padding:18px; border:1px solid #e2e8f0; border-radius:18px; background:#f8fafc; }
.mas-home-page .shell .mas-home-benefit svg { display:block; width:26px; height:26px; margin-bottom:10px; color:#1B4F82; }
.mas-home-page .shell .mas-home-benefit h2 { margin:0 0 6px; font-size:18px; font-weight:700; line-height:1.4; color:#10243b; }
.mas-home-page .shell .mas-home-benefit p { margin:0; color:#475569; font-size:var(--mas-type-body); font-weight:400; line-height:1.6; }
.mas-home-page .shell .mas-workflow-section { padding-block:var(--mas-type-section-space); }
.mas-home-page .shell .mas-workflow-intro { max-width:740px; margin:0 0 28px; color:#475569; }
.mas-home-page .shell .mas-workflow-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding:0; margin:0; list-style:none; }
.mas-home-page .shell .mas-workflow-steps li { min-width:0; padding:24px; border:1px solid #d9e5ef; border-radius:18px; background:#fff; }
.mas-home-page .shell .mas-workflow-number { display:block; margin-bottom:14px; color:#2167d1; font-size:var(--mas-type-tag); font-weight:500; }
.mas-home-page .shell .mas-workflow-steps h3 { margin:0 0 10px; font-size:20px; font-weight:700; line-height:1.4; color:#10243b; }
.mas-home-page .shell .mas-workflow-steps p { margin:0; color:#475569; }
@media (min-width:821px) and (max-width:1100px) {
  .mas-home-page .shell .mas-home-hero-grid { gap:28px; }
  .mas-home-page .shell .mas-home-benefit { padding:16px; }
  .mas-home-page .shell .mas-home-benefit h2 { font-size:17px; }
  .mas-home-page .shell .mas-home-journey { padding:32px 16px 24px; }
  .mas-home-page .shell .mas-home-journey-icon { width:76px; height:76px; }
  .mas-home-page .shell .mas-home-journey-stages li:not(:last-child)::after { top:37px; left:calc(50% + 42px); width:calc(100% - 68px); }
  .mas-home-page .shell .mas-home-journey-stages li:not(:last-child)::before { top:33px; left:calc(150% - 32px); }
}
@media (max-width:1023px) {
  .mas-home-page .shell .mas-home-services-grid { grid-template-columns:minmax(0,1fr); }
  .mas-home-page .shell .mas-home-services-grid .mas-radar-board { max-width:600px; justify-self:center; }
}
@media (max-width:820px) {
  .mas-home-page .shell .mas-home-hero-grid { grid-template-columns:minmax(0,1fr); gap:28px; }
  .mas-home-page .shell .mas-home-journey { padding:24px 12px 20px; border-radius:18px; }
  .mas-home-page .shell .mas-home-journey-stages { gap:12px; }
  .mas-home-page .shell .mas-home-journey-stages li { gap:12px; }
  .mas-home-page .shell .mas-home-journey-icon { width:56px; height:56px; border-radius:16px; }
  .mas-home-page .shell .mas-home-journey-icon svg { width:32px; height:32px; }
  .mas-home-page .shell .mas-home-journey-label { font-size:14px; font-weight:500; }
  .mas-home-page .shell .mas-home-journey-stages li:not(:last-child)::after { top:27px; left:calc(50% + 31px); width:calc(100% - 50px); }
  .mas-home-page .shell .mas-home-journey-stages li:not(:last-child)::before { top:23px; left:calc(150% - 25px); }
  .mas-home-page .shell .mas-home-journey figcaption { margin-top:20px; }
  .mas-home-page .shell .mas-home-benefits { gap:12px; }
  .mas-home-page .shell .mas-home-benefit { padding:16px; border-radius:16px; }
  .mas-home-page .shell .mas-home-benefit h2 { font-size:16px; }
  .mas-home-page .shell .mas-home-benefit svg { width:24px; height:24px; margin-bottom:8px; }
  .mas-home-page .shell .mas-workflow-steps { grid-template-columns:minmax(0,1fr); gap:16px; }
  .mas-home-page .shell .mas-workflow-steps li { padding:20px; }
  .mas-home-page .shell .mas-workflow-steps h3 { font-size:18px; }
}
@media (max-width:620px) {
  .mas-home-page .shell .mas-home-services-grid .mas-radar-scorecard { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
}

/* Unified buyer journey: hero, supplier search, buyer services, then technical details. */
.mas-home-page .shell .mas-home-services-section { padding-block:clamp(42px,6vw,76px); background:#fff; }
.mas-home-page .shell .mas-home-services-section .section-heading { margin-bottom:24px; }
.mas-home-page .shell .mas-home-search-section { padding-block:clamp(36px,5vw,64px); }
.mas-home-page .shell .mas-home-search-section .mas-home-supplier-search-heading { margin-bottom:14px; }
.mas-home-page .shell .mas-home-search-section .mas-home-supplier-search-heading h2 { margin:0; font-size:clamp(23px,2.4vw,30px); letter-spacing:-.02em; }
.mas-home-page .shell .mas-process-tags { display:flex; flex-wrap:wrap; align-items:center; gap:9px; margin-top:18px; padding-top:17px; border-top:1px solid #e7edf5; }
.mas-home-page .shell .mas-process-tags > strong { flex-basis:100%; color:#243c55; font-size:15px; font-weight:700; }
.mas-home-page .shell .mas-process-hint { flex-basis:100%; margin-top:-6px; color:#64748b; font-size:13px; line-height:1.5; }
.mas-home-page .shell .mas-process-tag { font:500 14px/1.4 'Noto Sans TC',sans-serif; }
.mas-home-page .shell .mas-trust-section .section-heading h2 { max-width:720px; }
@media (max-width:620px) {
  .mas-home-page .shell .mas-home-services-section { padding-block:38px; }
  .mas-home-page .shell .mas-home-services-section .section-heading { margin-bottom:18px; }
  .mas-home-page .shell .mas-home-search-section { padding-block:32px; }
  .mas-home-page .shell .mas-process-tags { gap:8px; margin-top:15px; padding-top:14px; }
  .mas-home-page .shell .mas-process-tag { min-height:36px; padding-inline:11px; }
}
.mas-home-page .shell .mas-vision-feature-image { padding:10px; }
.mas-home-page .shell .mas-vision-visual-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.mas-home-page .shell .mas-vision-visual-pair figure { min-width:0; margin:0; overflow:hidden; border:1px solid #e0e8f2; border-radius:12px; background:#f7faff; }
.mas-home-page .shell .mas-vision-visual-pair img { display:block; width:100%; height:auto; max-height:none; border-radius:0; }
.mas-home-page .shell .mas-vision-visual-pair figcaption { min-height:36px; display:grid; place-items:center; padding:7px 4px; border-top:1px solid #e0e8f2; background:#fff; font-size:12px; }
.mas-home-page .shell .mas-vision-feature-caption { margin:11px 4px 1px; color:#647b91; font-size:12px; line-height:1.6; text-align:center; }
@media (max-width:620px) {
  .mas-home-page .shell .mas-vision-visual-pair { grid-template-columns:minmax(0,1fr); gap:12px; }
  .mas-home-page .shell .mas-vision-visual-pair figcaption { min-height:40px; font-size:13px; }
  .mas-home-page .shell .mas-vision-feature-caption { font-size:13px; }
}

/* Make role entry points and the identity mark equally easy to spot. */
.nav-links > a,.nav-logout { font-size:16px; }
@media (max-width:1100px) and (min-width:821px) {
  .nav-links { gap:4px; }
  .nav-links > a,.nav-logout { padding-inline:5px; font-size:14px; }
  .nav-links .nav-cta-primary,.nav-links .nav-cta-secondary { padding-inline:10px; }
}
@media (max-width:820px) {
  .shell .nav-links { right:0; left:auto; width:min(248px,calc(100vw - 32px)); max-width:calc(100vw - 32px); }
  .shell .nav-links > a,.shell .nav-links > button { min-height:46px; font-size:16px; }
}

/* Keep the supplier search in the same light-blue family as the rest of the homepage. */
.mas-home-page .shell .mas-home-search-section { background:linear-gradient(180deg,#f4f8fd 0%,#eaf2fb 100%); }
.mas-home-page .shell .mas-home-supplier-search-heading { margin-bottom:16px; }
.mas-home-page .shell .mas-home-supplier-search-heading h2 { margin:0; color:#10243b; font-size:clamp(25px,2.5vw,32px); line-height:1.3; letter-spacing:-.025em; }
.mas-home-page .shell .mas-process-guide { display:grid; gap:5px; margin:18px 2px 0; color:#334b63; }
.mas-home-page .shell .mas-process-guide strong { color:#243c55; font-size:15px; font-weight:700; }
.mas-home-page .shell .mas-process-guide p { margin:0; color:#52677b; font-size:15px; line-height:1.7; }

.mas-home-page .shell .mas-supplier-services-section { background:#f7faff; }
.mas-home-page .shell .mas-supplier-services-section .section-heading { max-width:760px; margin-bottom:22px; }
.mas-home-page .shell .mas-supplier-services-section .section-heading .lead { margin-top:0; }
.mas-home-page .shell .mas-supplier-plan-card { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:28px; padding:clamp(22px,3vw,34px); border:1px solid #d9e5ef; border-radius:22px; background:#fff; box-shadow:0 12px 32px rgba(16,36,59,.06); }
.mas-home-page .shell .mas-supplier-plan-price { display:flex; flex-direction:column; justify-content:center; padding:8px 22px 8px 4px; border-right:1px solid #e2eaf2; }
.mas-home-page .shell .mas-supplier-plan-price > span { color:#2167d1; font-size:15px; font-weight:700; }
.mas-home-page .shell .mas-supplier-plan-price > strong { margin:12px 0 6px; color:#10243b; font-size:clamp(28px,3vw,38px); line-height:1.2; white-space:nowrap; }
.mas-home-page .shell .mas-supplier-plan-price small { font-size:.52em; font-weight:600; }
.mas-home-page .shell .mas-supplier-plan-price .mas-plan-trial-label { display:inline-block; color:#2167d1; font-size:14px; font-weight:600; line-height:1.35; white-space:normal; vertical-align:middle; }
.mas-home-page .shell .mas-supplier-plan-price p { margin:0; color:#52677b; font-size:15px; }
.mas-home-page .shell .mas-supplier-plan-details ul { display:grid; gap:12px; margin:0 0 14px; padding-left:1.25em; color:#24384a; font-size:16px; line-height:1.65; }
.mas-home-page .shell .mas-supplier-plan-details .muted { margin:0 0 9px; color:#64778a; font-size:14px; line-height:1.6; }
.mas-home-page .shell .mas-supplier-plan-details .text-link { color:#2167d1; font-size:15px; font-weight:700; text-decoration:underline; text-underline-offset:3px; }
@media (max-width:640px) {
  .mas-home-page .shell .mas-process-guide p { font-size:14px; }
  .mas-home-page .shell .mas-supplier-plan-card { grid-template-columns:minmax(0,1fr); gap:16px; padding:20px; }
  .mas-home-page .shell .mas-supplier-plan-price { padding:0 0 14px; border-right:0; border-bottom:1px solid #e2eaf2; }
  .mas-home-page .shell .mas-supplier-plan-price > strong { font-size:30px; }
  .mas-home-page .shell .mas-supplier-plan-price .mas-plan-trial-label { font-size:13px; }
  .mas-home-page .shell .mas-supplier-plan-details ul { font-size:15px; }
}
