@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Barlow+Condensed:wght@400;500;600;700;800&family=Barlow:wght@300;400;500;600;700&display=swap");

/* Shared redesign override layer for iatrt.com. Loaded after page CSS. */

:root {
  --font-head: "Barlow Condensed", "Arial Narrow", "Roboto Condensed", sans-serif;
  --font-body: "Barlow", "Segoe UI", sans-serif;
  --font-mono: "DM Mono", "JetBrains Mono", ui-monospace, monospace;

  --white: #fafaf8;
  --surface: #f5f3ef;
  --surface-2: #eceae4;
  --surface-3: #e0ddd6;
  --ink: #0d0f0e;
  --ink-rgb: 13, 15, 14;
  --ink-soft: #2a2d2b;
  --ink-soft-rgb: 42, 45, 43;
  --muted: #656159;
  --muted-rgb: 101, 97, 89;
  --accent: #c8401a;
  --accent-dim: #9e3314;
  --accent-rgb: 200, 64, 26;
  --rule: #c4c1ba;
  --success: #2f8f57;
  --success-rgb: 47, 143, 87;
  --danger: #a63b24;
  --danger-rgb: 166, 59, 36;

  --bg: var(--surface);
  --panel: rgba(250, 250, 248, 0.96);
  --panel-alt: rgba(236, 234, 228, 0.92);
  --panel-strong: rgba(250, 250, 248, 0.98);
  --surface-soft: rgba(236, 234, 228, 0.9);
  --surface-strong: var(--panel-strong);
  --text-1: var(--ink);
  --text-2: var(--ink-soft);
  --text-3: var(--muted);

  --blue-900: var(--ink);
  --blue-900-rgb: var(--ink-rgb);
  --blue-800: #1e201f;
  --blue-800-rgb: 30, 32, 31;
  --blue-700: var(--accent);
  --blue-700-rgb: var(--accent-rgb);
  --blue-600: var(--ink);
  --blue-600-rgb: var(--ink-rgb);
  --blue-500: #4f4a44;
  --blue-500-rgb: 79, 74, 68;
  --blue-400: var(--surface-3);
  --green-600: var(--success);
  --green-600-rgb: var(--success-rgb);
  --green-500: #45a66b;
  --green-500-rgb: 69, 166, 107;

  --border: rgba(var(--ink-rgb), 0.12);
  --border-strong: rgba(var(--ink-rgb), 0.22);
  --line: rgba(var(--ink-rgb), 0.12);
  --line-strong: rgba(var(--ink-rgb), 0.22);
  --glow: rgba(var(--accent-rgb), 0.12);
  --glow-strong: rgba(var(--accent-rgb), 0.22);
  --shadow: 0 22px 48px rgba(var(--ink-rgb), 0.08);
  --radius: 20px;
  --radius-sm: 14px;
  --focus: rgba(var(--accent-rgb), 0.18);
  --heading-font: var(--font-head);
  --body-font: var(--font-body);
  --contact-fade-rgb: var(--ink-rgb);

  --admin-bg-0: var(--surface);
  --admin-bg-1: var(--surface-2);
  --admin-bg-2: var(--surface-3);
  --admin-panel: rgba(250, 250, 248, 0.97);
  --admin-panel-strong: rgba(250, 250, 248, 0.99);
  --admin-surface: rgba(236, 234, 228, 0.86);
  --admin-surface-soft: rgba(224, 221, 214, 0.78);
  --admin-text-1: var(--ink);
  --admin-text-2: var(--ink-soft);
  --admin-text-3: var(--muted);
  --admin-line: rgba(var(--ink-rgb), 0.12);
  --admin-line-strong: rgba(var(--ink-rgb), 0.22);
  --admin-accent: var(--accent);
  --admin-accent-soft: var(--accent-dim);
  --admin-accent-rgb: var(--accent-rgb);
  --admin-ink-rgb: var(--ink-rgb);

  --mail-bg-0: var(--surface);
  --mail-bg-1: var(--surface-2);
  --mail-panel: rgba(250, 250, 248, 0.97);
  --mail-text-1: var(--ink);
  --mail-text-2: var(--ink-soft);
  --mail-text-3: var(--muted);
  --mail-amber-rgb: var(--accent-rgb);

  --tech-bg-0: var(--surface);
  --tech-panel: rgba(250, 250, 248, 0.97);
  --tech-text-1: var(--ink);
  --tech-text-2: var(--ink-soft);
  --tech-text-3: var(--muted);
  --tech-amber-rgb: var(--accent-rgb);
}

