
/* Local font subset: Vietnamese/Latin, no third-party request at runtime. */
@font-face { font-family:"Be Vietnam Pro"; src:url('../fonts/be-vietnam-pro-latin-ext-400-normal.woff2') format('woff2'); font-style:normal; font-weight:400; font-display:swap; }
@font-face { font-family:"Be Vietnam Pro"; src:url('../fonts/be-vietnam-pro-latin-ext-500-normal.woff2') format('woff2'); font-style:normal; font-weight:500; font-display:swap; }
@font-face { font-family:"Be Vietnam Pro"; src:url('../fonts/be-vietnam-pro-latin-ext-600-normal.woff2') format('woff2'); font-style:normal; font-weight:600; font-display:swap; }
@font-face { font-family:"Be Vietnam Pro"; src:url('../fonts/be-vietnam-pro-latin-ext-700-normal.woff2') format('woff2'); font-style:normal; font-weight:700; font-display:swap; }
@font-face { font-family:"Be Vietnam Pro"; src:url('../fonts/be-vietnam-pro-latin-ext-800-normal.woff2') format('woff2'); font-style:normal; font-weight:800; font-display:swap; }

/* Tailwind Utility Classes & Custom Theme Layouts */
.max-w-7xl { max-width: 80rem; }
.max-w-5xl { max-width: 64rem; }
.max-w-4xl { max-width: 56rem; }
.max-w-3xl { max-width: 48rem; }
.max-w-2xl { max-width: 42rem; }
.max-w-xl { max-width: 36rem; }
.max-w-md { max-width: 28rem; }

.transition-all { transition-property: all; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-colors { transition-property: color, background-color, border-color, text-decoration-color, fill, stroke; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }
.transition-transform { transition-property: transform; transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); transition-duration: 150ms; }

/* Sticky Header Backdrop */
.site-header {
  position: sticky;
  top: 0;
  z-index: 40;
}

/* Smooth Scrolling */
html {
  scroll-behavior: smooth;
}


/* WordPress-native additions */
html { scroll-behavior:smooth; }
body { font-family:"Be Vietnam Pro","Noto Sans SC",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-weight:400; }
.site-main { width:100%; }
.wp-caption, .alignwide, .alignfull { max-width:100%; }
.screen-reader-text { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.screen-reader-text:focus { clip:auto; width:auto; height:auto; margin:0; padding:1rem; z-index:99999; }

/* ===== SIDONN B2B INTRO / CAPABILITY UPGRADE ===== */
.sidonn-b2b-hero {
  position: relative;
  overflow: hidden;
  background: #fff;
  border-bottom: 1px solid #e7e9ed;
  padding: clamp(3.5rem, 7vw, 7rem) 0 3rem;
}
.sidonn-b2b-grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-image:
    linear-gradient(to right, rgba(27, 31, 37, .05) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(27, 31, 37, .05) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.85), transparent 90%);
}
.sidonn-b2b-shell,
.sidonn-b2b-inner {
  width: min(1320px, calc(100% - 40px));
  margin-inline: auto;
  position: relative;
  z-index: 1;
}
.sidonn-b2b-shell {
  display: grid;
  grid-template-columns: minmax(0, 1.03fr) minmax(0, .97fr);
  gap: clamp(2.5rem, 5vw, 5.5rem);
  align-items: center;
}
.sidonn-b2b-copy { min-width: 0; }
.sidonn-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 12px;
  border: 1px solid rgba(194,35,37,.35);
  border-radius: 6px;
  background: #fff7f7;
  color: #C22325;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 800;
  letter-spacing: .075em;
  text-transform: uppercase;
}
.sidonn-b2b-copy h1 {
  margin: 1.2rem 0 1.3rem;
  max-width: 840px;
  color: #111317;
  font-size: clamp(2.5rem, 4.9vw, 5.25rem);
  line-height: .98;
  letter-spacing: -.048em;
  font-weight: 900;
}
.sidonn-b2b-copy h1 span { display: block; }
.sidonn-b2b-copy h1 .sidonn-red-line { color: #D71920; }
.sidonn-lead {
  margin: 0;
  max-width: 760px;
  color: #353b45;
  font-size: clamp(1rem, 1.35vw, 1.18rem);
  line-height: 1.75;
}
.sidonn-supporting-copy {
  margin: .8rem 0 0;
  max-width: 760px;
  color: #68707c;
  font-size: .95rem;
  line-height: 1.7;
}
.sidonn-hero-capabilities {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 1.4rem;
}
.sidonn-hero-capabilities span {
  padding: 7px 10px;
  border: 1px solid #e2e5e9;
  border-radius: 7px;
  background: rgba(255,255,255,.92);
  color: #3b424c;
  font-size: 12px;
  font-weight: 700;
  box-shadow: 0 3px 12px rgba(15,23,42,.04);
}
.sidonn-b2b-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 1.65rem;
}
.sidonn-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 54px;
  padding: 0 24px;
  border-radius: 8px;
  text-decoration: none;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .035em;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}
