/*
Theme Name: Socko Medical Child v8.9
Theme URI: https://sockomed.com/
Description: Custom Socko Medical website theme preview built as an Inspiro child theme.
Author: Socko Medical
Template: inspiro
Version: 8.0.9
Text Domain: socko-medical-child-v8-9
*/

:root {
  --socko-navy:#102f49;
  --socko-navy-deep:#0a2234;
  --socko-blue:#2d72b8;
  --socko-blue-soft:#edf5fb;
  --socko-green:#7daf41;
  --socko-ink:#172633;
  --socko-muted:#5f6f7b;
  --socko-line:#dce5ea;
  --socko-paper:#f7f9fa;
  --socko-white:#fff;
  --socko-shadow:0 16px 45px rgba(12,39,58,.12);
}

html { scroll-behavior:smooth; }
body { margin:0; color:var(--socko-ink); background:#fff; font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; display:block; }
.socko-site { overflow:hidden; }
.socko-container { width:min(1180px, calc(100% - 44px)); margin:0 auto; }

.socko-header { position:fixed; z-index:1000; top:0; left:0; right:0; background:rgba(8,31,47,.78); backdrop-filter:blur(12px); border-bottom:1px solid rgba(255,255,255,.11); }
.admin-bar .socko-header { top:32px; }
.socko-header-inner { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.socko-brand img { width:74px; height:auto; }
.socko-nav { display:flex; align-items:center; gap:30px; }
.socko-nav a { color:#fff; font-size:14px; font-weight:700; position:relative; padding:30px 0 27px; }
.socko-nav a:after { content:""; position:absolute; left:0; right:100%; bottom:20px; height:2px; background:var(--socko-green); transition:.2s ease; }
.socko-nav a:hover:after { right:0; }
.socko-menu-toggle { display:none; background:none; border:0; color:#fff; font-size:26px; cursor:pointer; }

.socko-hero-slider { height:clamp(650px, 88vh, 920px); position:relative; overflow:hidden; background:#dfeaf1; }
.socko-slide { position:absolute; inset:0; background-size:cover; background-position:center; opacity:0; pointer-events:none; transition:opacity .9s ease; }
.socko-slide.is-active { opacity:1; pointer-events:auto; }
.socko-slide-shade { position:absolute; inset:0; background:linear-gradient(90deg, rgba(5,28,43,.78) 0%, rgba(5,28,43,.42) 37%, rgba(5,28,43,.06) 66%, rgba(5,28,43,0) 100%); }
.socko-slide-light .socko-slide-shade { background:linear-gradient(90deg, rgba(5,28,43,.76) 0%, rgba(5,28,43,.38) 37%, rgba(5,28,43,.04) 66%, rgba(5,28,43,0) 100%); }
.socko-slide-dark .socko-slide-shade { background:linear-gradient(90deg, rgba(15,26,34,.80) 0%, rgba(15,26,34,.46) 42%, rgba(15,26,34,.05) 70%, rgba(15,26,34,0) 100%); }
.socko-slide-content { height:100%; position:relative; z-index:2; display:flex; align-items:center; padding-top:62px; }
.socko-slide-copy { max-width:650px; color:#fff; }
.socko-eyebrow { color:#9bc562; font-weight:800; font-size:12px; letter-spacing:.16em; text-transform:uppercase; margin-bottom:14px; }
.socko-slide-copy h1, .socko-slide-copy h2 { color:#fff; margin:0 0 18px; font-size:clamp(46px, 5.1vw, 76px); line-height:.98; letter-spacing:-.045em; font-weight:800; max-width:760px; }
.socko-slide-copy p { color:rgba(255,255,255,.85); max-width:610px; font-size:18px; line-height:1.68; margin:0 0 30px; text-shadow:0 2px 9px rgba(0,0,0,.15); }
.socko-actions { display:flex; flex-wrap:wrap; gap:14px; }
.socko-btn { display:inline-flex; min-height:49px; align-items:center; justify-content:center; border-radius:4px; padding:0 22px; text-transform:uppercase; font-size:12px; letter-spacing:.075em; font-weight:800; transition:.22s ease; border:1px solid var(--socko-navy); }
.socko-btn-primary { background:var(--socko-navy); color:#fff; border-color:var(--socko-navy); }
.socko-btn-primary:hover { background:var(--socko-blue); border-color:var(--socko-blue); transform:translateY(-2px); }
.socko-btn-secondary { background:transparent; color:var(--socko-navy); border-color:var(--socko-navy); }
.socko-btn-secondary:hover { background:var(--socko-navy); color:#fff; transform:translateY(-2px); }

.socko-slider-arrow { position:absolute; top:50%; transform:translateY(-50%); z-index:5; width:48px; height:48px; border-radius:50%; border:1px solid rgba(255,255,255,.42); color:#fff; background:rgba(5,28,43,.28); font-size:35px; line-height:1; cursor:pointer; backdrop-filter:blur(6px); transition:.2s; }
.socko-slider-arrow:hover { background:rgba(5,28,43,.66); }
.socko-slider-prev { left:22px; }
.socko-slider-next { right:22px; }
.socko-slider-dots { position:absolute; z-index:5; left:50%; bottom:26px; transform:translateX(-50%); display:flex; gap:9px; }
.socko-slider-dots button { width:9px; height:9px; border-radius:50%; border:1px solid rgba(255,255,255,.82); background:transparent; padding:0; cursor:pointer; }
.socko-slider-dots button.is-active { background:#fff; transform:scale(1.16); }

.socko-section { padding:90px 0; }
.socko-section-alt { background:var(--socko-paper); }
.socko-section-intro { padding-top:96px; }
.socko-section-head { display:flex; justify-content:space-between; gap:50px; align-items:end; margin-bottom:38px; }
.socko-section-head > div { max-width:650px; }
.socko-section-head h2, .socko-about-copy h2, .socko-quality-grid h2, .socko-cta h2 { margin:0; font-size:clamp(36px,4vw,54px); line-height:1.04; letter-spacing:-.04em; }
.socko-section-head > p { max-width:530px; color:var(--socko-muted); font-size:16px; line-height:1.72; margin:0; }
.socko-section-head-centered { text-align:center; display:block; max-width:800px; margin:0 auto 44px; }
.socko-section-head-centered p { margin:16px auto 0; max-width:700px; }

.socko-portfolio-visual-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:18px; }
.socko-visual-card { min-height:330px; position:relative; overflow:hidden; border-radius:12px; background-size:cover; background-position:center; box-shadow:0 8px 26px rgba(13,41,59,.08); }
.socko-visual-card:nth-child(1), .socko-visual-card:nth-child(2) { grid-column:span 6; }
.socko-visual-card:nth-child(3), .socko-visual-card:nth-child(4), .socko-visual-card:nth-child(5) { grid-column:span 4; }
.socko-visual-overlay { position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,27,42,.02),rgba(5,27,42,.73)); transition:.25s; }
.socko-visual-card:hover .socko-visual-overlay { background:linear-gradient(180deg,rgba(5,27,42,.08),rgba(5,27,42,.84)); }
.socko-visual-card > div { position:absolute; z-index:2; left:24px; right:24px; bottom:24px; color:#fff; }
.socko-visual-card small { display:block; color:#b8d78d; font-weight:800; letter-spacing:.14em; font-size:11px; }
.socko-visual-card h3 { font-size:27px; margin:7px 0 7px; line-height:1.08; }
.socko-visual-card p { font-size:13px; line-height:1.55; color:rgba(255,255,255,.78); margin:0 0 12px; max-width:360px; }
.socko-visual-card > div > span:last-child { font-size:12px; font-weight:800; letter-spacing:.04em; }

.socko-feature-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.socko-feature-card { background:#fff; border:1px solid var(--socko-line); border-radius:10px; overflow:hidden; transition:.22s ease; }
.socko-feature-card:hover { transform:translateY(-5px); box-shadow:var(--socko-shadow); }
.socko-feature-media { height:220px; background:#eef3f6; overflow:hidden; }
.socko-feature-media img { width:100%; height:100%; object-fit:cover; transition:.35s ease; }
.socko-feature-card:hover img { transform:scale(1.025); }
.socko-feature-body { padding:22px; }
.socko-feature-kicker { color:var(--socko-green); font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.socko-feature-body h3 { font-size:24px; margin:8px 0; }
.socko-feature-body p { color:var(--socko-muted); margin:0; font-size:14px; line-height:1.65; }
.socko-center-action { text-align:center; margin-top:34px; }

.socko-about-grid { display:grid; grid-template-columns:1.04fr .96fr; gap:58px; align-items:center; }
.socko-about-photo { overflow:hidden; border-radius:12px; box-shadow:var(--socko-shadow); }
.socko-about-photo img { width:100%; aspect-ratio:16/10; object-fit:cover; }
.socko-about-copy > p { color:var(--socko-muted); font-size:16px; line-height:1.75; margin:18px 0 26px; }
.socko-capabilities { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.socko-capability { border-top:3px solid var(--socko-green); padding-top:12px; }
.socko-capability strong { display:block; font-size:13px; margin-bottom:5px; }
.socko-capability span { display:block; color:var(--socko-muted); font-size:12px; line-height:1.5; }
.socko-about-actions { margin-top:28px; }

.socko-solutions { background:linear-gradient(125deg,var(--socko-navy-deep),#123b55); color:#fff; }
.socko-light-head h2 { color:#fff; }
.socko-light-head p { color:rgba(255,255,255,.72); }
.socko-solutions-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.socko-solution-card { padding:32px; border-radius:10px; border:1px solid rgba(255,255,255,.15); background:rgba(255,255,255,.055); }
.socko-solution-card span { color:#a7cd78; font-size:11px; font-weight:800; letter-spacing:.14em; }
.socko-solution-card h3 { color:#fff; font-size:29px; margin:10px 0 10px; }
.socko-solution-card p { margin:0; color:rgba(255,255,255,.72); font-size:14px; line-height:1.7; }

.socko-quality-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:58px; align-items:start; }
.socko-quality-intro { margin:18px 0 0; color:var(--socko-muted); line-height:1.7; font-size:16px; }
.socko-quality-list { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.socko-quality-item { background:var(--socko-blue-soft); border-radius:9px; padding:24px; border:1px solid #d8e6ef; }
.socko-quality-item strong { display:block; margin-bottom:6px; font-size:15px; color:var(--socko-navy); }
.socko-quality-item span { color:var(--socko-muted); font-size:13px; line-height:1.6; }

.socko-cta { padding:80px 0; background:#edf4f7; }
.socko-cta-inner { display:flex; justify-content:space-between; align-items:center; gap:45px; }
.socko-cta p { margin:12px 0 0; color:var(--socko-muted); line-height:1.65; }

.socko-footer { background:#071a27; color:#fff; padding:60px 0 22px; }
.socko-footer-grid { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:56px; }
.socko-footer-logo { width:80px; margin-bottom:14px; }
.socko-footer h4 { color:#bbd1dc; font-size:12px; text-transform:uppercase; letter-spacing:.13em; margin:0 0 14px; }
.socko-footer p, .socko-footer a { color:rgba(255,255,255,.67); font-size:13px; line-height:1.75; }
.socko-footer-links { display:grid; gap:7px; }
.socko-footer-contact { color:#b8d78d !important; font-weight:700; }
.socko-footer-bottom { border-top:1px solid rgba(255,255,255,.1); margin-top:40px; padding-top:20px; display:flex; justify-content:space-between; gap:20px; color:rgba(255,255,255,.5); font-size:12px; }
.socko-basic-page { padding:130px 0 80px; min-height:70vh; }

@media (max-width:1020px) {
  .socko-feature-grid { grid-template-columns:repeat(2,1fr); }
  .socko-about-grid, .socko-quality-grid { grid-template-columns:1fr; }
  .socko-visual-card:nth-child(n) { grid-column:span 6; }
  .socko-visual-card:nth-child(5) { grid-column:span 12; }
}

@media (max-width:780px) {
  .admin-bar .socko-header { top:46px; }
  .socko-header-inner { min-height:68px; }
  .socko-brand img { width:62px; }
  .socko-menu-toggle { display:block; }
  .socko-nav { display:none; position:absolute; top:68px; left:0; right:0; background:rgba(7,27,40,.98); flex-direction:column; align-items:flex-start; gap:0; padding:12px 22px 18px; border-top:1px solid rgba(255,255,255,.1); }
  .socko-nav.is-open { display:flex; }
  .socko-nav a { width:100%; padding:12px 0; }
  .socko-nav a:after { display:none; }
  .socko-hero-slider { height:720px; }
  .socko-slide { background-position:64% center; }
  .socko-slide-shade, .socko-slide-light .socko-slide-shade, .socko-slide-dark .socko-slide-shade { background:linear-gradient(90deg,rgba(5,28,43,.86),rgba(5,28,43,.55) 66%,rgba(5,28,43,.23)); }
  .socko-slide-copy { max-width:88%; }
  .socko-slide-copy h1, .socko-slide-copy h2 { font-size:48px; }
  .socko-slide-copy p { font-size:16px; }
  .socko-slider-arrow { width:40px; height:40px; font-size:29px; }
  .socko-slider-prev { left:10px; }
  .socko-slider-next { right:10px; }
  .socko-section { padding:66px 0; }
  .socko-section-head { display:block; }
  .socko-section-head > p { margin-top:15px; }
  .socko-visual-card:nth-child(n) { grid-column:span 12; min-height:290px; }
  .socko-feature-grid, .socko-capabilities, .socko-quality-list, .socko-solutions-grid, .socko-footer-grid { grid-template-columns:1fr; }
  .socko-cta-inner { display:block; }
  .socko-cta .socko-actions { margin-top:24px; }
  .socko-footer-bottom { display:block; }
}

@media (max-width:520px) {
  .socko-container { width:min(100% - 28px,1180px); }
  .socko-hero-slider { height:690px; }
  .socko-slide-copy { max-width:94%; }
  .socko-slide-copy h1, .socko-slide-copy h2 { font-size:40px; }
  .socko-slide-copy p { font-size:15px; }
  .socko-slider-arrow { display:none; }
  .socko-feature-grid { grid-template-columns:1fr; }
  .socko-section-head h2, .socko-about-copy h2, .socko-quality-grid h2, .socko-cta h2 { font-size:36px; }
}

/* v3 poster hero + catalog/product pages */
.socko-poster-slider {
  height:clamp(620px,56.25vw,860px);
  max-height:calc(100vh - 20px);
  background:#0b2233;
}
.socko-poster-slide {
  background-size:cover;
  background-position:center;
  color:#fff;
}
.socko-poster-slide::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(5,25,39,.12),rgba(5,25,39,0) 42%,rgba(5,25,39,.28));
  pointer-events:none;
}
.socko-poster-cta {
  position:absolute;
  z-index:3;
  right:28px;
  bottom:28px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  background:rgba(7,31,48,.82);
  color:#fff;
  border:1px solid rgba(255,255,255,.35);
  backdrop-filter:blur(8px);
  border-radius:4px;
  padding:13px 17px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.socko-poster-cta b { font-size:16px; }
.socko-sky-slide::before {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,rgba(9,41,64,.93) 0%,rgba(9,41,64,.68) 32%,rgba(255,255,255,0) 62%);
}
.socko-sky-copy {
  position:absolute;
  z-index:2;
  left:max(7vw,70px);
  top:50%;
  transform:translateY(-50%);
  max-width:520px;
  color:#fff;
  display:flex;
  flex-direction:column;
  gap:13px;
}
.socko-sky-copy small { color:#a6cf6e; font-size:12px; font-weight:800; letter-spacing:.14em; }
.socko-sky-copy strong { font-size:clamp(38px,4vw,62px); line-height:1.02; letter-spacing:-.035em; }
.socko-sky-copy em { font-style:normal; font-size:17px; line-height:1.65; color:rgba(255,255,255,.82); }

.socko-category-grid { display:grid; grid-template-columns:repeat(10,1fr); gap:18px; }
.socko-category-card { grid-column:span 5; background:#fff; border:1px solid var(--socko-line); border-radius:12px; overflow:hidden; transition:.22s ease; }
.socko-category-card:nth-child(n+3) { grid-column:span 3; }
.socko-category-card:last-child { grid-column:span 4; }
.socko-category-card:hover { transform:translateY(-4px); box-shadow:var(--socko-shadow); }
.socko-category-media { aspect-ratio:16/9; height:auto; background:#f2f6f8; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.socko-category-media img { width:100%; height:100%; object-fit:cover; object-position:center; padding:0; }
.socko-category-media-light { background:#f7fbfe; }
.socko-category-body { padding:22px 24px 24px; }
.socko-category-body small { color:var(--socko-green); font-weight:800; font-size:11px; letter-spacing:.12em; }
.socko-category-body h3 { margin:7px 0 6px; font-size:26px; color:var(--socko-ink); }
.socko-category-body p { margin:0 0 12px; color:var(--socko-muted); font-size:14px; line-height:1.55; }
.socko-category-body > span { font-size:12px; font-weight:800; color:var(--socko-navy); }

.socko-feature-card { color:inherit; }
.socko-feature-media { aspect-ratio:16/9; height:auto; display:flex; align-items:center; justify-content:center; background:#f2f6f8; overflow:hidden; }
.socko-feature-media img { width:100%; height:100%; object-fit:cover; object-position:center; padding:0; transform:none !important; }
.socko-feature-body h3 { line-height:1.18; }
.socko-text-link { display:block; margin-top:14px; color:var(--socko-navy); font-size:12px; font-weight:800; }

.socko-subpage { padding-top:78px; }
.admin-bar .socko-subpage { padding-top:78px; }
.socko-page-hero { padding:112px 0 92px; background:linear-gradient(115deg,#092b43,#31566b); color:#fff; }
.socko-page-hero h1 { color:#fff; margin:7px 0 18px; font-size:clamp(48px,6vw,78px); line-height:.98; letter-spacing:-.05em; max-width:900px; }
.socko-page-hero p { color:rgba(255,255,255,.8); max-width:720px; font-size:18px; line-height:1.7; margin:0; }
.socko-page-hero-products { background:linear-gradient(115deg,#092b43,#1e526d); }
.socko-page-hero-about { background:linear-gradient(115deg,#0c324b,#497082); }
.socko-page-hero-quality { background:linear-gradient(115deg,#0b3147,#295d64); }
.socko-category-jump { position:sticky; top:78px; z-index:50; background:#fff; border-bottom:1px solid var(--socko-line); box-shadow:0 4px 16px rgba(10,37,54,.05); }
.admin-bar .socko-category-jump { top:110px; }
.socko-category-jump .socko-container { display:flex; gap:24px; overflow:auto; white-space:nowrap; }
.socko-category-jump a { padding:17px 0; font-size:12px; font-weight:800; color:var(--socko-navy); }
.socko-catalog-section:nth-of-type(even) { background:var(--socko-paper); }
.socko-product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.socko-product-card { background:#fff; border:1px solid var(--socko-line); border-radius:11px; overflow:hidden; transition:.22s ease; }
.socko-product-card:hover { transform:translateY(-4px); box-shadow:var(--socko-shadow); }
.socko-product-image { aspect-ratio:16/9; height:auto; background:#f3f6f8; display:flex; align-items:center; justify-content:center; overflow:hidden; }
.socko-product-image img { width:100%; height:100%; object-fit:cover; object-position:center; padding:0; }
.socko-product-copy { padding:22px; }
.socko-product-copy > span { color:var(--socko-green); font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.socko-product-copy h3 { margin:8px 0; font-size:22px; line-height:1.18; }
.socko-product-copy p { color:var(--socko-muted); font-size:13px; line-height:1.65; margin:0 0 13px; }
.socko-product-copy b { font-size:12px; color:var(--socko-navy); }

.socko-value-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.socko-value-grid > div { background:#fff; border:1px solid var(--socko-line); border-radius:10px; padding:25px; border-top:4px solid var(--socko-green); }
.socko-value-grid strong { font-size:16px; color:var(--socko-navy); }
.socko-value-grid p { color:var(--socko-muted); font-size:13px; line-height:1.65; margin:10px 0 0; }
.socko-focus-list { display:flex; flex-wrap:wrap; gap:12px; }
.socko-focus-list a, .socko-focus-list span { display:inline-flex; padding:12px 16px; border:1px solid var(--socko-line); border-radius:999px; background:#fff; font-size:13px; font-weight:700; color:var(--socko-navy); }

.socko-quality-large-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.socko-quality-large-grid > div { background:var(--socko-blue-soft); border:1px solid #d6e5ef; border-radius:10px; padding:28px; }
.socko-quality-large-grid span { color:var(--socko-green); font-size:11px; font-weight:800; letter-spacing:.12em; }
.socko-quality-large-grid strong { display:block; margin:7px 0 8px; font-size:18px; color:var(--socko-navy); }
.socko-quality-large-grid p { margin:0; color:var(--socko-muted); font-size:14px; line-height:1.65; }

.socko-product-hero { padding:115px 0 85px; background:linear-gradient(115deg,#092b43,#244e65); color:#fff; }
.socko-product-hero-grid { display:grid; grid-template-columns:1fr 1fr; gap:54px; align-items:center; }
.socko-product-hero h1 { color:#fff; margin:8px 0 18px; font-size:clamp(44px,5vw,72px); line-height:1; letter-spacing:-.045em; }
.socko-product-hero p { color:rgba(255,255,255,.8); font-size:17px; line-height:1.7; max-width:600px; }
.socko-product-hero-image { background:#fff; border-radius:12px; overflow:hidden; min-height:390px; display:flex; align-items:center; justify-content:center; box-shadow:0 22px 55px rgba(0,0,0,.22); }
.socko-product-hero-image img { width:100%; height:100%; max-height:440px; object-fit:contain; padding:14px; }
.socko-text-link-light { color:#b9d88d; font-size:12px; font-weight:800; }
.socko-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:55px; align-items:start; }
.socko-detail-grid h2 { margin:6px 0 14px; font-size:clamp(34px,4vw,52px); letter-spacing:-.04em; }
.socko-detail-grid p { color:var(--socko-muted); font-size:16px; line-height:1.75; }
.socko-detail-points { display:grid; gap:12px; }
.socko-detail-points > div { display:flex; gap:11px; align-items:flex-start; padding:16px 18px; border:1px solid var(--socko-line); border-radius:8px; background:#fff; font-size:14px; }
.socko-detail-points span { color:var(--socko-green); font-weight:900; }

@media (max-width:1020px) {
  .socko-category-card:nth-child(n), .socko-category-card:last-child { grid-column:span 5; }
  .socko-product-grid { grid-template-columns:repeat(2,1fr); }
  .socko-value-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:780px) {
  .socko-poster-slider { height:680px; max-height:none; }
  .socko-poster-slide { background-size:cover; background-position:center; }
  .socko-poster-cta { right:14px; bottom:22px; }
  .socko-sky-copy { left:28px; right:28px; max-width:80%; }
  .socko-sky-copy strong { font-size:42px; }
  .socko-category-grid { display:block; }
  .socko-category-card { display:block; margin-bottom:16px; }
  .socko-category-media { height:auto; }
  .socko-product-grid, .socko-quality-large-grid, .socko-product-hero-grid, .socko-detail-grid { grid-template-columns:1fr; }
  .socko-value-grid { grid-template-columns:1fr; }
  .socko-category-jump { top:68px; }
  .admin-bar .socko-category-jump { top:114px; }
  .socko-page-hero { padding:82px 0 70px; }
}
@media (max-width:520px) {
  .socko-poster-slider { height:600px; }
  .socko-poster-slide { background-position:center; }
  .socko-poster-cta { font-size:10px; padding:11px 13px; }
  .socko-product-grid { grid-template-columns:1fr; }
  .socko-product-hero-image { min-height:280px; }
}

/* =========================================================
   v5 layout overrides
   - header is a separate solid bar above the slideshow
   - hero uses complete 16:9 posters with no text overlay
   - portfolio intentionally reuses the approved poster artwork
   - Featured Products section removed from the homepage
   ========================================================= */
.socko-site { overflow-x:clip; overflow-y:visible; }

.socko-header {
  position:sticky;
  top:0;
  left:auto;
  right:auto;
  z-index:1000;
  background:#102f49;
  backdrop-filter:none;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.admin-bar .socko-header { top:32px; }
.socko-header-inner { min-height:76px; }
.socko-nav a { padding:29px 0 26px; }

/* Header is now in normal document flow, so subpages do not need a top offset. */
.socko-subpage,
.admin-bar .socko-subpage { padding-top:0; }

.socko-poster-slider {
  width:100%;
  height:min(56.28vw, calc(100vh - 76px));
  min-height:520px;
  max-height:941px;
  background:#0b2233;
}
.socko-poster-slide {
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}
.socko-poster-slide::after { display:none; }
.socko-poster-cta,
.socko-sky-copy,
.socko-sky-slide::before { display:none !important; }

/* Keep controls subtle so they do not compete with the poster artwork. */
.socko-slider-arrow {
  background:rgba(10,34,52,.42);
  border-color:rgba(255,255,255,.5);
}
.socko-slider-dots { bottom:18px; }

/* The approved poster graphics are all the same 16:9-ish ratio. */
.socko-category-media,
.socko-product-image,
.socko-product-hero-image { background:#eef3f6; }
.socko-category-media img,
.socko-product-image img { object-fit:cover; object-position:center; }
.socko-product-hero-image img { object-fit:contain; object-position:center; }

/* Sticky product-family bar sits below the independent header. */
.socko-category-jump { top:76px; }
.admin-bar .socko-category-jump { top:108px; }

@media (max-width:860px) {
  .admin-bar .socko-header { top:46px; }
  .socko-header-inner { min-height:68px; }
  .socko-nav { top:68px; }
  .socko-poster-slider {
    height:max(56.28vw, 300px);
    min-height:300px;
    max-height:calc(100vh - 68px);
  }
  .socko-poster-slide { background-position:center; }
  .socko-category-jump { top:68px; }
  .admin-bar .socko-category-jump { top:114px; }
}

@media (max-width:520px) {
  .socko-poster-slider { min-height:260px; height:56.28vw; }
  .socko-slider-dots { bottom:10px; }
}

/* =========================================================
   v6 layout corrections
   - preserve complete 16:9 hero posters (no viewport cropping)
   - align logo/navigation toward the outer edges
   - make all homepage portfolio cards equal size
   - provide a dedicated, structured Products overview page
   ========================================================= */

/* Header: full-width inner rail rather than the generic centered content width. */
.socko-header .socko-container {
  width:100%;
  max-width:none;
  margin:0;
  padding-left:clamp(18px,3vw,52px);
  padding-right:clamp(18px,3vw,52px);
  box-sizing:border-box;
}
.socko-header-inner { justify-content:space-between; }
.socko-brand { flex:0 0 auto; }
.socko-nav { margin-left:auto; }

/* Hero: always preserve the entire approved poster instead of limiting height to viewport. */
.socko-poster-slider {
  width:100%;
  aspect-ratio:1672 / 941;
  height:auto;
  min-height:0;
  max-height:none;
  background:#0b2233;
}
.socko-poster-slide {
  background-size:contain;
  background-position:center center;
  background-repeat:no-repeat;
}

/* Homepage portfolio: five cards, one consistent footprint and image ratio. */
.socko-category-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:18px;
  align-items:stretch;
}
.socko-category-card,
.socko-category-card:nth-child(n+3),
.socko-category-card:last-child {
  grid-column:span 2;
  display:flex;
  flex-direction:column;
  min-width:0;
}
.socko-category-card:nth-child(4) { grid-column:2 / span 2; }
.socko-category-card:nth-child(5) { grid-column:4 / span 2; }
.socko-category-media {
  width:100%;
  aspect-ratio:16 / 9;
  flex:0 0 auto;
}
.socko-category-media img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.socko-category-body {
  flex:1;
  display:flex;
  flex-direction:column;
}
.socko-category-body > span { margin-top:auto; padding-top:8px; }

/* Products overview page */
.socko-product-family-overview {
  padding:44px 0 30px;
  background:#f6f9fb;
  border-bottom:1px solid var(--socko-line);
}
.socko-family-overview-grid {
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
}
.socko-family-overview-card {
  background:#fff;
  border:1px solid var(--socko-line);
  border-radius:10px;
  overflow:hidden;
  transition:.22s ease;
  min-width:0;
}
.socko-family-overview-card:hover { transform:translateY(-3px); box-shadow:0 12px 32px rgba(12,39,58,.10); }
.socko-family-overview-image { aspect-ratio:16/9; background:#eef3f6; overflow:hidden; }
.socko-family-overview-image img { width:100%; height:100%; object-fit:cover; object-position:center; }
.socko-family-overview-copy { padding:16px 16px 18px; }
.socko-family-overview-copy small { display:block; color:var(--socko-green); font-weight:800; letter-spacing:.12em; font-size:10px; margin-bottom:7px; }
.socko-family-overview-copy strong { display:block; color:var(--socko-navy); font-size:16px; line-height:1.25; }
.socko-family-overview-copy span { display:block; color:var(--socko-muted); font-size:11px; line-height:1.45; margin-top:6px; }

.socko-catalog-section { scroll-margin-top:128px; }
.socko-catalog-section:nth-of-type(even) { background:#f7f9fa; }
.socko-catalog-heading {
  display:grid;
  grid-template-columns:68px minmax(0,760px);
  gap:20px;
  align-items:start;
  margin-bottom:30px;
}
.socko-catalog-number {
  color:#b7c7d2;
  font-size:30px;
  font-weight:800;
  line-height:1;
  padding-top:5px;
}
.socko-catalog-heading h2 { margin:0; font-size:clamp(34px,3.4vw,48px); line-height:1.04; letter-spacing:-.035em; }
.socko-catalog-heading p { margin:11px 0 0; color:var(--socko-muted); font-size:15px; line-height:1.65; max-width:720px; }

.socko-products-page .socko-product-grid { align-items:stretch; }
.socko-products-page .socko-product-card { display:flex; flex-direction:column; height:100%; }
.socko-products-page .socko-product-image { flex:0 0 auto; aspect-ratio:16/9; }
.socko-products-page .socko-product-copy { display:flex; flex-direction:column; flex:1; }
.socko-products-page .socko-product-copy b { margin-top:auto; padding-top:8px; }

@media (max-width:1100px) {
  .socko-family-overview-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .socko-category-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .socko-category-card,
  .socko-category-card:nth-child(n+3),
  .socko-category-card:last-child,
  .socko-category-card:nth-child(4),
  .socko-category-card:nth-child(5) { grid-column:auto; }
}

@media (max-width:780px) {
  .socko-header .socko-container { padding-left:18px; padding-right:18px; }
  .socko-poster-slider { aspect-ratio:16/9; height:auto; min-height:0; max-height:none; }
  .socko-poster-slide { background-size:contain; background-position:center; }
  .socko-category-grid { grid-template-columns:1fr; }
  .socko-category-card,
  .socko-category-card:nth-child(n+3),
  .socko-category-card:last-child,
  .socko-category-card:nth-child(4),
  .socko-category-card:nth-child(5) { grid-column:auto; }
  .socko-family-overview-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .socko-catalog-heading { grid-template-columns:44px minmax(0,1fr); gap:12px; }
  .socko-catalog-number { font-size:22px; }
}

@media (max-width:520px) {
  .socko-poster-slider { aspect-ratio:16/9; height:auto; min-height:0; }
  .socko-family-overview-grid { grid-template-columns:1fr; }
  .socko-catalog-heading { grid-template-columns:1fr; }
  .socko-catalog-number { display:none; }
}


/* =========================================================
   v7 product catalog + product detail refinement
   - individual product imagery instead of repeated posters
   - remove Cement Mixer / Cement Dispenser / Dentfiller cards
   - richer product pages grounded in approved IFU information
   - packaging-led biomaterials presentation
   ========================================================= */

.socko-products-page .socko-product-image,
.socko-family-overview-image {
  aspect-ratio:16/9;
  background:linear-gradient(135deg,#f6f9fb,#e8f0f5);
}
.socko-products-page .socko-product-image img,
.socko-family-overview-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}

.socko-product-card {
  border:1px solid #d9e3e9;
  border-radius:11px;
  overflow:hidden;
  background:#fff;
  transition:transform .22s ease, box-shadow .22s ease;
}
.socko-product-card:hover {
  transform:translateY(-4px);
  box-shadow:0 14px 34px rgba(12,39,58,.11);
}
.socko-product-copy { padding:22px; }
.socko-product-copy > span {
  color:var(--socko-green);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:10px;
  font-weight:800;
}
.socko-product-copy h3 { margin:8px 0 9px; line-height:1.16; }
.socko-product-copy p { color:var(--socko-muted); line-height:1.6; }

.socko-product-hero { padding:88px 0 74px; }
.socko-product-hero-copy { min-width:0; }
.socko-product-hero-copy h1 { max-width:780px; }
.socko-product-license {
  display:inline-flex;
  align-items:center;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(255,255,255,.08);
  color:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-size:12px;
  font-weight:700;
  margin:4px 0 22px;
}
.socko-product-hero-image {
  aspect-ratio:16/9;
  min-height:0;
  background:#f4f8fa;
}
.socko-product-hero-image img {
  width:100%;
  height:100%;
  max-height:none;
  object-fit:contain;
  padding:0;
}

.socko-detail-intro-grid {
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);
  gap:58px;
  align-items:start;
}
.socko-detail-intro-grid h2,
.socko-detail-two-col h2 {
  margin:6px 0 16px;
  font-size:clamp(34px,3.5vw,50px);
  letter-spacing:-.04em;
  line-height:1.05;
}
.socko-detail-intro-grid > div > p {
  color:var(--socko-muted);
  font-size:16px;
  line-height:1.8;
  max-width:760px;
}
.socko-quick-facts { display:grid; gap:12px; }
.socko-quick-facts > div {
  padding:18px 20px;
  border:1px solid var(--socko-line);
  border-radius:10px;
  background:#fff;
}
.socko-quick-facts span {
  display:block;
  color:var(--socko-green);
  text-transform:uppercase;
  letter-spacing:.11em;
  font-size:10px;
  font-weight:800;
  margin-bottom:7px;
}
.socko-quick-facts strong {
  display:block;
  color:var(--socko-ink);
  font-size:14px;
  line-height:1.55;
}

.socko-detail-two-col {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:56px;
  align-items:start;
}
.socko-detail-list { display:grid; gap:11px; margin-top:22px; }
.socko-detail-list > div {
  display:flex;
  gap:12px;
  align-items:flex-start;
  padding:14px 16px;
  border:1px solid #dbe5ea;
  border-radius:9px;
  background:#fff;
}
.socko-detail-list span {
  color:var(--socko-green);
  font-weight:900;
  line-height:1.5;
}
.socko-detail-list p {
  margin:0;
  color:var(--socko-ink);
  font-size:14px;
  line-height:1.55;
}
.socko-detail-list-muted > div { background:#f7f9fa; }

.socko-spec-grid {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.socko-spec-card {
  min-height:104px;
  display:flex;
  align-items:flex-start;
  padding:20px;
  border-radius:10px;
  background:linear-gradient(135deg,#f7fbfd,#edf4f8);
  border:1px solid #d8e5ec;
  color:var(--socko-navy);
  font-size:14px;
  font-weight:700;
  line-height:1.55;
}

.socko-regulatory-note-section {
  background:linear-gradient(125deg,#0d3048,#174b65);
  color:#fff;
}
.socko-regulatory-note {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:48px;
  align-items:center;
}
.socko-regulatory-note h2 {
  margin:5px 0 14px;
  color:#fff;
  font-size:clamp(34px,3.2vw,48px);
  letter-spacing:-.035em;
}
.socko-regulatory-note p {
  margin:0;
  max-width:780px;
  color:rgba(255,255,255,.78);
  font-size:15px;
  line-height:1.72;
}
.socko-regulatory-small {
  margin-top:12px !important;
  font-size:12px !important;
  color:rgba(255,255,255,.58) !important;
}
.socko-regulatory-action {
  display:flex;
  flex-direction:column;
  gap:16px;
  align-items:flex-start;
}
.socko-regulatory-action .socko-btn-primary {
  background:#fff;
  color:var(--socko-navy);
  border-color:#fff;
}
.socko-text-link { color:#fff; font-size:13px; font-weight:700; }

@media (max-width:980px) {
  .socko-detail-intro-grid,
  .socko-detail-two-col,
  .socko-regulatory-note { grid-template-columns:1fr; }
  .socko-spec-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:560px) {
  .socko-spec-grid { grid-template-columns:1fr; }
  .socko-product-hero { padding:64px 0 58px; }
}


/* v8.2 product detail refinements */
.socko-product-detail-v2 { background:#fff; }
.socko-product-hero-v2 { padding:116px 0 0; background:linear-gradient(135deg,#f4f9fc 0%,#e7f2f9 62%,#dceef8 100%); border-bottom:1px solid #d7e4ec; }
.socko-product-breadcrumb { display:flex; gap:9px; align-items:center; color:#718391; font-size:12px; margin-bottom:28px; }
.socko-product-breadcrumb a { color:var(--socko-blue); font-weight:700; }
.socko-product-hero-v2-grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(480px,1.1fr); gap:64px; align-items:center; padding-bottom:54px; }
.socko-product-hero-v2-copy h1 { margin:6px 0 20px; color:var(--socko-navy-deep); font-size:clamp(44px,5vw,72px); line-height:1.02; letter-spacing:-.05em; max-width:760px; }
.socko-product-hero-v2-copy > p { margin:0; color:#526a79; font-size:17px; line-height:1.75; max-width:650px; }
.socko-product-hero-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:28px; }
.socko-product-hero-v2-image { aspect-ratio:16/9; border-radius:15px; overflow:hidden; background:#fff; box-shadow:0 25px 58px rgba(17,53,75,.14); border:1px solid rgba(35,91,128,.11); }
.socko-product-hero-v2-image img { width:100%; height:100%; object-fit:cover; }
.socko-product-fact-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); background:#fff; border:1px solid #d8e5ec; border-bottom:0; border-radius:14px 14px 0 0; overflow:hidden; box-shadow:0 -5px 24px rgba(15,50,73,.05); }
.socko-product-fact-strip > div { min-height:108px; padding:24px 25px; border-right:1px solid #e0e8ed; }
.socko-product-fact-strip > div:last-child { border-right:0; }
.socko-product-fact-strip span, .socko-material-callout span, .socko-sterility-note span { display:block; color:var(--socko-green); text-transform:uppercase; letter-spacing:.13em; font-size:10px; font-weight:800; margin-bottom:8px; }
.socko-product-fact-strip strong { display:block; color:var(--socko-navy-deep); font-size:14px; line-height:1.5; }
.socko-detail-overview-v2-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr); gap:72px; align-items:start; }
.socko-detail-overview-copy h2, .socko-detail-two-col-v2 h2, .socko-product-visual-copy h2 { margin:5px 0 18px; font-size:clamp(36px,4vw,55px); line-height:1.05; letter-spacing:-.045em; }
.socko-detail-overview-copy > p, .socko-detail-lead, .socko-product-visual-copy p { color:var(--socko-muted); font-size:16px; line-height:1.82; }
.socko-material-callout { margin-top:28px; border-left:4px solid var(--socko-green); padding:18px 20px; background:#f5f9fb; border-radius:0 9px 9px 0; }
.socko-material-callout strong { color:var(--socko-navy); font-size:14px; line-height:1.6; }
.socko-detail-feature-panel { background:var(--socko-navy); color:#fff; border-radius:15px; padding:34px; box-shadow:0 18px 45px rgba(12,39,58,.12); }
.socko-detail-feature-grid { display:grid; gap:2px; margin-top:10px; }
.socko-detail-feature-item { display:grid; grid-template-columns:16px 1fr; gap:13px; align-items:start; padding:17px 0; border-bottom:1px solid rgba(255,255,255,.13); }
.socko-detail-feature-item:last-child { border-bottom:0; }
.socko-detail-feature-item span { width:9px; height:9px; margin-top:7px; border-radius:50%; background:var(--socko-green); box-shadow:0 0 0 5px rgba(125,175,65,.13); }
.socko-detail-feature-item p { margin:0; color:rgba(255,255,255,.88); font-size:14px; line-height:1.55; }
.socko-detail-two-col-v2 { display:grid; grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr); gap:72px; align-items:start; }
.socko-detail-indications { border-top:1px solid #d8e3e8; }
.socko-detail-indications > div { display:grid; grid-template-columns:48px 1fr; gap:18px; padding:20px 0; border-bottom:1px solid #d8e3e8; }
.socko-detail-indications span { color:#9bb0bd; font-size:12px; font-weight:800; letter-spacing:.1em; }
.socko-detail-indications p { margin:0; color:var(--socko-ink); font-size:15px; line-height:1.62; }
.socko-spec-table-wrap { border:1px solid #d8e4eb; border-radius:12px; overflow:auto; background:#fff; }
.socko-spec-table { width:100%; border-collapse:collapse; min-width:560px; }
.socko-spec-table th { background:var(--socko-navy); color:#fff; text-align:left; padding:15px 18px; font-size:12px; letter-spacing:.04em; }
.socko-spec-table td { padding:14px 18px; border-bottom:1px solid #e1e8ed; color:#405563; font-size:14px; }
.socko-spec-table tbody tr:nth-child(even) td { background:#f7fafc; }
.socko-spec-table tbody tr:last-child td { border-bottom:0; }
.socko-sterility-note { margin-top:22px; padding:20px 22px; border-radius:10px; background:#f3f8fb; border:1px solid #dce7ed; }
.socko-sterility-note p { margin:0; color:#536b79; font-size:14px; line-height:1.6; }
.socko-product-visual-section { padding-top:32px; }
.socko-product-visual-v2 { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr); gap:58px; align-items:center; }
.socko-product-visual-image { aspect-ratio:16/9; overflow:hidden; border-radius:14px; background:#eef5f9; border:1px solid #d9e5eb; }
.socko-product-visual-image img { width:100%; height:100%; object-fit:cover; }
.socko-text-link-dark { color:var(--socko-navy); font-size:13px; font-weight:800; display:inline-block; margin-top:10px; }

/* keep product family card images visually uniform */
.socko-product-image { aspect-ratio:16/9; background:#edf5fa; }
.socko-product-image img { width:100%; height:100%; object-fit:cover; object-position:center; }

@media (max-width:980px) {
  .socko-product-hero-v2-grid, .socko-detail-overview-v2-grid, .socko-detail-two-col-v2, .socko-product-visual-v2 { grid-template-columns:1fr; gap:38px; }
  .socko-product-hero-v2-grid { padding-bottom:36px; }
  .socko-product-fact-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .socko-product-fact-strip > div:nth-child(2) { border-right:0; }
  .socko-product-fact-strip > div:nth-child(-n+2) { border-bottom:1px solid #e0e8ed; }
}
@media (max-width:560px) {
  .socko-product-hero-v2 { padding-top:92px; }
  .socko-product-fact-strip { grid-template-columns:1fr; border-radius:10px 10px 0 0; }
  .socko-product-fact-strip > div { border-right:0; border-bottom:1px solid #e0e8ed; }
  .socko-product-fact-strip > div:last-child { border-bottom:0; }
  .socko-detail-feature-panel { padding:25px; }
}

/* v8.3 PLIF prototype — editorial medical-product layout with minimal cards */
.socko-plif-detail { background:#fff; color:var(--socko-ink); }
.socko-plif-hero { padding:116px 0 0; background:linear-gradient(180deg,#f7fbfd 0%,#eef7fb 100%); border-bottom:1px solid #dce7ed; }
.socko-plif-hero-grid { display:grid; grid-template-columns:minmax(0,.84fr) minmax(520px,1.16fr); gap:70px; align-items:center; padding:10px 0 58px; }
.socko-plif-kicker { color:var(--socko-green); text-transform:uppercase; letter-spacing:.15em; font-size:11px; font-weight:800; margin-bottom:15px; }
.socko-plif-hero-copy h1 { margin:0; color:var(--socko-navy-deep); font-size:clamp(48px,5.1vw,76px); line-height:1.01; letter-spacing:-.05em; max-width:720px; }
.socko-plif-subtitle { margin:14px 0 0; color:var(--socko-blue); font-size:20px; font-weight:650; }
.socko-plif-intro { margin:20px 0 0; max-width:610px; color:#5a6f7c; font-size:16px; line-height:1.78; }
.socko-plif-hero-image { overflow:hidden; background:transparent; }
.socko-plif-hero-image img { width:100%; height:auto; display:block; }
.socko-plif-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:0 0 30px; border-top:1px solid #cfdde5; }
.socko-plif-facts > div { padding:22px 24px 0 0; margin-top:0; border-right:1px solid #d8e3e9; }
.socko-plif-facts > div + div { padding-left:24px; }
.socko-plif-facts > div:last-child { border-right:0; }
.socko-plif-facts dt { color:#7f919c; font-size:11px; text-transform:uppercase; letter-spacing:.11em; font-weight:800; margin-bottom:8px; }
.socko-plif-facts dd { margin:0; color:var(--socko-navy-deep); font-size:14px; line-height:1.55; font-weight:700; }
.socko-plif-section { padding:88px 0; }
.socko-plif-section-soft { background:#f7fafc; border-top:1px solid #e3ebef; border-bottom:1px solid #e3ebef; }
.socko-section-rule { display:block; width:48px; height:3px; background:var(--socko-green); margin-bottom:20px; }
.socko-plif-section h2, .socko-plif-gallery-heading h2, .socko-plif-footer-note h2 { margin:0 0 22px; color:var(--socko-navy-deep); font-size:clamp(38px,4vw,56px); line-height:1.04; letter-spacing:-.045em; }
.socko-plif-body { margin:0; color:#546a78; font-size:16px; line-height:1.86; max-width:720px; }
.socko-plif-overview-grid { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); gap:92px; align-items:start; }
.socko-plif-feature-list { padding-top:23px; }
.socko-plif-feature-list h3 { margin:0 0 8px; color:var(--socko-navy-deep); font-size:18px; }
.socko-plif-feature-row { display:grid; grid-template-columns:13px 1fr; gap:14px; padding:18px 0; border-bottom:1px solid #dbe5ea; }
.socko-plif-feature-row:last-child { border-bottom:0; }
.socko-plif-feature-row span { width:7px; height:7px; border-radius:50%; background:var(--socko-green); margin-top:8px; }
.socko-plif-feature-row p { margin:0; color:#445b69; font-size:15px; line-height:1.65; }
.socko-plif-section-heading { display:grid; grid-template-columns:minmax(0,.8fr) minmax(320px,.55fr); column-gap:70px; align-items:end; margin-bottom:34px; }
.socko-plif-section-heading .socko-section-rule { grid-column:1 / -1; }
.socko-plif-section-heading h2 { margin:0; }
.socko-plif-section-heading > p { margin:0; color:#667a86; font-size:14px; line-height:1.65; }
.socko-plif-table-wrap { overflow:auto; border-top:2px solid var(--socko-navy); border-bottom:1px solid #cbd9e1; background:#fff; }
.socko-plif-table { width:100%; border-collapse:collapse; min-width:560px; }
.socko-plif-table th { padding:16px 18px; text-align:left; color:var(--socko-navy-deep); background:#f5f8fa; border-bottom:1px solid #cfdce4; font-size:12px; letter-spacing:.045em; text-transform:uppercase; }
.socko-plif-table td { padding:15px 18px; color:#455b67; border-bottom:1px solid #e0e8ed; font-size:14px; }
.socko-plif-table tbody tr:last-child td { border-bottom:0; }
.socko-plif-processing { display:grid; grid-template-columns:220px 1fr; gap:28px; align-items:start; margin-top:28px; padding-top:24px; border-top:1px solid #d8e3e9; }
.socko-plif-processing strong { color:var(--socko-navy-deep); font-size:14px; }
.socko-plif-processing p { margin:0; color:#5b707d; font-size:14px; line-height:1.7; }
.socko-plif-clinical-grid { display:grid; grid-template-columns:minmax(0,.8fr) minmax(380px,1.2fr); gap:90px; align-items:start; }
.socko-plif-indications { list-style:none; margin:24px 0 0; padding:0; border-top:1px solid #d7e2e8; }
.socko-plif-indications li { position:relative; padding:19px 8px 19px 28px; border-bottom:1px solid #d7e2e8; color:#405865; font-size:15px; line-height:1.64; }
.socko-plif-indications li::before { content:''; position:absolute; left:0; top:27px; width:7px; height:7px; border-radius:50%; background:var(--socko-green); }
.socko-plif-gallery-section { padding:84px 0 94px; background:#f5f9fb; border-top:1px solid #e1e9ee; }
.socko-plif-gallery-heading { margin-bottom:30px; }
.socko-plif-gallery-figure { margin:0; }
.socko-plif-gallery-figure img { width:100%; height:auto; display:block; background:#fff; }
.socko-plif-gallery-figure figcaption { margin-top:12px; color:#7a8d98; font-size:12px; }
.socko-plif-footer-note { padding:84px 0 96px; background:#0c2c42; color:#fff; }
.socko-plif-footer-note .socko-section-rule { background:var(--socko-green); }
.socko-plif-footer-note h2 { color:#fff; }
.socko-plif-footer-note p { color:rgba(255,255,255,.76); font-size:15px; line-height:1.75; max-width:760px; }
.socko-plif-footer-note .socko-regulatory-small { color:rgba(255,255,255,.58); font-size:12px; }
.socko-plif-footer-note-grid { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:64px; align-items:end; }
.socko-plif-footer-actions { display:flex; flex-direction:column; gap:18px; align-items:flex-start; min-width:245px; }
.socko-plif-footer-note .socko-text-link-dark { color:#fff; }
@media (max-width:980px) {
  .socko-plif-hero-grid, .socko-plif-overview-grid, .socko-plif-clinical-grid, .socko-plif-footer-note-grid { grid-template-columns:1fr; gap:42px; }
  .socko-plif-section-heading { grid-template-columns:1fr; gap:14px; }
  .socko-plif-hero-grid { padding-bottom:38px; }
  .socko-plif-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .socko-plif-facts > div:nth-child(2) { border-right:0; }
  .socko-plif-facts > div:nth-child(n+3) { margin-top:20px; }
  .socko-plif-processing { grid-template-columns:1fr; gap:10px; }
}
@media (max-width:560px) {
  .socko-plif-hero { padding-top:92px; }
  .socko-plif-facts { grid-template-columns:1fr; }
  .socko-plif-facts > div, .socko-plif-facts > div + div { padding:18px 0; border-right:0; border-bottom:1px solid #d8e3e9; }
  .socko-plif-facts > div:last-child { border-bottom:0; }
  .socko-plif-section { padding:66px 0; }
}

/* v8.6 — apply the approved PLIF editorial product-page language to every product detail page */
.socko-plif-config-table th:first-child,
.socko-plif-config-table td:first-child { width:140px; color:#7b8e99; font-weight:800; letter-spacing:.08em; }


/* v8.7 — compact section heroes, precisely centered slider controls */
.socko-slider-arrow {
  padding:0;
  font-size:0;
  line-height:0;
  display:block;
}
.socko-slider-arrow::before {
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:10px;
  height:10px;
  border-top:2px solid currentColor;
  border-right:2px solid currentColor;
  box-sizing:border-box;
  transform-origin:50% 50%;
}
.socko-slider-prev::before { transform:translate(-50%,-50%) rotate(-135deg); }
.socko-slider-next::before { transform:translate(-50%,-50%) rotate(45deg); }

/* The top bands on About / Products / Quality should introduce the page,
   not behave like a second full-screen hero. */
.socko-page-hero {
  padding:70px 0 58px;
}
.socko-page-hero h1 {
  margin:6px 0 14px;
  font-size:clamp(42px,5vw,62px);
  line-height:1.02;
  max-width:980px;
}
.socko-page-hero p {
  max-width:760px;
  font-size:16px;
  line-height:1.65;
}
@media (max-width:860px) {
  .socko-page-hero { padding:56px 0 48px; }
  .socko-page-hero h1 { font-size:clamp(38px,9vw,52px); }
  .socko-page-hero p { font-size:15px; }
}