html {
  color-scheme: light;
}

::selection {
  background: rgba(var(--accent-rgb), 0.18);
  color: var(--ink);
}

body {
  font-family: var(--font-body);
  background: linear-gradient(180deg, var(--white) 0%, var(--surface) 52%, var(--surface-2) 100%);
  color: var(--ink-soft);
  line-height: 1.65;
  letter-spacing: 0;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  isolation: isolate;
}

body::before,
body::after {
  display: block !important;
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
}

body::before {
  z-index: -2;
  background:
    radial-gradient(44rem 22rem at 78% 0%, rgba(var(--accent-rgb), 0.08), transparent 70%),
    radial-gradient(30rem 18rem at 14% 0%, rgba(var(--ink-rgb), 0.05), transparent 66%);
}

body::after {
  z-index: -1;
  background:
    linear-gradient(180deg, rgba(250, 250, 248, 0.76) 0%, rgba(245, 243, 239, 0.16) 50%, rgba(236, 234, 228, 0.4) 100%);
  mix-blend-mode: normal;
  opacity: 1;
}

a {
  color: var(--accent);
  text-decoration: underline;
  text-decoration-color: rgba(var(--accent-rgb), 0.24);
  text-underline-offset: 0.16em;
}

a:hover {
  color: var(--accent-dim);
  text-decoration-color: rgba(var(--accent-rgb), 0.44);
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-head);
  color: var(--ink);
  line-height: 1.02;
  letter-spacing: -0.01em;
}

strong {
  color: var(--ink);
}

code,
pre,
kbd,
samp {
  font-family: var(--font-mono);
}

button,
input,
select,
textarea {
  font: inherit;
}

.site-header {
  background: rgba(var(--ink-rgb), 0.97);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(16px);
  box-shadow: 0 18px 34px rgba(var(--ink-rgb), 0.16);
}

.header-inner {
  padding: 12px 0;
  gap: 18px;
}

.brand {
  color: var(--white);
}

.brand:hover {
  text-decoration: none;
}

.site-header .brand-logo {
  filter: brightness(0) invert(1);
  height: 48px;
}

.brand-title {
  font-family: var(--font-head);
  font-size: 19px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--white);
}

.brand-sub,
.section-kicker,
.hero-aside-kicker,
.kicker,
.metric-label,
.share-label,
.hero-note,
.hero-brand-tagline,
.hero-brand-note,
.weekdays,
th {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.brand-sub {
  color: rgba(255, 255, 255, 0.48);
}

.section-kicker,
.hero-aside-kicker,
.kicker,
.metric-label,
.share-label {
  color: var(--accent);
}

.hero-note,
.hero-brand-tagline,
.hero-brand-note,
.weekdays,
th {
  color: rgba(var(--ink-rgb), 0.58);
}

.primary-nav {
  gap: 6px;
}

.primary-nav a {
  min-height: 40px;
  padding: 10px 14px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.02);
  color: rgba(255, 255, 255, 0.76);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-decoration: none;
}

.primary-nav a:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.1);
  color: var(--white);
}

.primary-nav .cta {
  background: var(--accent);
  border-color: var(--accent);
  color: var(--white);
  box-shadow: 0 14px 30px rgba(var(--accent-rgb), 0.28);
}

.primary-nav .cta:hover {
  background: var(--accent-dim);
  border-color: var(--accent-dim);
}