.sidonn-btn:hover { transform: translateY(-2px); }
.sidonn-btn-primary {
  background: #D71920;
  color: #fff;
  box-shadow: 0 12px 24px rgba(215,25,32,.2);
}
.sidonn-btn-primary:hover { background: #b91419; color: #fff; }
.sidonn-btn-secondary {
  border: 2px solid #C22325;
  background: #fff;
  color: #C22325;
}
.sidonn-btn-secondary:hover { background: #fff5f5; color: #9f1d20; }
.sidonn-btn-secondary .dashicons { width: 18px; height: 18px; font-size: 18px; }
.sidonn-tech-visual {
  position: relative;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #d9dde3;
  border-radius: 20px;
  background: #eef1f4;
  box-shadow: 0 28px 55px rgba(15,23,42,.13);
}
.sidonn-tech-visual > img {
  display: block;
  width: 100%;
  aspect-ratio: 16/10;
  object-fit: cover;
  object-position: center;
}
.sidonn-visual-tabs {
  position: absolute;
  z-index: 3;
  top: 14px;
  left: 14px;
  display: inline-flex;
  overflow: hidden;
  border-radius: 9px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 6px 18px rgba(15,23,42,.15);
}
.sidonn-visual-tabs span {
  padding: 10px 13px;
  color: #3d4550;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .035em;
}
.sidonn-visual-tabs .active { background: #D71920; color: #fff; }
.sidonn-visual-status {
  position: absolute;
  z-index: 3;
  padding: 7px 10px;
  border-radius: 7px;
  background: rgba(17,24,39,.9);
  color: #7fffc8;
  font: 700 10px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: .04em;
}
.sidonn-status-top { top: 16px; right: 14px; }
.sidonn-visual-overlay {
  position: absolute;
  z-index: 3;
  right: 18px;
  bottom: 56px;
  left: 18px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 1px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 12px;
  background: rgba(10,14,19,.89);
  backdrop-filter: blur(9px);
}
.sidonn-visual-overlay > div { min-width: 0; padding: 13px 14px; }
.sidonn-visual-overlay strong,
.sidonn-visual-overlay span { display: block; }
.sidonn-visual-overlay strong { color: #fff; font-size: 11px; letter-spacing: .035em; }
.sidonn-visual-overlay span { margin-top: 4px; color: #aab2bf; font-size: 10px; }
.sidonn-visual-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 52px;
  padding: 0 18px;
  color: #56606e;
  background: #f8f9fb;
  font: 700 11px/1.2 ui-monospace, SFMono-Regular, Menlo, monospace;
}

.sidonn-capability-section {
  padding: clamp(4.5rem, 7vw, 7rem) 0;
  background: #f7f8fa;
}
.sidonn-heading-split {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr);
  gap: 3rem;
  align-items: end;
  margin-bottom: 2.2rem;
}
.sidonn-section-heading h2 {
  margin: 1rem 0 0;
  color: #14171c;
  font-size: clamp(2rem, 3.5vw, 3.6rem);
  line-height: 1.04;
  letter-spacing: -.035em;
  font-weight: 900;
}
.sidonn-heading-split > p {
  margin: 0;
  color: #66707c;
  font-size: 1rem;
  line-height: 1.75;
}
.sidonn-capability-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 16px;
}
.sidonn-capability-card {
  min-width: 0;
  padding: 24px;
  border: 1px solid #dde1e6;
  border-top: 3px solid #C22325;
  border-radius: 10px;
  background: linear-gradient(145deg,#fff 0%,#fafafb 100%);
  box-shadow: 0 8px 24px rgba(21,25,30,.055);
  transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.sidonn-capability-card:hover {
  transform: translateY(-3px);
  border-color: rgba(194,35,37,.4);
  box-shadow: 0 18px 34px rgba(15,23,42,.075);
}
.sidonn-capability-card-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.sidonn-capability-card-top .dashicons {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 11px;
  background: #fff0f0;
  color: #D71920;
  font-size: 21px;
}
.sidonn-capability-card-top small {
  color: #99a2ad;
  font: 800 12px/1 ui-monospace, SFMono-Regular, Menlo, monospace;
}
.sidonn-capability-card h3 {
  margin: 1.2rem 0 .55rem;
  color: #1e242c;
  font-size: 1.12rem;
  line-height: 1.25;
  font-weight: 850;
}
.sidonn-capability-card p {
  margin: 0;
  color: #66707b;
  font-size: .9rem;
  line-height: 1.65;
}
.sidonn-card-proof {
  margin-top: 1rem;
  padding-top: .9rem;
  border-top: 1px solid #edf0f3;
  color: #D71920;
  font-size: 11px;
  font-weight: 800;
}
.sidonn-visual-proof-grid {
  display: grid;
  grid-template-columns: 1.35fr .825fr .825fr;
  gap: 16px;
  margin-top: 2.6rem;
}
.sidonn-proof-card {
  position: relative;
  min-width: 0;
  min-height: 310px;
  overflow: hidden;
  border-radius: 18px;
  background: #161b21;
  box-shadow: 0 16px 36px rgba(15,23,42,.11);
}
.sidonn-proof-card img {
  width: 100%;
  height: 100%;
  min-height: 310px;
  object-fit: cover;
  transition: transform .45s ease;
}
.sidonn-proof-card:hover img { transform: scale(1.025); }
.sidonn-proof-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(8,12,16,.88), rgba(8,12,16,.08) 63%);
}
.sidonn-proof-copy {
  position: absolute;
  z-index: 2;
  right: 22px;
  bottom: 22px;
  left: 22px;
  color: #fff;
}
.sidonn-proof-copy > span {
  display: inline-block;
  margin-bottom: 6px;
  color: #ff6f73;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .1em;
}
.sidonn-proof-copy h3 { margin: 0; font-size: 1.35rem; font-weight: 900; }
.sidonn-proof-copy p { margin: 7px 0 0; color: #d8dde4; font-size: .85rem; line-height: 1.55; }
.sidonn-capability-stats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 14px;
  margin-top: 2.6rem;
}
.sidonn-capability-stats > div {
  min-width: 0;
  padding: 20px;
  border: 1px solid #dfe3e8;
  border-radius: 12px;
  background: #fff;
}
.sidonn-capability-stats strong,
.sidonn-capability-stats span,
.sidonn-capability-stats small { display: block; }
.sidonn-capability-stats strong {
  color: #D71920;
  font: 900 clamp(1.65rem,2.4vw,2.4rem)/1.05 ui-monospace, SFMono-Regular, Menlo, monospace;
  letter-spacing: -.035em;
}
.sidonn-capability-stats span { margin-top: 8px; color: #252b33; font-size: .87rem; font-weight: 800; }
.sidonn-capability-stats small { margin-top: 3px; color: #738091; font: 700 9px/1.35 ui-monospace, SFMono-Regular, Menlo, monospace; letter-spacing: .04em; }

/* ===== SIDONN 2.0 SOLUTION-LED DESIGN SYSTEM ===== */
:root { --sidonn-red:#C22325; --sidonn-ink:#20242A; --sidonn-muted:#626972; --sidonn-dark:#15191E; --sidonn-line:#E2E5E9; --sidonn-soft:#F7F7F8; }
body { background:#fff; color:var(--sidonn-ink); font-family:"Be Vietnam Pro","Noto Sans SC",system-ui,sans-serif; font-weight:400; }
a { color:inherit; }
:focus-visible { outline:3px solid rgba(194,35,37,.45); outline-offset:3px; }
.sidonn-shell { width:min(1280px,calc(100% - 40px)); margin-inline:auto; }
.sidonn-section { padding:clamp(4rem,7.5vw,7.5rem) 0; }
.sidonn-eyebrow { margin:0 0 14px; color:var(--sidonn-red); font-size:.75rem; font-weight:850; letter-spacing:.12em; text-transform:uppercase; }
.sidonn-section-heading { max-width:780px; margin-bottom:clamp(2rem,4vw,3.5rem); }
.sidonn-section-heading--center { margin-inline:auto; text-align:center; }
.sidonn-section-heading h2,.sidonn-split h2,.sidonn-port h2,.sidonn-final-cta h2,.sidonn-page-hero h1 { margin:0; font-size:clamp(2rem,4vw,3.75rem); line-height:1.08; letter-spacing:-.04em; }
.sidonn-section-heading > p:last-child { color:var(--sidonn-muted); font-size:1.05rem; line-height:1.7; }
.sidonn-button { display:inline-flex; align-items:center; justify-content:center; min-height:50px; padding:0 22px; border:1px solid transparent; border-radius:7px; font-weight:800; text-decoration:none; transition:.25s ease; }
.sidonn-button--primary { color:#fff; background:var(--sidonn-red); }
.sidonn-button--primary:hover { color:#fff; background:#991B1E; transform:translateY(-2px); }
.sidonn-button--ghost { color:#fff; border-color:rgba(255,255,255,.55); background:rgba(255,255,255,.08); }
.sidonn-button--ghost:hover { background:#fff; color:var(--sidonn-dark); }
.sidonn-text-link { color:var(--sidonn-red); font-weight:800; text-decoration:none; }

.sidonn-header { position:sticky; top:0; z-index:100; border-bottom:1px solid var(--sidonn-line); background:rgba(255,255,255,.96); backdrop-filter:blur(14px); }
.sidonn-header__inner { width:min(1360px,calc(100% - 32px)); min-height:82px; margin:auto; display:flex; align-items:center; gap:22px; }
.sidonn-header__brand { flex:0 0 auto; }
.sidonn-header__brand img { display:block; width:auto; max-width:175px; max-height:44px; object-fit:contain; }
.sidonn-desktop-nav { flex:1; min-width:0; }
.sidonn-nav-list { display:flex; align-items:center; justify-content:center; gap:clamp(10px,1.15vw,20px); margin:0; padding:0; list-style:none; }
.sidonn-nav-list > li > a { position:relative; display:block; padding:30px 0; color:#30363e; font-size:.875rem; font-weight:600; letter-spacing:-.012em; text-decoration:none; white-space:nowrap; }
.sidonn-nav-list > li > a:hover { color:var(--sidonn-red); }
.sidonn-nav-list > .current-menu-item > a,.sidonn-nav-list > .current_page_item > a,.sidonn-nav-list > li > a[aria-current="page"] { color:var(--sidonn-red); }
.sidonn-nav-list > li > a::after { content:""; position:absolute; right:0; bottom:18px; left:0; height:3px; border-radius:3px; background:var(--sidonn-red); transform:scaleX(0); transform-origin:center; transition:transform .22s ease; }
.sidonn-nav-list > li > a:hover::after,.sidonn-nav-list > .current-menu-item > a::after,.sidonn-nav-list > .current_page_item > a::after,.sidonn-nav-list > li > a[aria-current="page"]::after { transform:scaleX(1); }
.sidonn-mega-parent { position:static; }
.sidonn-mega-menu { position:absolute; top:100%; left:50%; width:min(1160px,calc(100vw - 48px)); padding:28px; border:1px solid var(--sidonn-line); border-radius:0 0 12px 12px; background:#fff; box-shadow:0 24px 60px rgba(21,25,30,.13); display:grid; grid-template-columns:repeat(4,1fr); gap:28px; opacity:0; visibility:hidden; transform:translate(-50%,10px); transition:.22s ease; }
.sidonn-mega-parent:hover .sidonn-mega-menu,.sidonn-mega-parent:focus-within .sidonn-mega-menu { opacity:1; visibility:visible; transform:translate(-50%,0); }
.sidonn-mega-menu strong { display:block; margin-bottom:12px; color:var(--sidonn-ink); font-size:.82rem; text-transform:uppercase; letter-spacing:.06em; }
.sidonn-mega-menu a { display:block; margin:10px 0; color:var(--sidonn-muted); font-size:.84rem; text-decoration:none; }
.sidonn-mega-menu a:hover { color:var(--sidonn-red); }
.sidonn-mega-feature { padding:20px; border-radius:10px; background:var(--sidonn-dark); color:#fff; }
.sidonn-mega-feature strong,.sidonn-mega-feature a { color:#fff; }
.sidonn-mega-feature p { color:#bbc0c7; line-height:1.6; font-size:.82rem; }
.sidonn-header__actions { display:flex; align-items:center; gap:9px; }
.sidonn-header-cta { padding:11px 16px; border-radius:7px; background:var(--sidonn-red); color:#fff; font-size:.8rem; font-weight:800; text-decoration:none; white-space:nowrap; }
.sidonn-menu-toggle { display:none; width:44px; height:44px; border:1px solid var(--sidonn-line); border-radius:7px; background:#fff; }
.sidonn-menu-toggle span { display:block; width:20px; height:2px; margin:4px auto; background:var(--sidonn-ink); }
.sidonn-mobile-menu { max-height:calc(100dvh - 68px); overflow:auto; padding:16px 20px 28px; border-top:1px solid var(--sidonn-line); background:#fff; }
.sidonn-mobile-menu nav > a,.sidonn-mobile-accordion { width:100%; display:flex; justify-content:space-between; padding:14px 4px; border:0; border-bottom:1px solid var(--sidonn-line); background:none; color:var(--sidonn-ink); font:700 .98rem/1.3 inherit; text-align:left; text-decoration:none; }
.sidonn-mobile-submenu { padding:6px 0 10px 18px; }
.sidonn-mobile-submenu a { display:block; padding:9px 0; color:var(--sidonn-muted); text-decoration:none; }
.sidonn-mobile-contact { display:grid; gap:10px; margin-top:18px; }
.sidonn-mobile-contact a { padding:13px; border:1px solid var(--sidonn-line); border-radius:7px; text-align:center; text-decoration:none; font-weight:800; }
.sidonn-mobile-contact a.is-primary { color:#fff; background:var(--sidonn-red); }

.sidonn-hero { position:relative; min-height:min(84svh,820px); display:flex; align-items:center; overflow:hidden; color:#fff; background:var(--sidonn-dark); }
.sidonn-hero__media,.sidonn-hero__overlay { position:absolute; inset:0; width:100%; height:100%; }
.sidonn-hero__media { object-fit:cover; }
.sidonn-hero__overlay { background:linear-gradient(90deg,rgba(12,15,18,.92) 0%,rgba(12,15,18,.75) 48%,rgba(12,15,18,.25) 100%); }
.sidonn-hero__content { position:relative; z-index:1; padding:90px 0; }
.sidonn-hero__content h1 { max-width:900px; margin:0; font-size:clamp(2.65rem,5vw,4.65rem); line-height:1.03; letter-spacing:-.048em; }
.sidonn-hero__lead { max-width:770px; margin:24px 0 0; color:#e0e3e7; font-size:clamp(1rem,1.4vw,1.18rem); line-height:1.75; }
.sidonn-hero__actions { display:flex; gap:12px; margin-top:30px; }
.sidonn-hero__values { display:flex; gap:28px; margin:34px 0 0; padding:0; list-style:none; color:#fff; font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }
.sidonn-hero__values li::before { content:""; display:inline-block; width:16px; height:2px; margin-right:8px; vertical-align:middle; background:var(--sidonn-red); }

.sidonn-solution-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.sidonn-solution-card { overflow:hidden; border:1px solid var(--sidonn-line); border-radius:10px; background:#fff; transition:.3s ease; }
.sidonn-solution-card:hover { transform:translateY(-4px); border-color:rgba(194,35,37,.45); box-shadow:0 18px 40px rgba(21,25,30,.09); }
.sidonn-solution-card__image { display:block; overflow:hidden; aspect-ratio:16/10; background:#e9ecef; }
.sidonn-solution-card__image img { width:100%; height:100%; object-fit:cover; transition:.45s ease; }
.sidonn-solution-card:hover img { transform:scale(1.025); }
.sidonn-solution-card__body { padding:24px; }
.sidonn-solution-card__index { margin:0 0 12px; color:var(--sidonn-red); font-weight:900; }
.sidonn-solution-card h3 { margin:0; font-size:1.23rem; }
.sidonn-solution-card h3 a { text-decoration:none; }
.sidonn-solution-card__body > p:not(.sidonn-solution-card__index) { min-height:72px; color:var(--sidonn-muted); line-height:1.6; }

.sidonn-flow-section { background:var(--sidonn-soft); }
.sidonn-orchestration { max-width:900px; margin:0 auto 26px; padding:15px; border-radius:8px; color:#fff; background:var(--sidonn-dark); text-align:center; font-size:.8rem; font-weight:800; letter-spacing:.08em; }
.sidonn-flow { display:grid; grid-template-columns:repeat(7,1fr); margin:0; padding:0; list-style:none; counter-reset:flow; }
.sidonn-flow li { position:relative; min-height:105px; display:flex; flex-direction:column; align-items:center; gap:12px; text-align:center; }
.sidonn-flow li:not(:last-child)::after { content:""; position:absolute; top:22px; left:60%; width:80%; height:1px; background:#c9ced4; }
.sidonn-flow span { position:relative; z-index:1; width:44px; height:44px; display:grid; place-items:center; border:1px solid var(--sidonn-red); border-radius:50%; color:var(--sidonn-red); background:#fff; font-weight:900; }
.sidonn-flow strong { font-size:.83rem; }

.sidonn-warehouse-focus { background:#fff; }
.sidonn-split { display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:clamp(36px,6vw,90px); }
.sidonn-split__media { overflow:hidden; border-radius:12px; box-shadow:0 22px 50px rgba(21,25,30,.12); }
.sidonn-split__media img { display:block; width:100%; min-height:520px; object-fit:cover; }
.sidonn-split__content > p:not(.sidonn-eyebrow) { color:var(--sidonn-muted); line-height:1.75; }
.sidonn-feature-list { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin:26px 0; padding:0; list-style:none; }
.sidonn-feature-list li { padding:12px 14px; border-left:3px solid var(--sidonn-red); background:var(--sidonn-soft); font-size:.88rem; font-weight:750; }

.sidonn-industry-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.sidonn-industry-grid a { min-height:190px; padding:28px; border:1px solid var(--sidonn-line); border-top:3px solid var(--sidonn-red); border-radius:10px; background:linear-gradient(145deg,#fff 0%,#fafafb 100%); box-shadow:0 8px 24px rgba(21,25,30,.055); text-decoration:none; transition:border-color .25s,box-shadow .25s,transform .25s; }
.sidonn-industry-grid a:hover { transform:translateY(-4px); border-color:rgba(194,35,37,.46); box-shadow:0 16px 34px rgba(21,25,30,.085); }
.sidonn-industry-grid h3 { margin:0 0 12px; font-size:1.2rem; }
.sidonn-industry-grid p { min-height:48px; color:var(--sidonn-muted); }
.sidonn-industry-grid span { color:var(--sidonn-red); font-size:.82rem; font-weight:800; }

.sidonn-port { color:#fff; background:var(--sidonn-dark); }
.sidonn-port__heading { display:grid; grid-template-columns:1.2fr .8fr; gap:50px; align-items:end; margin-bottom:44px; }
.sidonn-port__heading > p { color:#b8bec7; line-height:1.7; }
.sidonn-port__body { display:grid; grid-template-columns:1fr 1fr; gap:32px; }
.sidonn-port__image { overflow:hidden; border-radius:10px; }
.sidonn-port__image img { width:100%; height:100%; object-fit:cover; }
.sidonn-port__layers { display:flex; flex-direction:column; gap:12px; }
.sidonn-port__layers article { display:flex; gap:18px; padding:19px; border:1px solid #343941; border-radius:9px; background:#1d2228; }
.sidonn-port__layers article > span { color:#ff6d70; font-weight:900; }
.sidonn-port__layers h3 { margin:0 0 7px; }
.sidonn-port__layers p { margin:0; color:#aeb5be; line-height:1.6; font-size:.86rem; }
.sidonn-port__layers .sidonn-button { align-self:flex-start; margin-top:8px; }

.sidonn-why { background:var(--sidonn-soft); }
.sidonn-why__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.sidonn-why__grid article { min-height:245px; padding:28px 24px; border:1px solid var(--sidonn-line); border-top:3px solid var(--sidonn-red); border-radius:10px; background:linear-gradient(145deg,#fff 0%,#fafafb 100%); box-shadow:0 8px 24px rgba(21,25,30,.055); transition:border-color .25s,box-shadow .25s,transform .25s; }
.sidonn-why__grid article:hover { transform:translateY(-4px); border-color:rgba(194,35,37,.46); box-shadow:0 16px 34px rgba(21,25,30,.085); }
.sidonn-why__grid article > span { color:var(--sidonn-red); font-weight:900; }
.sidonn-why__grid h3 { margin:28px 0 12px; font-size:1.05rem; }
.sidonn-why__grid p { color:var(--sidonn-muted); line-height:1.65; font-size:.9rem; }
.sidonn-process { display:grid; grid-template-columns:repeat(9,1fr); margin:0; padding:0; list-style:none; }
.sidonn-process li { position:relative; padding:0 8px; text-align:center; }
.sidonn-process li:not(:last-child)::after { content:""; position:absolute; top:18px; left:66%; width:68%; height:1px; background:var(--sidonn-line); }
.sidonn-process span { position:relative; z-index:1; width:38px; height:38px; margin:auto; display:grid; place-items:center; border-radius:50%; color:#fff; background:var(--sidonn-red); font-size:.72rem; font-weight:900; }
.sidonn-process strong { display:block; margin-top:14px; font-size:.73rem; line-height:1.4; }

.sidonn-project-grid,.sidonn-news-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.sidonn-project-grid article,.sidonn-news-grid article { overflow:hidden; border:1px solid var(--sidonn-line); border-radius:10px; background:#fff; }
.sidonn-project-grid a,.sidonn-news-grid a { display:block; text-decoration:none; }
.sidonn-project-grid img,.sidonn-news-grid img { display:block; width:100%; aspect-ratio:16/10; object-fit:cover; }
.sidonn-project-grid article div,.sidonn-news-grid article > a { padding-bottom:24px; }
.sidonn-project-grid article div > *,.sidonn-news-grid article > a > *:not(img) { margin-left:24px; margin-right:24px; }
.sidonn-project-grid h2,.sidonn-project-grid h3,.sidonn-news-grid h2,.sidonn-news-grid h3 { margin-top:22px; font-size:1.1rem; }
.sidonn-project-grid p,.sidonn-news-grid p { color:var(--sidonn-muted); line-height:1.6; }
.sidonn-project-grid span,.sidonn-news-grid span { color:var(--sidonn-red); font-size:.82rem; font-weight:800; }
.sidonn-news-grid time { display:block; margin-top:20px; color:var(--sidonn-muted); font-size:.75rem; }
.sidonn-logo-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:14px; }
.sidonn-logo-grid > div { min-height:110px; display:grid; place-items:center; padding:18px; border:1px solid var(--sidonn-line); border-radius:8px; background:#fff; filter:grayscale(1); transition:.25s; }
.sidonn-logo-grid > div:hover { filter:none; }
.sidonn-logo-grid img { max-width:100%; max-height:60px; object-fit:contain; }

.sidonn-final-cta { padding:clamp(55px,7vw,90px) 0; color:#fff; background:linear-gradient(120deg,rgba(21,25,30,.98),rgba(21,25,30,.9)),url('../images/warehouse-automation.webp') center/cover; }
.sidonn-final-cta .sidonn-shell { display:flex; align-items:center; justify-content:space-between; gap:50px; }
.sidonn-final-cta .sidonn-shell > div:first-child { max-width:760px; }
.sidonn-final-cta p:not(.sidonn-eyebrow) { color:#c5cad0; }
.sidonn-final-cta__actions { display:flex; gap:10px; flex:0 0 auto; }

.sidonn-page-hero { padding:clamp(70px,9vw,120px) 0; color:#fff; background:linear-gradient(115deg,#15191e,#282d34); }
.sidonn-page-hero .sidonn-shell { max-width:1280px; }
.sidonn-page-hero h1 { max-width:950px; }
.sidonn-page-hero p:last-child { max-width:760px; color:#c9ced4; font-size:1.05rem; line-height:1.75; }
.sidonn-content-grid,.sidonn-solution-systems { display:grid; grid-template-columns:repeat(2,1fr); gap:20px; }
.sidonn-content-grid article,.sidonn-solution-systems article,.sidonn-service-grid article { min-height:220px; padding:32px; border:1px solid var(--sidonn-line); border-top:3px solid var(--sidonn-red); border-radius:10px; background:linear-gradient(145deg,#fff 0%,#fafafb 100%); box-shadow:0 8px 24px rgba(21,25,30,.055); transition:border-color .25s,box-shadow .25s,transform .25s; }
.sidonn-content-grid article:hover,.sidonn-solution-systems article:hover,.sidonn-service-grid article:hover { transform:translateY(-4px); border-color:rgba(194,35,37,.46); box-shadow:0 16px 34px rgba(21,25,30,.085); }
.sidonn-content-grid p,.sidonn-solution-systems p { color:var(--sidonn-muted); line-height:1.7; }
.sidonn-solution-systems span,.sidonn-service-grid span { color:var(--sidonn-red); font-weight:900; }
.sidonn-service-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.sidonn-service-grid h2 { font-size:1.08rem; }
.sidonn-principles { text-align:center; background:var(--sidonn-soft); }
.sidonn-principles p { max-width:780px; margin-inline:auto; color:var(--sidonn-muted); }

/* About profile and partner-reference content sourced from the capability profile. */
.sidonn-profile-note { max-width:920px; margin:0 0 28px; padding:16px 18px; border-left:4px solid var(--sidonn-red); border-radius:0 8px 8px 0; background:#fff5f5; color:#5a3032; line-height:1.65; }
.sidonn-profile-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.sidonn-profile-facts article { min-height:190px; padding:28px; border:1px solid var(--sidonn-line); border-top:4px solid var(--sidonn-red); border-radius:10px; background:#fff; box-shadow:0 10px 28px rgba(21,25,30,.06); }
.sidonn-profile-facts strong { display:block; color:var(--sidonn-red); font-size:clamp(1.65rem,3vw,2.5rem); font-weight:800; line-height:1.15; letter-spacing:-.035em; }
.sidonn-profile-facts span { display:block; margin-top:12px; color:var(--sidonn-ink); font-weight:600; line-height:1.55; }
.sidonn-timeline { max-width:980px; margin:0; padding:0; list-style:none; }
.sidonn-timeline li { position:relative; display:grid; grid-template-columns:90px 1fr; gap:24px; padding:0 0 30px; }
.sidonn-timeline li::before { content:""; position:absolute; top:20px; bottom:-2px; left:72px; width:2px; background:#e7a7a8; }
.sidonn-timeline li:last-child::before { display:none; }
.sidonn-timeline strong { color:var(--sidonn-red); font-size:1.15rem; font-weight:800; }
.sidonn-timeline div { position:relative; padding:18px 22px; border:1px solid var(--sidonn-line); border-radius:10px; background:#fff; box-shadow:0 8px 24px rgba(21,25,30,.05); }
.sidonn-timeline div::before { content:""; position:absolute; top:20px; left:-31px; width:12px; height:12px; border:3px solid #fff; border-radius:50%; background:var(--sidonn-red); box-shadow:0 0 0 2px var(--sidonn-red); }
.sidonn-timeline h3 { margin:0 0 7px; font-size:1.05rem; }
.sidonn-timeline p { margin:0; color:var(--sidonn-muted); line-height:1.65; }
.sidonn-reference-groups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.sidonn-reference-groups article { min-height:220px; padding:26px; border:1px solid var(--sidonn-line); border-top:3px solid var(--sidonn-red); border-radius:10px; background:linear-gradient(145deg,#fff,#fafafb); box-shadow:0 8px 24px rgba(21,25,30,.055); }
.sidonn-reference-groups h2 { margin:0 0 12px; font-size:1.08rem; }
.sidonn-reference-groups p { margin:0; color:var(--sidonn-muted); line-height:1.75; }

/* Phone, Zalo and back-to-top controls. */
.sidonn-floating-actions { position:fixed; right:24px; bottom:24px; z-index:110; display:flex; flex-direction:column; gap:10px; }
.sidonn-floating-button { position:relative; width:52px; height:52px; display:grid; place-items:center; border:0; border-radius:50%; color:#fff; background:#29313a; box-shadow:0 10px 25px rgba(21,25,30,.2); cursor:pointer; text-decoration:none; transition:transform .2s ease,background .2s ease,opacity .2s ease; }
.sidonn-floating-button:hover { color:#fff; transform:translateY(-3px); }
.sidonn-floating-button--phone { background:var(--sidonn-red); }
.sidonn-floating-button--zalo { background:#0068ff; font-size:.9rem; font-weight:800; }
.sidonn-floating-button svg { width:22px; height:22px; fill:currentColor; }
.sidonn-floating-button[data-scroll-top] { opacity:0; pointer-events:none; }
.sidonn-floating-button[data-scroll-top].is-visible { opacity:1; pointer-events:auto; }
.sidonn-floating-label { position:absolute; right:62px; padding:8px 11px; border-radius:7px; background:#15191e; color:#fff; font-size:.75rem; font-weight:600; white-space:nowrap; opacity:0; transform:translateX(5px); pointer-events:none; transition:.2s ease; }
.sidonn-floating-button:hover .sidonn-floating-label,.sidonn-floating-button:focus-visible .sidonn-floating-label { opacity:1; transform:none; }
.sidonn-mobile-scroll-top { display:none; }

.sidonn-contact { background:var(--sidonn-soft); }
.sidonn-contact__grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(40px,7vw,90px); align-items:start; }
.sidonn-contact__info h1 { margin:0; font-size:clamp(2.1rem,4vw,3.5rem); line-height:1.08; }
.sidonn-contact__info > p:not(.sidonn-eyebrow) { color:var(--sidonn-muted); line-height:1.75; }
.sidonn-contact__info dl div { padding:15px 0; border-bottom:1px solid var(--sidonn-line); }
.sidonn-contact__info dt { color:var(--sidonn-muted); font-size:.75rem; text-transform:uppercase; letter-spacing:.08em; }
.sidonn-contact__info dd { margin:5px 0 0; font-weight:700; }
.sidonn-contact__form { padding:clamp(24px,4vw,42px); border:1px solid var(--sidonn-line); border-radius:10px; background:#fff; }
.sidonn-contact__form h2 { margin-top:0; font-size:1.7rem; }
.sidonn-form-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:17px; }
.sidonn-form-grid label { display:flex; flex-direction:column; gap:7px; color:#343a43; font-size:.82rem; font-weight:750; }
.sidonn-form-grid input,.sidonn-form-grid select,.sidonn-form-grid textarea { width:100%; min-height:46px; padding:10px 12px; border:1px solid #cfd4da; border-radius:6px; background:#fff; color:var(--sidonn-ink); font:inherit; }
.sidonn-form-grid textarea { min-height:120px; resize:vertical; }
.sidonn-form-span { grid-column:1/-1; }
.sidonn-consent { display:flex; align-items:flex-start; gap:10px; margin:20px 0; color:var(--sidonn-muted); font-size:.8rem; line-height:1.5; }
.sidonn-consent input { margin-top:4px; }
.sidonn-honeypot { position:absolute!important; left:-9999px!important; }
.sidonn-form-notice { margin-bottom:16px; padding:12px 14px; border-radius:6px; background:#fff0f0; color:#8f1c1f; }
.sidonn-form-notice.is-success { background:#edf9f3; color:#14633c; }
.sidonn-empty,.sidonn-admin-empty { width:min(1280px,calc(100% - 40px)); margin:30px auto; padding:20px; border:1px dashed var(--sidonn-line); background:#fff; color:var(--sidonn-muted); }

.sidonn-breadcrumb { padding:20px 0; }
.sidonn-breadcrumb ol { display:flex; flex-wrap:wrap; gap:8px; margin:0; padding:0; list-style:none; font-size:.78rem; color:var(--sidonn-muted); }
.sidonn-breadcrumb li:not(:last-child)::after { content:"/"; margin-left:8px; }
.sidonn-breadcrumb a { text-decoration:none; }
.sidonn-detail-hero { position:relative; overflow:hidden; color:#fff; background:var(--sidonn-dark); }
.sidonn-detail-hero__media { position:absolute; inset:0; opacity:.25; }
.sidonn-detail-hero__media img { width:100%; height:100%; object-fit:cover; }
.sidonn-detail-hero__content { position:relative; z-index:1; padding:clamp(70px,9vw,120px) 0; }
.sidonn-detail-hero h1 { max-width:900px; margin:0; font-size:clamp(2.5rem,5vw,4.8rem); line-height:1.03; }
.sidonn-detail-hero__content > p:not(.sidonn-eyebrow) { max-width:760px; color:#cbd0d6; font-size:1.08rem; line-height:1.7; }
.sidonn-detail__content { max-width:940px; padding-top:70px; padding-bottom:90px; }
.sidonn-detail__content section { margin-bottom:60px; }
.sidonn-detail__content h2 { padding-left:16px; border-left:4px solid var(--sidonn-red); font-size:clamp(1.5rem,3vw,2.25rem); }
.sidonn-prose { color:#4d545e; font-size:1.02rem; line-height:1.8; }
.sidonn-detail-list { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; padding:0; list-style:none; }
.sidonn-detail-list li { padding:14px; border:1px solid var(--sidonn-line); border-radius:7px; background:var(--sidonn-soft); }
.sidonn-spec-list > div { display:grid; grid-template-columns:1fr 1fr; padding:14px; border-bottom:1px solid var(--sidonn-line); }
.sidonn-spec-list dt { font-weight:700; }
.sidonn-spec-list dd { margin:0; color:var(--sidonn-red); font-weight:800; }
.sidonn-faq details { border-bottom:1px solid var(--sidonn-line); }
.sidonn-faq summary { padding:18px 0; cursor:pointer; font-weight:800; }
.sidonn-kpi-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.sidonn-kpi-grid div { padding:20px; border:1px solid var(--sidonn-line); border-radius:8px; text-align:center; }
.sidonn-kpi-grid dt { color:var(--sidonn-red); font-size:1.6rem; font-weight:900; }
.sidonn-kpi-grid dd { margin:6px 0 0; color:var(--sidonn-muted); font-size:.8rem; }
.sidonn-project-meta { display:flex; flex-wrap:wrap; gap:35px; }
.sidonn-project-meta dt { color:#9ba3ad; font-size:.7rem; text-transform:uppercase; }
.sidonn-project-meta dd { margin:4px 0 0; font-weight:800; }
.sidonn-filter { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:32px; }
.sidonn-filter a { padding:9px 13px; border:1px solid var(--sidonn-line); border-radius:6px; text-decoration:none; font-size:.8rem; font-weight:750; }
.sidonn-filter a.is-active,.sidonn-filter a:hover { color:#fff; border-color:var(--sidonn-red); background:var(--sidonn-red); }
.sidonn-footer-logo img { width:160px; height:46px; object-fit:contain; object-position:left center; }
.sidonn-footer-logo img.is-filtered-white { filter:brightness(0) invert(1); }
.sidonn-capability-cta { margin-top:30px; }
.sidonn-capability-cta a { color:var(--sidonn-red); font-weight:850; text-decoration:none; }
.sidonn-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.sidonn-gallery img { width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:8px; }
.sidonn-video { position:relative; overflow:hidden; aspect-ratio:16/9; border-radius:8px; background:#111; }
.sidonn-video iframe { width:100%; height:100%; border:0; }
.sidonn-project-grid[aria-busy="true"] { opacity:.55; pointer-events:none; }
