/* EDIT GUIDE: css/content-pages.css
   Page-specific or legacy styles. Shared theme files load later and can override these rules. Check the page stylesheet list before changing colours or spacing.
   Search EDIT BLOCK for selectors/functions; see EDITING-GUIDE.md for the file map.
*/
/* FILE GUIDE: Additional layouts for material, standards, industries, resources and enquiry pages. Loaded after refresh.css. */
/* Shared additions for material, standards and enquiry pages. */
/* Guide components: industry symbols, resource links and numbered enquiry steps. */

/* EDIT BLOCK: .sector-icon. Change the declarations below; shared overrides may load later. */
.sector-icon { display:grid; place-items:center; width:60px; height:60px; flex-shrink:0; border-radius:12px; background:#123c56; color:#f0ba4f; margin-bottom:22px; }

/* EDIT BLOCK: .sector-icon svg. Change the declarations below; shared overrides may load later. */
.sector-icon svg { width:38px; height:38px; }

/* EDIT BLOCK: .sector-card. Change the declarations below; shared overrides may load later. */
.sector-card { scroll-margin-top:150px; }

/* EDIT BLOCK: .sector-card > strong. Change the declarations below; shared overrides may load later. */
.sector-card > strong { display:block; color:#123c56; font-size:15px; margin-bottom:12px; }

/* EDIT BLOCK: .sector-card:hover .sector-icon. Change the declarations below; shared overrides may load later. */
.sector-card:hover .sector-icon { background:#f0ba4f; color:#123c56; }
/* Hero reference panels: labels, symbols and links beside the main introduction. */

/* EDIT BLOCK: .guide-passport-title. Change the declarations below; shared overrides may load later. */
.guide-passport-title { padding-top:28px; font-size:27px; font-weight:600; }

/* EDIT BLOCK: .sector-map. Change the declarations below; shared overrides may load later. */
.sector-map { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:0 26px 26px; }

/* EDIT BLOCK: .sector-map a. Change the declarations below; shared overrides may load later. */
.sector-map a { display:flex; align-items:center; gap:12px; padding:12px; border:1px solid #55798f; border-radius:8px; color:white; font-size:13px; }

/* EDIT BLOCK: .sector-map a:hover. Change the declarations below; shared overrides may load later. */
.sector-map a:hover { background:#21516a; border-color:#f0ba4f; }

/* EDIT BLOCK: .sector-map .sector-icon. Change the declarations below; shared overrides may load later. */
.sector-map .sector-icon { width:32px; height:32px; margin:0; background:none; }

/* EDIT BLOCK: .sector-map .sector-icon svg. Change the declarations below; shared overrides may load later. */
.sector-map .sector-icon svg { width:30px; height:30px; }

/* EDIT BLOCK: .resource-steps. Change the declarations below; shared overrides may load later. */
.resource-steps { display:grid; gap:12px; padding:0 26px 26px; }

/* EDIT BLOCK: .resource-steps a. Change the declarations below; shared overrides may load later. */
.resource-steps a { padding:18px; border:1px solid #55798f; border-radius:8px; color:white; font-size:15px; }

/* EDIT BLOCK: .resource-steps a:hover. Change the declarations below; shared overrides may load later. */
.resource-steps a:hover { border-color:#f0ba4f; background:#21516a; }

/* EDIT BLOCK: .resource-steps span. Change the declarations below; shared overrides may load later. */
.resource-steps span { color:#f0ba4f; margin-right:12px; }
/* Guide components: industry symbols, resource links and numbered enquiry steps. */

/* EDIT BLOCK: .resource-link-grid. Change the declarations below; shared overrides may load later. */
.resource-link-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }

/* EDIT BLOCK: .resource-link-grid a. Change the declarations below; shared overrides may load later. */
.resource-link-grid a { display:flex; justify-content:space-between; gap:18px; padding:24px; border:1px solid var(--border); background:white; border-radius:12px; font-weight:600; color:#123c56; }

/* EDIT BLOCK: .resource-link-grid a:hover. Change the declarations below; shared overrides may load later. */
.resource-link-grid a:hover { border-color:#e9ae3f; box-shadow:var(--shadow-card-hover); }

/* EDIT BLOCK: .enquiry-guide-list. Change the declarations below; shared overrides may load later. */
.enquiry-guide-list { list-style:none; display:grid; gap:20px; padding:0; }

/* EDIT BLOCK: .enquiry-guide-list li. Change the declarations below; shared overrides may load later. */
.enquiry-guide-list li { display:flex; align-items:flex-start; gap:24px; padding:28px; border:1px solid var(--border); border-radius:14px; }

/* EDIT BLOCK: .guide-number. Change the declarations below; shared overrides may load later. */
.guide-number { display:grid; place-items:center; width:50px; height:50px; flex-shrink:0; background:#123c56; color:#f0ba4f; border-radius:10px; font-weight:600; }

/* EDIT BLOCK: .enquiry-guide-list h3. Change the declarations below; shared overrides may load later. */
.enquiry-guide-list h3 { color:#123c56; font-size:22px; margin:0 0 12px; }

/* EDIT BLOCK: .enquiry-guide-list p. Change the declarations below; shared overrides may load later. */
.enquiry-guide-list p { font-size:15px; max-width:860px; }
/* Component styling: .refreshed-content .catalog-note a. */

/* EDIT BLOCK: .refreshed-content .catalog-note a. Change the declarations below; shared overrides may load later. */
.refreshed-content .catalog-note a { color:#f0ba4f; text-decoration:underline; }
/* Responsive or accessibility override: @media(max-width:600px). Rules inside this block apply only when its condition matches. */

/* EDIT BLOCK: @media(max-width:600px). Change the declarations below; shared overrides may load later. */
@media(max-width:600px) { .resource-link-grid { grid-template-columns:1fr; } .sector-map { padding-inline:18px; gap:8px; } .sector-map a { flex-direction:column; align-items:flex-start; font-size:12px; } .enquiry-guide-list li { padding:20px; gap:16px; } }
/* Responsive or accessibility override: @media(prefers-reduced-motion:reduce). Rules inside this block apply only when its condition matches. */

/* EDIT BLOCK: @media(prefers-reduced-motion:reduce). Change the declarations below; shared overrides may load later. */
@media(prefers-reduced-motion:reduce) { .refreshed-content .catalog-card { transition:none; transform:none; } }
/* Reusable content grids and cards: spacing, borders and hover treatment. */

/* EDIT BLOCK: .catalog-three. Change the declarations below; shared overrides may load later. */
.catalog-three { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }

/* EDIT BLOCK: .catalog-three .catalog-card. Change the declarations below; shared overrides may load later. */
.catalog-three .catalog-card { display:block; }

/* EDIT BLOCK: .catalog-three .catalog-card h3. Change the declarations below; shared overrides may load later. */
.catalog-three .catalog-card h3 { margin-top:0; }
/* Shared visual foundation: content width, section spacing, colors and headings. */

/* EDIT BLOCK: .refreshed-content .section. Change the declarations below; shared overrides may load later. */
.refreshed-content .section { scroll-margin-top:140px; }
/* Reusable content grids and cards: spacing, borders and hover treatment. */

/* EDIT BLOCK: .refreshed-content .catalog-card p,.refreshed-content .catalog-list p. Change the declarations below; shared overrides may load later. */
.refreshed-content .catalog-card p,.refreshed-content .catalog-list p { font-size:15px; }
/* Hero reference panels: labels, symbols and links beside the main introduction. */

/* EDIT BLOCK: .material-passport. Change the declarations below; shared overrides may load later. */
.material-passport { border:1px solid #55798f; border-radius:22px; overflow:hidden; background:linear-gradient(135deg,#164762,#08263d); }

/* EDIT BLOCK: .passport-top. Change the declarations below; shared overrides may load later. */
.passport-top { padding:22px 26px; display:flex; justify-content:space-between; gap:14px; border-bottom:1px solid #55798f; color:#c3d3de; font-size:11px; letter-spacing:.12em; }

/* EDIT BLOCK: .passport-symbol. Change the declarations below; shared overrides may load later. */
.passport-symbol { padding:25px 30px 10px; color:#f0ba4f; font-size:74px; font-weight:700; line-height:1.2; }

/* EDIT BLOCK: .passport-name. Change the declarations below; shared overrides may load later. */
.passport-name { padding:0 30px 24px; font-size:23px; color:white; }

/* EDIT BLOCK: .passport-grades. Change the declarations below; shared overrides may load later. */
.passport-grades { display:flex; flex-wrap:wrap; gap:9px; padding:0 30px 26px; }

/* EDIT BLOCK: .passport-grades span,.passport-grades a. Change the declarations below; shared overrides may load later. */
.passport-grades span,.passport-grades a { padding:6px 10px; border:1px solid #7091a5; border-radius:5px; color:#e4edf3; font-size:13px; }
/* Specification shortcuts: real internal links with visible pointer and keyboard states. */

/* EDIT BLOCK: .passport-grades a. Change the declarations below; shared overrides may load later. */
.passport-grades a { display:inline-flex; align-items:center; min-height:44px; text-decoration:none; }

/* EDIT BLOCK: .passport-grades a:hover. Change the declarations below; shared overrides may load later. */
.passport-grades a:hover { background:#f0ba4f; border-color:#f0ba4f; color:#092438; }

/* EDIT BLOCK: .passport-grades a:focus-visible. Change the declarations below; shared overrides may load later. */
.passport-grades a:focus-visible { outline:3px solid #f0ba4f; outline-offset:4px; background:#21516a; color:white; }

/* EDIT BLOCK: .passport-bottom. Change the declarations below; shared overrides may load later. */
.passport-bottom { padding:18px 26px; color:#d4e3ec; font-size:12px; background:#061c2c55; border-top:1px solid #55798f; }
/* Component styling: .reference-links. */

/* EDIT BLOCK: .reference-links. Change the declarations below; shared overrides may load later. */
.reference-links { padding-top:20px; font-size:13px; color:#526778; }
/* Component styling: .reference-links a. */

/* EDIT BLOCK: .reference-links a. Change the declarations below; shared overrides may load later. */
.reference-links a { text-decoration:underline; text-underline-offset:3px; color:#123c56; }
/* Component styling: .catalog-chip. */

/* EDIT BLOCK: .catalog-chip. Change the declarations below; shared overrides may load later. */
.catalog-chip { display:inline-block; margin-bottom:18px; padding:7px 12px; background:#eef3f6; color:#123c56; border-radius:5px; font-size:12px; }
/* Reusable content grids and cards: spacing, borders and hover treatment. */

/* EDIT BLOCK: .process-list. Change the declarations below; shared overrides may load later. */
.process-list { list-style:none; padding:0; counter-reset:steps; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }

/* EDIT BLOCK: .process-list li. Change the declarations below; shared overrides may load later. */
.process-list li { padding:28px; border:1px solid var(--border); border-radius:14px; background:white; }

/* EDIT BLOCK: .process-list li::before. Change the declarations below; shared overrides may load later. */
.process-list li::before { counter-increment:steps; content:"0" counter(steps); display:block; color:#986300; font-weight:700; letter-spacing:.12em; margin-bottom:16px; }

/* EDIT BLOCK: .process-list h3. Change the declarations below; shared overrides may load later. */
.process-list h3 { margin-bottom:12px; font-size:21px; }

/* EDIT BLOCK: .process-list p. Change the declarations below; shared overrides may load later. */
.process-list p { font-size:14px; }
/* Enquiry builder: form layout, input styling, draft preview and status feedback. */

/* EDIT BLOCK: .enquiry-layout. Change the declarations below; shared overrides may load later. */
.enquiry-layout { display:grid; grid-template-columns:1.4fr 1fr; gap:32px; align-items:start; }

/* EDIT BLOCK: .enquiry-layout .catalog-list. Change the declarations below; shared overrides may load later. */
.enquiry-layout .catalog-list { grid-template-columns:1fr; list-style:none; padding:0; margin-bottom:22px; }

/* EDIT BLOCK: .enquiry-layout .catalog-list li. Change the declarations below; shared overrides may load later. */
.enquiry-layout .catalog-list li { padding:0 0 16px; border:0; border-bottom:1px solid var(--border); border-radius:0; }

/* EDIT BLOCK: .enquiry-form. Change the declarations below; shared overrides may load later. */
.enquiry-form { padding:30px; background:white; border:1px solid var(--border); border-radius:16px; }

/* EDIT BLOCK: .form-grid. Change the declarations below; shared overrides may load later. */
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }

/* EDIT BLOCK: .field. Change the declarations below; shared overrides may load later. */
.field { display:flex; flex-direction:column; gap:8px; }

/* EDIT BLOCK: .field-full. Change the declarations below; shared overrides may load later. */
.field-full { grid-column:1 / -1; }

/* EDIT BLOCK: .field label. Change the declarations below; shared overrides may load later. */
.field label { font-size:14px; font-weight:600; color:#123c56; }

/* EDIT BLOCK: .field input,.field select,.field textarea. Change the declarations below; shared overrides may load later. */
.field input,.field select,.field textarea { width:100%; min-width:0; padding:12px; color:#17212b; background:#fbfcfd; border:1px solid #acbeca; border-radius:6px; font-size:15px; }

/* EDIT BLOCK: .field textarea. Change the declarations below; shared overrides may load later. */
.field textarea { min-height:150px; resize:vertical; }

/* EDIT BLOCK: .field small. Change the declarations below; shared overrides may load later. */
.field small { color:#526778; font-size:12px; }

/* EDIT BLOCK: .enquiry-actions. Change the declarations below; shared overrides may load later. */
.enquiry-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }

/* EDIT BLOCK: .enquiry-actions button. Change the declarations below; shared overrides may load later. */
.enquiry-actions button { cursor:pointer; border:1px solid #123c56; border-radius:6px; padding:12px 18px; background:#123c56; color:white; font-size:14px; font-weight:600; }

/* EDIT BLOCK: .enquiry-actions button + button. Change the declarations below; shared overrides may load later. */
.enquiry-actions button + button { background:white; color:#123c56; }

/* EDIT BLOCK: .enquiry-status. Change the declarations below; shared overrides may load later. */
.enquiry-status { min-height:24px; margin-top:16px; color:#123c56; font-size:14px; }

/* EDIT BLOCK: .enquiry-preview. Change the declarations below; shared overrides may load later. */
.enquiry-preview { white-space:pre-wrap; overflow-wrap:anywhere; font:14px/1.7 monospace; margin-top:18px; padding:20px; background:#edf3f6; border-radius:8px; }

/* EDIT BLOCK: .enquiry-preview[hidden]. Change the declarations below; shared overrides may load later. */
.enquiry-preview[hidden] { display:none; }

/* EDIT BLOCK: .form-notice. Change the declarations below; shared overrides may load later. */
.form-notice { padding:18px; border-left:3px solid #e9ae3f; background:#fff8e7; font-size:14px; margin-bottom:24px; color:#123c56; }
/* Responsive or accessibility override: @media(max-width:950px). Rules inside this block apply only when its condition matches. */

/* EDIT BLOCK: @media(max-width:950px). Change the declarations below; shared overrides may load later. */
@media(max-width:950px) { .catalog-three,.process-list { grid-template-columns:1fr 1fr; } .enquiry-layout { grid-template-columns:1fr; } }
/* Responsive or accessibility override: @media(max-width:600px). Rules inside this block apply only when its condition matches. */

/* EDIT BLOCK: @media(max-width:600px). Change the declarations below; shared overrides may load later. */
@media(max-width:600px) { .catalog-three,.process-list,.form-grid { grid-template-columns:1fr; } .enquiry-form { padding:22px; } .passport-symbol { font-size:60px; } }