.nav-toggle {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

.nav-toggle span {
  background: var(--white);
}

.site-header.nav-open .primary-nav {
  background: rgba(var(--ink-rgb), 0.98);
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 18px 36px rgba(var(--ink-rgb), 0.22);
}

.button,
.login-submit {
  min-height: 46px;
  padding: 13px 18px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition:
    transform 0.18s ease,
    background 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease,
    box-shadow 0.18s ease;
}

.button:hover,
.login-submit:hover {
  text-decoration: none;
  transform: translateY(-1px);
}

.button.primary,
.login-submit {
  background: var(--ink);
  border-color: var(--ink);
  color: var(--white);
  box-shadow: 0 14px 28px rgba(var(--ink-rgb), 0.12);
}

.button.primary:hover,
.login-submit:hover:not(:disabled) {
  background: var(--accent);
  border-color: var(--accent);
  box-shadow: 0 16px 32px rgba(var(--accent-rgb), 0.18);
}

.button.secondary,
.button.ghost,
.ftp-inline-btn,
.files-inline,
.modal-close,
.icon-btn {
  background: var(--white);
  border-color: var(--line);
  color: var(--ink);
  box-shadow: none;
}

.button.secondary:hover,
.button.ghost:hover,
.ftp-inline-btn:hover,
.files-inline:hover,
.modal-close:hover,
.icon-btn:hover {
  background: var(--surface-2);
  border-color: rgba(var(--accent-rgb), 0.24);
  color: var(--ink);
}

.button:focus-visible,
.login-submit:focus-visible,
.ftp-inline-btn:focus-visible,
.files-inline:focus-visible,
.modal-close:focus-visible,
.icon-btn:focus-visible,
.tab:focus-visible,
.nav-toggle:focus-visible,
.primary-nav a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: none;
  box-shadow: 0 0 0 4px rgba(var(--accent-rgb), 0.14);
}

input:not([type="checkbox"]):not([type="radio"]):not([type="color"]),
select,
textarea {
  background: var(--white);
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

input:not([type="checkbox"]):not([type="radio"]):not([type="color"]):focus,
select:focus,
textarea:focus {
  border-color: rgba(var(--accent-rgb), 0.42);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 0 0 4px rgba(var(--accent-rgb), 0.14);
}

input::placeholder,
textarea::placeholder {
  color: rgba(var(--muted-rgb), 0.86);
}

input[type="checkbox"],
input[type="radio"] {
  accent-color: var(--accent);
}

input[type="file"] {
  padding: 8px 10px;
}

input[type="file"]::file-selector-button {
  margin-right: 12px;
  border: 1px solid var(--line);
  border-radius: 999px;
  background: var(--surface-2);
  color: var(--ink);
  padding: 8px 12px;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
}

input[type="color"] {
  border: 1px solid var(--line);
  border-radius: 12px;
  background: var(--white);
}

select:not([multiple]) {
  background-image:
    linear-gradient(45deg, transparent 50%, var(--accent) 50%),
    linear-gradient(135deg, var(--accent) 50%, transparent 50%);
  background-position:
    calc(100% - 18px) calc(50% - 3px),
    calc(100% - 12px) calc(50% - 3px);
  background-repeat: no-repeat;
  background-size: 6px 6px;
  padding-right: 42px;
}

select option {
  background: var(--white);
  color: var(--ink);
}

input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-text-fill-color: var(--ink);
  box-shadow: 0 0 0 1000px var(--white) inset;
}

.hero {
  padding: 34px 0 18px;
}

.hero-layout {
  background: linear-gradient(180deg, rgba(250, 250, 248, 0.98), rgba(245, 243, 239, 0.95));
  border: 1px solid var(--line);
  border-radius: 26px;
  box-shadow: var(--shadow);
  overflow: hidden;
}

.hero-logo {
  background: linear-gradient(180deg, var(--surface-2) 0%, var(--surface-3) 100%);
  border-right: 1px solid var(--line);
}

.hero-content {
  color: var(--ink-soft);
}

.page-hero .container {
  background: linear-gradient(180deg, rgba(30, 28, 24, 0.82), rgba(22, 21, 18, 0.74));
  border-color: var(--line);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.03),
    var(--shadow);
  color: var(--white);
}

.page-hero .container .page-title,
.page-hero .container strong {
  color: var(--white);
}

.page-hero .container .page-intro {
  color: rgba(255, 255, 255, 0.78);
}

.page-hero .container .section-kicker {
  color: var(--accent);
}

.hero-content h1,
.home-hero-title,
.page-title,
.section-title,
.portal-title,
.tool-title,
.notfound-title,
.login-header h1,
.tech-card h1,
.wrap h1,
.modal-title {
  font-family: var(--font-head);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.hero-brand-name {
  font-family: var(--font-head);
  font-size: 34px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  color: var(--ink);
}

.hero-tagline,
.overview-lead,
.page-intro {
  color: rgba(var(--ink-rgb), 0.84);
}

.hero-sub,
.page-content p,
.page-content li,
.hero-aside-list li,
.service-card li,
.cap-card li,
.overview-card li,
.accordion-body li,
.accordion-body p {
  color: rgba(var(--ink-rgb), 0.74);
}

.hero-proof span {
  background: var(--white);
  border: 1px solid var(--line);
  color: rgba(var(--ink-rgb), 0.74);
}

.overview-card,
.service-card,
.cap-card,
.card,
.process-card,
details.accordion,
.consultation-note,
.panel,
.ftp-card,
.portal-card,
.notfound-card,
.login-card,
.tech-card,
.tool-panel,
.gate-card,
.share-modal,
.files-modal,
.share-out,
.shares-list,
.files-share-out,
.files-share-list,
.files-list,
.ftp-list,
.ftp-player,
.iframe-wrap,
.overview-table-wrap,
.chat-modal-msgs,
.preview-frame {
  background: linear-gradient(180deg, rgba(250, 250, 248, 0.98), rgba(245, 243, 239, 0.95));
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  color: var(--ink-soft);
}

.overview-card:hover,
.service-card:hover,
.cap-card:hover,
.card:hover,
.process-card:hover,
.nf-link:hover {
  border-color: rgba(var(--accent-rgb), 0.24);
  box-shadow: 0 24px 46px rgba(var(--ink-rgb), 0.1);
}

.process-step,
.tag,
.pill {
  border: 1px solid rgba(var(--accent-rgb), 0.18);
  background: rgba(var(--accent-rgb), 0.08);
  color: var(--ink);
  font-family: var(--font-mono);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tab {
  border: 1px solid var(--line);
  background: var(--white);
  color: rgba(var(--ink-rgb), 0.72);
  border-radius: 999px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.tab:hover {
  background: var(--surface-2);
  border-color: rgba(var(--accent-rgb), 0.24);
  color: var(--ink);
}

.tab.active {
  border-color: rgba(var(--accent-rgb), 0.3);
  background: rgba(var(--accent-rgb), 0.1);
  color: var(--ink);
  box-shadow: 0 0 0 4px rgba(var(--accent-rgb), 0.1);
}

table {
  width: 100%;
  border-collapse: collapse;
}

th,
td {
  border-bottom-color: var(--line);
}

td {
  color: var(--ink-soft);
}

tbody tr:hover td {
  background: rgba(var(--accent-rgb), 0.04);
}

.files-list,
.ftp-list,
.shares-list,
.files-share-list {
  overflow: hidden;
}

.files-list li,
.ftp-list li {
  border-bottom-color: var(--line);
}

.files-list li:hover,
.ftp-list li:hover {
  background: rgba(var(--accent-rgb), 0.04);
}

.files-meta,
.ftp-meta,
.portal-sub,
.tool-sub,
.login-header p,
.login-footer,
.tech-session-meta,
.shares-empty,
.files-share-empty,
.notice {
  color: rgba(var(--ink-rgb), 0.66);
}

.notfound-code {
  font-family: var(--font-head);
  color: var(--accent);
}

.nf-link,
.nf-mini code {
  background: var(--white);
  border: 1px solid var(--line);
}

.wrap {
  max-width: 1040px;
  margin: 0 auto;
  padding: 2.4rem 1.25rem 3rem;
}

.wrap h2 {
  font-family: var(--font-head);
  text-transform: uppercase;
  color: var(--ink);
}

.wrap p,
.wrap li {
  color: rgba(var(--ink-rgb), 0.74);
}

.wrap .card {
  background: var(--white);
}

.wrap code {
  background: var(--surface-2);
  border: 1px solid var(--rule);
}

.banner {
  background: rgba(var(--accent-rgb), 0.08);
  border: 1px solid rgba(var(--accent-rgb), 0.18);
  color: var(--ink);
  border-radius: 14px;
  padding: 14px 16px;
}

.cal-title,
.slots-title {
  font-family: var(--font-head);
  font-weight: 700;
  text-transform: uppercase;
  color: var(--ink);
}

.icon-btn,
.day,
.slot,
.files-inline,
.ftp-inline-btn {
  border-radius: 14px;
}

.day {
  background: var(--white);
  border-color: var(--line);
  color: var(--ink);
}

.day.avail {
  background: rgba(var(--accent-rgb), 0.08);
  border-color: rgba(var(--accent-rgb), 0.22);
}

.day.avail:hover {
  background: rgba(var(--accent-rgb), 0.14);
}

.day.full,
.day.disabled {
  background: var(--surface-2);
  color: rgba(var(--muted-rgb), 0.72);
}

.day.selected {
  background: var(--ink);
  border-color: var(--ink);
  color: var(--white);
  box-shadow: 0 0 0 4px rgba(var(--ink-rgb), 0.08);
}

.slot {
  background: var(--white);
  border-color: var(--line);
}

.slot.available {
  background: rgba(var(--accent-rgb), 0.06);
  border-color: rgba(var(--accent-rgb), 0.22);
}

.slot.available:hover {
  background: rgba(var(--accent-rgb), 0.1);
}

.confirm-details {
  background: linear-gradient(180deg, var(--white), var(--surface));
  border: 1px solid var(--line);
  box-shadow: none;
}

.confirm-lead,
.confirm-value {
  color: var(--ink);
}

.confirm-item,
.confirm-note {
  color: rgba(var(--ink-rgb), 0.7);
}

.modal-backdrop,
.files-modal-backdrop,
.share-modal-backdrop {
  background: rgba(var(--ink-rgb), 0.56);
  backdrop-filter: blur(6px);
}

.modal-card,
.files-modal,
.share-modal,
.support-feedback-card {
  background: linear-gradient(180deg, var(--white), var(--surface));
  border: 1px solid var(--line-strong);
  box-shadow: 0 30px 60px rgba(var(--ink-rgb), 0.18);
}

.share-out,
.files-share-out,
.shares-list,
.files-share-list,
.ftp-player,
.tech-log,
.tech-sessions,
.chat-modal-msgs {
  background: linear-gradient(180deg, var(--white), rgba(245, 243, 239, 0.96));
}

.files-progress,
.ftp-progress {
  background: var(--surface-2);
  border-color: var(--line);
}

.files-progress::-webkit-progress-bar,
.ftp-progress::-webkit-progress-bar {
  background: var(--surface-2);
}

.files-progress::-webkit-progress-value,
.files-progress::-moz-progress-bar,
.ftp-progress::-webkit-progress-value,
.ftp-progress::-moz-progress-bar {
  background: linear-gradient(90deg, var(--accent), var(--ink));
}

.err,
.files-err,
.ftp-error,
.tech-login-error {
  color: var(--danger);
}

.ok,
.files-ok,
.ftp-success {
  color: var(--success);
}

.error-message,
.success-message,
.gate-error {
  border-radius: 14px;
}

.error-message {
  background: rgba(var(--danger-rgb), 0.08);
  border-color: rgba(var(--danger-rgb), 0.18);
  color: var(--danger);
}

.success-message {
  background: rgba(var(--success-rgb), 0.08);
  border-color: rgba(var(--success-rgb), 0.18);
  color: var(--success);
}

.gate {
  background: rgba(245, 243, 239, 0.9);
  backdrop-filter: blur(12px);
}

.gate-card p {
  color: rgba(var(--ink-rgb), 0.72);
}

.gate-error {
  background: rgba(var(--danger-rgb), 0.08);
  border-color: rgba(var(--danger-rgb), 0.18);
  color: var(--danger);
}

.tool-wrap {
  padding: 28px 0 42px;
}

.preview-frame {
  border-radius: 20px;
}

.preview-stage {
  background:
    radial-gradient(700px 380px at 50% 20%, rgba(var(--accent-rgb), 0.08), transparent 55%),
    linear-gradient(180deg, var(--white), var(--surface));
}

.preview-note {
  color: rgba(var(--ink-rgb), 0.64);
}

.tech-log,
.tech-sessions {
  border: 1px solid var(--line);
}

.tech-bubble {
  border: 1px solid var(--line);
  color: var(--ink);
}

.tech-row.customer .tech-bubble {
  background: var(--white);
}

.tech-row.tech .tech-bubble {
  background: rgba(var(--accent-rgb), 0.12);
}

.tech-row.system .tech-bubble {
  background: var(--surface-2);
  color: rgba(var(--ink-rgb), 0.7);
}

.tech-status {
  font-family: var(--font-head);
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--ink);
}

.login-card {
  background: linear-gradient(180deg, rgba(250, 250, 248, 0.99), rgba(245, 243, 239, 0.96));
}

.login-logo {
  filter: none;
}

.login-submit.loading .loading-spinner {
  border-color: rgba(250, 250, 248, 0.3);
  border-top-color: var(--white);
}

.contact {
  padding: 46px 0;
  background: transparent;
}

.contact > .container {
  background: linear-gradient(180deg, rgba(var(--ink-rgb), 0.98), rgba(28, 31, 29, 0.96));
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 24px;
  box-shadow: 0 32px 58px rgba(var(--ink-rgb), 0.24);
}

.contact > .container::before {
  opacity: 0.22;
}

.contact > .container::after {
  background: linear-gradient(90deg, rgba(var(--contact-fade-rgb), 0.92), rgba(var(--contact-fade-rgb), 0.72) 38%, rgba(var(--contact-fade-rgb), 0.34));
}

.contact h2,
.contact h3,
.contact p,
.contact a,
.contact strong {
  color: var(--white);
}

.consultation-note {
  background: rgba(255, 255, 255, 0.04);
  border-color: rgba(255, 255, 255, 0.1);
  box-shadow: none;
}

.site-footer {
  background: var(--ink);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding: 24px 0;
}

.footer-inner {
  color: rgba(255, 255, 255, 0.56);
  gap: 12px 24px;
}

.footer-inner p {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.footer-inner a {
  color: var(--white);
  text-decoration: none;
}

.footer-inner a:hover {
  color: rgba(255, 255, 255, 0.78);
}

@media (max-width: 960px) {
  .hero-logo {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
}

@media (max-width: 720px) {
  .container {
    width: min(1200px, calc(100% - 28px));
  }

  .site-header.nav-open .primary-nav {
    width: min(340px, calc(100% - 28px));
  }

  .hero-content,
  .hero-logo,
  .overview-card,
  .service-card,
  .cap-card,
  .card,
  .process-card,
  .panel,
  .portal-card,
  .ftp-card,
  .login-card,
  .tech-card,
  .notfound-card,
  .tool-panel,
  .share-modal,
  .files-modal {
    padding-left: 18px;
    padding-right: 18px;
  }

  .footer-inner p {
    font-size: 10px;
  }
}
