/* source: premium-site.v57.css */

:root {
  --bg: #0b0e12;
  --bg-soft: #11161d;
  --panel: rgba(18, 24, 31, 0.82);
  --panel-strong: rgba(15, 20, 27, 0.94);
  --line: rgba(255,255,255,0.08);
  --line-strong: rgba(255,255,255,0.14);
  --text: #f4f7fb;
  --muted: #9ca9b8;
  --muted-2: #7c8897;
  --accent: #f29b38;
  --accent-2: #ffbf66;
  --success: #76d09f;
  --shadow: 0 20px 60px rgba(0,0,0,0.28);
  --radius: 24px;
  --radius-sm: 16px;
  --max: 1240px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color: var(--text);
  background:
    radial-gradient(circle at top left, rgba(242,155,56,0.12), transparent 28%),
    radial-gradient(circle at 85% 10%, rgba(108,160,255,0.08), transparent 22%),
    linear-gradient(180deg, #0a0d11 0%, #0d1218 45%, #090c10 100%);
  min-width: 320px;
  overflow-x: hidden;
}

main, section, div, article, nav, a, p, h1, h2, h3, h4, strong, span, li { min-width: 0; }
p, li, span, a, h1, h2, h3, h4, strong { overflow-wrap: anywhere; }
h1, h2, h3, .stat-box strong, .portfolio-content h3, .page-hero .copy h1, .hero-copy h1, .section-title h2 { text-wrap: balance; }
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
button, input, textarea { font: inherit; }
.container { width: min(calc(100% - 32px), var(--max)); margin: 0 auto; }
.topbar {
  position: sticky; top: 0; z-index: 100;
  backdrop-filter: blur(16px);
  background: rgba(9, 13, 18, 0.78);
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.nav-wrap { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 82px; }
.brand { display:flex; align-items:center; gap:14px; min-width:0; }
.brand img { width: 48px; height: 48px; object-fit: contain; border-radius: 14px; background: rgba(255,255,255,0.04); padding: 6px; }
.brand strong { display:block; font-size: 16px; letter-spacing: 0.02em; }
.brand span { display:block; color: var(--muted); font-size: 12px; }
.desktop-nav { display:flex; align-items:center; gap: 20px; color: #dbe3ec; font-size: 13px; }
.desktop-nav a { white-space: nowrap; }
.desktop-nav a { position:relative; }
.desktop-nav a::after { content:''; position:absolute; left:0; bottom:-6px; width:0; height:1px; background: var(--accent); transition: width .25s ease; }
.desktop-nav a:hover::after, .desktop-nav a.active::after { width:100%; }
.nav-actions { display:flex; align-items:center; gap:12px; }
.contact-chip { display:flex; flex-direction:column; gap:2px; text-align:right; }
.contact-chip small { color: var(--muted); font-size: 11px; }
.contact-chip a { font-weight:700; letter-spacing: .01em; }
.btn, .btn-secondary {
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  min-height: 48px; padding: 13px 20px; border-radius: 999px; border: 1px solid transparent; font-weight: 700;
  transition: transform .22s ease, box-shadow .22s ease, background .22s ease, border-color .22s ease;
}
.btn { background: linear-gradient(135deg, var(--accent) 0%, var(--accent-2) 100%); color: #19130b; box-shadow: 0 16px 40px rgba(242,155,56,.24); }
.btn:hover, .btn:focus-visible { transform: translateY(-1px); box-shadow: 0 20px 48px rgba(242,155,56,.32); }
.btn-secondary { border-color: rgba(255,255,255,.12); background: rgba(255,255,255,.03); color: var(--text); }
.btn-secondary:hover, .btn-secondary:focus-visible { transform: translateY(-1px); border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.06); }
.menu-toggle { display:none; width:48px; height:48px; border-radius:14px; border:1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.04); color: var(--text); }
.mobile-panel { display:none; padding: 0 0 18px; }
.mobile-panel.open { display:block; }
.mobile-panel nav { display:grid; gap:12px; padding-top:12px; }
.hero {
  position: relative; overflow:hidden; min-height: min(100dvh, 980px); padding: 34px 0 56px;
}
.hero-grid {
  display:grid; grid-template-columns: minmax(0,1.05fr) minmax(320px,.95fr); gap: 28px; align-items: stretch; padding-top: 34px;
}
.kicker { display:inline-flex; align-items:center; gap:10px; padding: 10px 14px; border-radius:999px; border:1px solid rgba(255,255,255,.09); background: rgba(255,255,255,.04); color: #e6edf5; font-size: 13px; }
.kicker::before { content:''; width:8px; height:8px; border-radius:50%; background: var(--success); box-shadow: 0 0 0 8px rgba(118,208,159,.08); }
.hero-copy {
  display:flex; flex-direction:column; justify-content:center; gap:24px; padding: 26px 0;
}
.hero-copy h1 { margin:0; font-size: clamp(34px, 5vw, 72px); line-height: .96; letter-spacing: -0.04em; max-width: 12ch; }
.hero-copy p { margin:0; font-size: clamp(16px, 2vw, 20px); line-height:1.65; color: #ced7e1; max-width: 62ch; }
.hero-actions { display:flex; flex-wrap:wrap; gap:12px; }
.hero-points { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 14px; }
.point-card { padding:18px; border-radius: 20px; background: rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.08); }
.point-card strong { display:block; font-size: 24px; margin-bottom: 6px; }
.point-card span { display:block; color: var(--muted); font-size: 13px; line-height: 1.55; }
.hero-visual { position:relative; min-height: 620px; }
.hero-main {
  position:absolute; inset:0; border-radius: 32px; overflow:hidden; border:1px solid rgba(255,255,255,.08); box-shadow: var(--shadow);
}
.hero-main img { width:100%; height:100%; object-fit:cover; filter: saturate(1.04) contrast(1.04); }
.hero-main::after { content:''; position:absolute; inset:0; background: linear-gradient(180deg, rgba(11,14,18,.08), rgba(11,14,18,.22) 28%, rgba(11,14,18,.74) 100%); }
.float-card, .float-card-2 {
  position:absolute; z-index:3; backdrop-filter: blur(12px); background: rgba(10,14,19,.72); border:1px solid rgba(255,255,255,.1); border-radius: 22px; box-shadow: 0 18px 46px rgba(0,0,0,.24);
}
.float-card { left:-22px; bottom: 24px; width:min(300px, 86vw); padding: 20px; }
.float-card-2 { right:-16px; top: 28px; width:min(260px, 82vw); padding:18px; }
.float-card h3, .float-card-2 h3 { margin:0 0 8px; font-size:16px; }
.float-card p, .float-card-2 p { margin:0; color: var(--muted); line-height:1.6; font-size:14px; }
.section { padding: 84px 0; position:relative; }
.section-title { max-width: 760px; margin-bottom: 30px; }
.section-title span { color: var(--accent-2); text-transform: uppercase; letter-spacing: .18em; font-size: 12px; }
.section-title h2 { margin: 12px 0 14px; font-size: clamp(30px, 4vw, 56px); line-height:1.02; letter-spacing:-.035em; max-width: 16ch; }
.section-title p { margin:0; color: var(--muted); line-height:1.75; }
.grid-2 { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 20px; }
.grid-3 { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.card {
  position:relative; overflow:hidden; background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08); border-radius: 26px; padding: 24px; box-shadow: var(--shadow);
}
.card.small-pad { padding:20px; }
.card h3 { margin:0 0 10px; font-size: clamp(24px, 2vw, 28px); line-height: 1.08; letter-spacing: -.03em; }
.card p { margin:0; color: var(--muted); line-height:1.75; }
.service-card { display:grid; grid-template-columns: minmax(0, 1.15fr) minmax(240px,.85fr); gap: 22px; align-items:stretch; min-height: 340px; }
.service-card.reverse { grid-template-columns: minmax(240px,.85fr) minmax(0, 1.15fr); }
.service-copy { display:flex; flex-direction:column; gap: 18px; justify-content:space-between; }
.service-copy ul { margin:0; padding-left: 18px; color:#dbe5ee; display:grid; gap:10px; }
.service-copy li { line-height:1.55; }
.service-media { position:relative; border-radius:24px; overflow:hidden; min-height: 280px; }
.service-media img { width:100%; height:100%; object-fit:cover; }
.service-media::after { content:''; position:absolute; inset:0; background: linear-gradient(180deg, rgba(7,10,13,.06), rgba(7,10,13,.32) 65%, rgba(7,10,13,.58)); }
.badge-row { display:flex; flex-wrap:wrap; gap:8px; }
.badge { padding:8px 12px; border-radius:999px; background: rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.09); color:#e5edf4; font-size:13px; }
.stats-grid { display:grid; grid-template-columns: minmax(0,1.08fr) minmax(380px,.92fr); gap: 20px; align-items: stretch; }
.stats-stack { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 18px; align-content: start; }
.stat-box { padding: 26px; border-radius:26px; background: rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.08); }
.stat-box strong { display:block; font-size: clamp(28px, 2.35vw, 40px); line-height: 1.04; letter-spacing:-.035em; margin-bottom: 10px; max-width: 12ch; }
.stat-box span { color: var(--muted); line-height:1.65; }
.portfolio-grid { display:grid; grid-template-columns: repeat(12, 1fr); gap: 18px; }
.portfolio-item { grid-column: span 4; min-height: 360px; display:flex; flex-direction:column; justify-content:flex-end; padding: 22px; border-radius: 28px; overflow:hidden; position:relative; border:1px solid rgba(255,255,255,.08); }
.portfolio-item.large { grid-column: span 6; min-height: 440px; }
.portfolio-item img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.portfolio-item::after { content:''; position:absolute; inset:0; background: linear-gradient(180deg, rgba(8,11,14,.06), rgba(8,11,14,.30) 50%, rgba(8,11,14,.84) 100%); }
.portfolio-content { position:relative; z-index:2; }
.portfolio-content h3 { margin: 0 0 8px; font-size: clamp(24px, 2vw, 30px); line-height: 1.08; }
.portfolio-content p { margin:0 0 14px; color: #d5dee8; line-height:1.65; max-width: 48ch; }
.process-grid { display:grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 18px; }
.process-card { padding: 26px; border-radius: 24px; background: rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.08); }
.process-card strong { display:flex; align-items:center; justify-content:center; width: 50px; height:50px; border-radius:16px; background: rgba(242,155,56,.12); border:1px solid rgba(242,155,56,.2); margin-bottom:18px; font-size: 18px; color: var(--accent-2); }
.process-card h3 { margin:0 0 10px; font-size: 22px; line-height: 1.12; }
.process-card p { margin:0; color: var(--muted); line-height:1.7; }
.adv-grid { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.adv-item { display:flex; gap:16px; padding: 22px; border-radius: 22px; border:1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.028); }
.adv-icon { flex:0 0 46px; width:46px; height:46px; border-radius: 16px; background: rgba(242,155,56,.12); border:1px solid rgba(242,155,56,.2); }
.adv-item h3 { margin:0 0 8px; font-size: 20px; }
.adv-item p { margin:0; color: var(--muted); line-height:1.65; }
.page-hero { padding: 62px 0 24px; }
.page-hero-grid { display:grid; grid-template-columns: minmax(0, .94fr) minmax(320px,1.06fr); gap: 20px; align-items:stretch; }
.page-hero-grid .media { border-radius: 28px; overflow:hidden; min-height: 420px; border:1px solid rgba(255,255,255,.08); }
.page-hero-grid .media img { width:100%; height:100%; object-fit:cover; }
.page-hero .copy { display:flex; flex-direction:column; gap:18px; justify-content:center; }
.page-hero h1 { margin:0; font-size: clamp(32px,4.4vw,58px); line-height:.98; letter-spacing:-.04em; }
.page-hero p { margin:0; color: var(--muted); line-height:1.75; }
.breadcrumbs { display:flex; flex-wrap:wrap; gap:10px; color: var(--muted-2); font-size: 13px; margin-bottom: 16px; }
.breadcrumbs a { color: #cbd5df; }
.split { display:grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.cta-band {
  padding: 34px; border-radius: 30px; border:1px solid rgba(255,255,255,.08);
  background: linear-gradient(135deg, rgba(242,155,56,.12), rgba(255,255,255,.03));
  display:grid; grid-template-columns: 1fr auto; gap: 16px; align-items:center;
}
.cta-band h2 { margin:0 0 10px; font-size: clamp(28px, 4vw, 46px); letter-spacing:-.03em; }
.cta-band p { margin:0; color: #d5dee8; line-height:1.7; max-width: 60ch; }
.form-grid { display:grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.field { display:flex; flex-direction:column; gap:8px; }
.field input, .field textarea, .field select {
  width:100%; border-radius: 18px; border:1px solid rgba(255,255,255,.1); background: rgba(255,255,255,.03); color: var(--text);
  padding: 14px 16px; min-height: 52px; outline:none;
}
.field textarea { min-height: 150px; resize: vertical; }
.field input:focus, .field textarea:focus, .field select:focus { border-color: rgba(242,155,56,.52); box-shadow: 0 0 0 4px rgba(242,155,56,.08); }
.footer { padding: 50px 0 32px; border-top:1px solid rgba(255,255,255,.07); background: rgba(6,8,12,.46); }
.footer-grid { display:grid; grid-template-columns: 1.1fr .9fr .9fr; gap: 24px; }
.footer h3, .footer h4 { margin:0 0 12px; }
.footer p, .footer li, .footer a { color: var(--muted); line-height:1.7; }
.footer ul { list-style:none; padding:0; margin:0; display:grid; gap:8px; }
.footer-bottom { display:flex; justify-content:space-between; gap:12px; padding-top: 24px; margin-top: 24px; border-top:1px solid rgba(255,255,255,.06); color: var(--muted-2); font-size: 14px; }
.reveal { opacity:0; transform: translateY(22px); transition: opacity .7s ease, transform .7s ease; }
.reveal.visible { opacity:1; transform: translateY(0); }
.notice { padding: 14px 16px; border-radius: 18px; background: rgba(118,208,159,.1); border:1px solid rgba(118,208,159,.18); color:#dff4e8; font-size:14px; }
.table-list { display:grid; gap:10px; }
.table-row { display:grid; grid-template-columns: 1fr auto; gap:12px; padding: 16px 18px; border-radius:18px; background: rgba(255,255,255,.028); border:1px solid rgba(255,255,255,.07); }
.table-row strong { font-size: 16px; }
.table-row span { color: var(--muted); }
.faq { display:grid; gap: 12px; }
.faq details { border-radius: 20px; border:1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.03); padding: 18px 20px; }
.faq summary { cursor:pointer; font-weight:700; }
.faq p { margin: 12px 0 0; color: var(--muted); line-height:1.7; }

.page-hero .copy h1 { font-size: clamp(34px, 5vw, 62px); line-height: .98; letter-spacing: -.04em; max-width: 14ch; }
.page-hero .copy p, .hero-copy p, .section-title p, .card p, .stat-box span, .portfolio-content p, .process-card p, .footer p { text-wrap: pretty; }
.table-row strong:last-child { flex-shrink: 0; text-align: right; }
.faq summary { overflow-wrap: anywhere; }
@media (max-width: 1080px) {
  .desktop-nav, .contact-chip, .nav-actions .btn { display:none; }
  .menu-toggle { display:inline-flex; align-items:center; justify-content:center; }
  .hero-grid, .page-hero-grid, .stats-grid, .cta-band, .footer-grid, .service-card, .service-card.reverse { grid-template-columns: 1fr; }
  .service-card.reverse .service-media { order:-1; }
  .hero-visual { min-height: 500px; }
  .portfolio-item, .portfolio-item.large { grid-column: span 6; }
  .process-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 780px) {
  .section { padding: 64px 0; }
  .container { width:min(calc(100% - 24px), var(--max)); }
  .hero { padding-top: 14px; }
  .hero-grid { gap: 18px; }
  .hero-copy h1, .page-hero .copy h1, .section-title h2, .stat-box strong { max-width: none; }
  .hero-copy h1 { max-width: none; }
  .hero-points, .grid-2, .grid-3, .stats-stack, .adv-grid, .process-grid, .split, .form-grid { grid-template-columns: 1fr; }
  .portfolio-item, .portfolio-item.large { grid-column: span 12; min-height: 320px; }
  .float-card { left: 12px; right: 12px; bottom: 12px; width: auto; }
  .float-card-2 { right: 12px; top: 12px; }
  .hero-visual { min-height: 420px; }
  .cta-band { padding: 24px; }
  .footer-bottom { flex-direction:column; }
}

@media (max-width: 1320px) { .desktop-nav { gap: 16px; font-size: 12.5px; } .brand span { font-size: 11px; } }



:root { --max: 1280px; }
body { letter-spacing: 0; }
p, li, span, a { overflow-wrap: normal; word-break: normal; }
h1, h2, h3, .stat-box strong, .portfolio-content h3, .page-hero .copy h1, .hero-copy h1, .section-title h2 { text-wrap: pretty; }
.topbar { background: rgba(8, 12, 18, 0.88); }
.nav-wrap { gap: 24px; min-height: 88px; }
.brand { flex: 0 0 auto; }
.brand strong { font-size: 15px; }
.brand span { font-size: 11px; max-width: 210px; line-height: 1.35; }
.desktop-nav { flex: 1 1 auto; justify-content: center; gap: 12px; font-size: 14px; }
.desktop-nav > a, .nav-trigger {
  height: 42px; padding: 0 14px; border-radius: 999px; border: 1px solid transparent;
  background: transparent; color: #e5edf4; font: inherit; display: inline-flex; align-items: center; gap: 8px; cursor: pointer;
}
.desktop-nav > a::after { display: none; }
.desktop-nav > a:hover, .desktop-nav > a.active, .nav-group.active .nav-trigger, .nav-group:hover .nav-trigger, .nav-group:focus-within .nav-trigger {
  background: rgba(255,255,255,.05); border-color: rgba(255,255,255,.08); color: #fff;
}
.nav-group { position: relative; }
.nav-trigger span { color: var(--accent-2); font-size: 11px; transform: translateY(-1px); }
.nav-dropdown {
  position: absolute; top: calc(100% + 10px); left: 0; min-width: 260px; padding: 10px; display: grid; gap: 6px;
  opacity: 0; pointer-events: none; transform: translateY(8px); transition: .18s ease;
  border-radius: 20px; border: 1px solid rgba(255,255,255,.08); background: rgba(12,16,22,.96); box-shadow: 0 20px 48px rgba(0,0,0,.28);
}
.nav-dropdown a { padding: 12px 14px; border-radius: 14px; color: #dbe5ee; white-space: nowrap; }
.nav-dropdown a::after { display: none; }
.nav-dropdown a:hover, .nav-dropdown a.active { background: rgba(255,255,255,.05); color: #fff; }
.nav-group:hover .nav-dropdown, .nav-group:focus-within .nav-dropdown { opacity: 1; pointer-events: auto; transform: translateY(0); }
.nav-actions { flex: 0 0 auto; gap: 10px; }
.contact-chip { padding-right: 6px; }
.contact-chip a { font-size: 13px; }
.nav-cta { min-height: 46px; padding: 12px 18px; }
.mobile-panel nav { gap: 14px; }
.mobile-nav-group { display: grid; gap: 8px; padding: 16px; border-radius: 20px; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.07); }
.mobile-nav-group > span { color: var(--accent-2); text-transform: uppercase; letter-spacing: .14em; font-size: 11px; }
.mobile-nav-group a, .mobile-panel nav > a { padding: 14px 16px; border-radius: 16px; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.06); }
.mobile-nav-group a.active, .mobile-panel nav > a.active { border-color: rgba(242,155,56,.32); }
.mobile-phone { font-weight: 700; text-align: center; }
.hero { min-height: auto; padding: 28px 0 52px; }
.hero-grid { grid-template-columns: minmax(0,.92fr) minmax(340px,1.08fr); gap: 34px; padding-top: 28px; align-items: center; }
.hero-copy { gap: 18px; }
.hero-copy h1 {
  font-size: clamp(42px, 4.8vw, 68px); line-height: 1.02; letter-spacing: -.045em; max-width: 8.6ch;
}
.hero-copy p { font-size: clamp(16px, 1.4vw, 18px); line-height: 1.72; max-width: 56ch; color: #d4dde7; }
.hero-points { gap: 12px; }
.point-card { padding: 16px 18px; }
.point-card strong { font-size: 21px; }
.hero-visual { min-height: 640px; }
.float-card { left: 18px; bottom: 18px; width: min(280px, 72vw); }
.float-card-2 { right: 18px; top: 18px; width: min(230px, 68vw); }
.section-title h2 { font-size: clamp(28px, 3.6vw, 46px); line-height: 1.06; max-width: 18ch; }
.card h3, .portfolio-content h3 { font-size: clamp(22px, 1.8vw, 26px); }
.stat-box strong { font-size: clamp(22px, 2vw, 32px); line-height: 1.08; max-width: 13ch; }
.page-hero { padding: 54px 0 20px; }
.page-hero-grid { grid-template-columns: minmax(0,.9fr) minmax(360px,1.1fr); gap: 24px; align-items: center; }
.page-hero .copy { gap: 16px; }
.page-hero .copy h1 { font-size: clamp(30px, 3.3vw, 46px); line-height: 1.06; max-width: 12ch; }
.page-hero .copy p { font-size: 16px; line-height: 1.72; max-width: 58ch; }
.kicker { font-size: 12px; padding: 10px 13px; }
.cta-band h2 { font-size: clamp(24px, 3vw, 40px); }
.table-row { align-items: start; }
.table-row strong:last-child { white-space: nowrap; }
@media (max-width: 1260px) {
  .contact-chip { display: none; }
  .desktop-nav { gap: 10px; }
  .desktop-nav > a, .nav-trigger { padding: 0 12px; font-size: 13px; }
  .hero-copy h1 { font-size: clamp(38px, 4.3vw, 56px); }
}
@media (max-width: 1080px) {
  .desktop-nav, .nav-cta, .contact-chip { display: none; }
  .menu-toggle { display:inline-flex; align-items:center; justify-content:center; }
  .nav-wrap { min-height: 78px; }
  .hero-grid, .page-hero-grid, .stats-grid, .cta-band, .footer-grid, .service-card, .service-card.reverse { grid-template-columns: 1fr; }
  .hero-copy h1 { max-width: 11ch; font-size: clamp(34px, 8vw, 50px); }
  .hero-visual { min-height: 480px; }
}
@media (max-width: 780px) {
  .container { width:min(calc(100% - 24px), var(--max)); }
  .hero { padding-top: 12px; }
  .hero-copy h1, .page-hero .copy h1 { max-width: none; }
  .hero-copy h1 { font-size: clamp(32px, 10vw, 44px); line-height: 1.05; }
  .page-hero .copy h1 { font-size: clamp(28px, 8.4vw, 38px); }
  .hero-copy p, .page-hero .copy p { font-size: 15px; line-height: 1.68; }
  .section-title h2 { font-size: clamp(26px, 7vw, 36px); max-width: none; }
  .float-card, .float-card-2 { position: static; width: auto; margin-top: 12px; }
  .hero-visual { min-height: auto; display: grid; }
  .hero-main { position: relative; min-height: 360px; }
  .hero-points, .grid-2, .grid-3, .stats-stack, .adv-grid, .process-grid, .split, .form-grid { grid-template-columns: 1fr; }
  .table-row { grid-template-columns: 1fr; }
  .table-row strong:last-child { text-align: left; }
}



html { -webkit-text-size-adjust: 100%; }
p, li, span, a, strong, small, h1, h2, h3 {
  -webkit-hyphens: none;
  hyphens: none;
}
p, li, span, a { word-break: normal; overflow-wrap: normal; }
h1, h2, h3, .hero-copy h1, .page-hero .copy h1, .section-title h2, .stat-box strong {
  word-break: normal;
  overflow-wrap: normal;
  text-wrap: balance;
}
.hero-grid { grid-template-columns: minmax(0,.88fr) minmax(380px,1.12fr); gap: 38px; }
.hero-copy h1 {
  max-width: 10.8ch;
  font-size: clamp(38px, 4.2vw, 58px);
  line-height: 1.04;
  letter-spacing: -.04em;
}
.hero-copy p { max-width: 52ch; font-size: clamp(16px, 1.28vw, 18px); }
.section-title h2 { max-width: 20ch; }
.stat-box strong { max-width: 14ch; }
.page-hero-grid { grid-template-columns: minmax(0,.94fr) minmax(360px,1.06fr); }
.page-hero .copy h1 {
  max-width: 15ch;
  font-size: clamp(30px, 3vw, 44px);
  line-height: 1.08;
  letter-spacing: -.035em;
}
.page-hero .copy p { max-width: 60ch; }
.point-card span, .float-card p, .float-card-2 p, .card p, .process-card p, .adv-item p, .stat-box span { text-wrap: pretty; }
@media (max-width: 1260px) {
  .hero-copy h1 { max-width: 12ch; font-size: clamp(36px, 4vw, 52px); }
  .page-hero .copy h1 { max-width: 16ch; }
}
@media (max-width: 1080px) {
  .hero-grid, .page-hero-grid { grid-template-columns: 1fr; }
  .hero-copy h1 { max-width: 14ch; font-size: clamp(34px, 6vw, 48px); }
  .page-hero .copy h1 { max-width: 18ch; font-size: clamp(30px, 5vw, 40px); }
}
@media (max-width: 780px) {
  .hero-copy h1, .page-hero .copy h1, .section-title h2, .stat-box strong { max-width: none; text-wrap: pretty; }
  .hero-copy h1 { font-size: clamp(32px, 9vw, 42px); line-height: 1.06; }
  .page-hero .copy h1 { font-size: clamp(28px, 8vw, 36px); line-height: 1.1; }
}



.hero-copy h1 {
  max-width: 10.8ch;
  text-wrap: balance;
}
.hero-copy p {
  max-width: 58ch;
  text-wrap: pretty;
}
.section-title h2 {
  max-width: 13ch;
  text-wrap: balance;
  line-height: 1.04;
}
.page-hero .copy h1 {
  max-width: 12ch;
  text-wrap: balance;
}
.card h3, .process-card h3, .portfolio-content h3, .adv-item h3, .stat-box strong {
  text-wrap: balance;
}
.process-card {
  min-height: 232px;
}
.process-card p {
  max-width: 28ch;
}
.portfolio-content p {
  max-width: 34ch;
}
.metric-line {
  display:flex; flex-wrap:wrap; gap:10px; margin: 12px 0 14px;
}
.metric-line span {
  display:inline-flex; align-items:center; padding:8px 12px; border-radius:999px;
  background: rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.12); color:#eef3f8; font-size:13px;
}
.footer-contacts {
  display:grid; gap:10px; margin-top:16px;
}
.footer-contacts .contact-row {
  display:flex; flex-wrap:wrap; gap:8px; align-items:flex-start; color: var(--muted);
}
.footer-contacts .contact-row strong { color: var(--text); min-width: 74px; }
.form-note {
  margin: 12px 0 0; color: #e8edf3; font-size: 14px; opacity: .92;
}
@media (max-width: 780px) {
  .hero-copy h1 { max-width: 11ch; }
  .section-title h2, .page-hero .copy h1 { max-width: 100%; }
  .process-card { min-height: unset; }
}



.table-row {
  align-items: start;
}
.table-row > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  min-width: 0;
}
.table-row > div > strong {
  display: block;
  margin: 0;
  font-size: 18px;
  line-height: 1.24;
  letter-spacing: -.015em;
  max-width: 30ch;
}
.table-row > div > span {
  display: block;
  margin: 0;
  color: var(--muted);
  line-height: 1.58;
  max-width: 56ch;
}
.table-row > strong {
  display: block;
  align-self: end;
  white-space: nowrap;
  font-size: 17px;
  line-height: 1.2;
}
.table-row > div > strong + span {
  margin-top: 0;
}
@media (max-width: 780px) {
  .table-row {
    gap: 10px;
    padding: 16px;
  }
  .table-row > div {
    gap: 10px;
  }
  .table-row > div > strong {
    font-size: 16px;
    max-width: 100%;
  }
  .table-row > div > span {
    font-size: 15px;
    line-height: 1.52;
    max-width: 100%;
  }
  .table-row > strong {
    align-self: flex-start;
    font-size: 16px;
    margin-top: 2px;
  }
}
.footer-contacts .contact-row a {
  overflow-wrap: anywhere;
}



.table-row > div { display:grid; gap:8px; }
.table-row > div > strong { display:block; }
.table-row > div > span { display:block; }
.table-row > strong:last-child { display:block; align-self:end; white-space:nowrap; }
.metric-line { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 12px; color:#e9eef4; font-size:13px; }
.metric-line span { padding:6px 10px; border-radius:999px; background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.08); }
.case-grid { display:grid; grid-template-columns: repeat(12, 1fr); gap: 18px; }
.case-card { grid-column: span 4; }
.case-card.wide { grid-column: span 8; }
.photo-grid { display:grid; grid-template-columns: repeat(12,1fr); gap: 16px; }
.photo-card { grid-column: span 4; border-radius:24px; overflow:hidden; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.03); box-shadow: var(--shadow); }
.photo-card.large { grid-column: span 6; }
.photo-card img { width:100%; height:100%; display:block; object-fit:cover; aspect-ratio: 4 / 3; }
.photo-caption { padding: 14px 16px 16px; }
.photo-caption h3, .photo-caption h4 { margin:0 0 8px; font-size: clamp(18px,1.8vw,24px); line-height:1.15; }
.photo-caption p { margin:0; color:var(--muted); line-height:1.65; }
.schema-grid { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:18px; }
.schema-card { border-radius:24px; overflow:hidden; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.03); box-shadow: var(--shadow); }
.schema-card img { width:100%; aspect-ratio: 16/10; object-fit:cover; background:#fff; }
.schema-card .photo-caption { min-height: 150px; }
.case-head { display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin-bottom: 18px; }
.case-meta { display:flex; flex-wrap:wrap; gap:10px; }
.case-meta span { padding:8px 12px; border-radius:999px; border:1px solid rgba(255,255,255,.09); background:rgba(255,255,255,.04); color:#dfe7ef; font-size:13px; }
.anchor-grid { display:grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; }
.anchor-card { padding: 22px; border-radius: 24px; border:1px solid rgba(255,255,255,.08); background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)); box-shadow: var(--shadow); }
.anchor-card h3 { margin:0 0 10px; font-size: clamp(22px,2vw,28px); line-height:1.1; }
.anchor-card p { margin:0 0 16px; color: var(--muted); line-height:1.7; }
.anchor-card .btn-secondary, .anchor-card .btn { width: fit-content; }
@media (max-width: 980px) {
  .case-card, .case-card.wide, .photo-card, .photo-card.large { grid-column: span 12; }
  .schema-grid, .anchor-grid { grid-template-columns: 1fr; }
}
@media (max-width: 780px) {
  .table-row { grid-template-columns: 1fr; }
  .table-row > strong:last-child { justify-self:start; }
  .metric-line { gap:6px; }
}



html, body { overflow-x: hidden; }
p, li, .table-row > div > span, .portfolio-content p, .photo-caption p { word-break: normal; overflow-wrap: break-word; }
h1, h2, h3, .table-row > div > strong, .stat-box strong, .process-card h3, .portfolio-content h3 { word-break: normal; overflow-wrap: normal; hyphens: none; }
.hero-copy p, .page-hero .copy p, .section-title p, .card p, .footer p { max-width: 62ch; }
.table-row > strong:last-child { font-weight: 700; }
.footer-contacts .contact-row strong { min-width: 82px; }
.footer-contacts .contact-row a { text-decoration: none; border-bottom: 1px solid rgba(255,255,255,.16); }
.footer-contacts .contact-row a:hover { color:#fff; border-color: rgba(255,255,255,.32); }
@media (max-width: 780px) { .hero-copy p, .page-hero .copy p, .section-title p, .card p, .footer p { max-width: 100%; } .point-card, .stat-box, .table-row, .card, .anchor-card { padding-left: 16px; padding-right: 16px; } }



.compact-rubrics-section .section-title h2 { max-width: 14ch; }
.compact-rubrics-section .portfolio-item { min-height: 360px; }
.portfolio-item.no-media {
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  box-shadow: var(--shadow);
}
.portfolio-item.no-media::after {
  background: linear-gradient(180deg, rgba(8,11,14,.10), rgba(8,11,14,.28) 50%, rgba(8,11,14,.88) 100%);
}
.portfolio-item.no-media .portfolio-content p { max-width: 36ch; }
.lightbox-backdrop {
  position: fixed; inset: 0; z-index: 9999; background: rgba(6, 8, 12, 0.92);
  display: none; align-items: center; justify-content: center; padding: 24px;
}
.lightbox-backdrop.open { display: flex; }
.lightbox-shell {
  position: relative; width: min(96vw, 1440px); height: min(92vh, 980px);
  display: flex; align-items: center; justify-content: center;
}
.lightbox-image {
  max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain;
  border-radius: 18px; box-shadow: 0 24px 80px rgba(0,0,0,.42);
}
.lightbox-close, .lightbox-prev, .lightbox-next {
  position: absolute; border: 1px solid rgba(255,255,255,.16); background: rgba(12,16,22,.78); color: #fff;
  width: 48px; height: 48px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center;
  cursor: pointer; backdrop-filter: blur(10px);
}
.lightbox-close { top: 12px; right: 12px; }
.lightbox-prev { left: 12px; top: calc(50% - 24px); }
.lightbox-next { right: 12px; top: calc(50% - 24px); }
.lightbox-caption {
  position: absolute; left: 24px; right: 24px; bottom: 16px; padding: 12px 16px;
  border-radius: 16px; background: rgba(12,16,22,.72); border: 1px solid rgba(255,255,255,.08);
  color: #dbe5ee; line-height: 1.5; font-size: 14px;
}
[data-lightbox-group] { cursor: zoom-in; }
html.lightbox-open, body.lightbox-open { overflow: hidden; }
@media (max-width: 780px) {
  .compact-rubrics-section .portfolio-item { min-height: 320px; }
  .lightbox-backdrop { padding: 12px; }
  .lightbox-shell { width: 100%; height: 100%; }
  .lightbox-prev, .lightbox-next { width: 42px; height: 42px; top: auto; bottom: 72px; }
  .lightbox-prev { left: 16px; }
  .lightbox-next { right: 16px; }
  .lightbox-caption { left: 12px; right: 12px; bottom: 12px; font-size: 13px; }
}

/* SEO/UI fix v133: single navigation DOM for desktop and mobile */
@media (max-width:1080px){
  .desktop-nav.mobile-open{
    display:grid; position:absolute; z-index:120; top:100%; left:12px; right:12px;
    max-height:calc(100vh - 96px); overflow:auto; padding:14px; gap:10px;
    background:rgba(10,14,20,.98); border:1px solid rgba(255,255,255,.10);
    border-radius:18px; box-shadow:0 24px 64px rgba(0,0,0,.42); align-items:stretch; justify-content:stretch;
  }
  .desktop-nav.mobile-open > a,.desktop-nav.mobile-open .nav-trigger{width:100%;min-height:46px;justify-content:flex-start;padding:11px 14px;}
  .desktop-nav.mobile-open .nav-group{display:grid;gap:6px;}
  .desktop-nav.mobile-open .nav-trigger{pointer-events:none;color:var(--accent-2);text-transform:uppercase;letter-spacing:.08em;font-size:11px;}
  .desktop-nav.mobile-open .nav-trigger span{display:none;}
  .desktop-nav.mobile-open .nav-dropdown{position:static;display:grid;opacity:1;pointer-events:auto;transform:none;min-width:0;padding:0 0 0 8px;background:transparent;border:0;box-shadow:none;}
  .desktop-nav.mobile-open .nav-dropdown a{white-space:normal;padding:11px 14px;border-radius:12px;background:rgba(255,255,255,.03);}
}

/* source: related-links-v121.css */
/* TOP174 v121: related links integration. Safe add-on, no form/backend changes. */
.nav-dropdown,
.drop-menu{
  max-height:min(72vh,560px);
  overflow:auto;
  scrollbar-width:thin;
}
.nav-dropdown a,
.drop-menu a{white-space:nowrap;}
.related-v121-service-links{padding-top:0;}
.related-v121-link-cloud{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:20px;
}
.related-v121-link-cloud a{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  padding:10px 14px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:999px;
  background:rgba(255,255,255,.045);
  color:#f3f5f7;
  font-weight:800;
  text-decoration:none;
}
.related-v121-link-cloud a:hover{
  border-color:rgba(242,122,26,.62);
  color:#ffb15b;
  background:rgba(242,122,26,.12);
}
.related-v121-related-links{padding-top:38px;}
@media (max-width: 780px){
  .related-v121-link-cloud a{width:100%;justify-content:center;}
  .nav-dropdown,.drop-menu{max-height:none;}
}

/* source: commercial-blocks-v121.css */
/* TOP174 v121: commercial blocks. Safe add-on, no backend/form changes. */
.commercial-v121-commercial{position:relative;overflow:hidden;background:linear-gradient(180deg,rgba(12,18,25,.78),rgba(6,10,15,.96));}
.commercial-v121-commercial:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 14% 12%,rgba(242,118,22,.14),transparent 32%),radial-gradient(circle at 86% 70%,rgba(255,191,102,.07),transparent 30%);pointer-events:none;}
.commercial-v121-commercial .container{position:relative;z-index:1;}
.commercial-v121-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,420px);gap:clamp(18px,4vw,44px);align-items:end;margin-bottom:28px;}
.commercial-v121-head .section-title{margin:0;}
.commercial-v121-head .section-title h2{max-width:19ch;}
.commercial-v121-note{border:1px solid rgba(242,118,22,.24);background:linear-gradient(180deg,rgba(242,118,22,.12),rgba(255,255,255,.035));border-radius:24px;padding:18px 20px;color:#d9e3ed;line-height:1.65;box-shadow:inset 0 1px 0 rgba(255,255,255,.045);}
.commercial-v121-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.commercial-v121-card{border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:clamp(20px,2.2vw,28px);background:linear-gradient(180deg,rgba(23,30,39,.9),rgba(12,17,23,.84));box-shadow:0 18px 70px rgba(0,0,0,.30),inset 0 1px 0 rgba(255,255,255,.045);transition:transform .22s ease,border-color .22s ease,background .22s ease;}
.commercial-v121-card:hover{transform:translateY(-2px);border-color:rgba(242,118,22,.30);background:linear-gradient(180deg,rgba(29,37,48,.94),rgba(14,20,28,.88));}
.commercial-v121-card h3{margin:0 0 10px;color:#fff;font-size:clamp(19px,1.45vw,24px);line-height:1.18;letter-spacing:-.02em;}
.commercial-v121-card p{margin:0;color:#c7d3df;line-height:1.68;}
.commercial-v121-card strong{display:inline-flex;width:max-content;max-width:100%;margin-bottom:13px;padding:8px 12px;border-radius:999px;border:1px solid rgba(242,118,22,.30);background:rgba(242,118,22,.10);color:#ffd39a;font-size:14px;line-height:1;}
.commercial-v121-mini{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:18px;}
.commercial-v121-mini span{display:flex;align-items:center;min-height:48px;padding:11px 13px;border-radius:18px;border:1px solid rgba(255,255,255,.11);background:rgba(255,255,255,.045);color:#e8f0f8;font-weight:800;line-height:1.35;}
.commercial-v121-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;}
.commercial-v121-actions .btn-secondary{min-height:48px;display:inline-flex;align-items:center;justify-content:center;}
@media(max-width:980px){.commercial-v121-head{grid-template-columns:1fr}.commercial-v121-grid{grid-template-columns:1fr 1fr}.commercial-v121-mini{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.commercial-v121-grid,.commercial-v121-mini{grid-template-columns:1fr}.commercial-v121-note{border-radius:20px}.commercial-v121-actions .btn,.commercial-v121-actions .btn-secondary{width:100%;text-align:center}}

/* source: premium-site.v98-newstyle.css */
/* TOP174 v98: newstyle + no-crop hero media */
body {
  background:
    radial-gradient(circle at 16% 10%, rgba(242, 118, 22, .12), transparent 28%),
    radial-gradient(circle at 86% 8%, rgba(255, 191, 102, .07), transparent 25%),
    linear-gradient(180deg, #05070a 0%, #0b0f14 34%, #0a1118 65%, #05070a 100%);
}
body::before {
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background:
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.018) 1px, transparent 1px);
  background-size: 96px 96px;
  mask-image: linear-gradient(180deg, rgba(0,0,0,.45), transparent 62%);
}
.topbar {
  background: rgba(5, 7, 10, .86);
  border-bottom: 1px solid rgba(255,255,255,.09);
  box-shadow: 0 12px 34px rgba(0,0,0,.28);
}
.nav-wrap { min-height: 84px; }
.page-hero {
  position:relative;
  overflow:hidden;
  padding: clamp(62px, 8vw, 106px) 0 clamp(46px, 5vw, 72px);
  border-bottom: 1px solid rgba(255,255,255,.075);
}
.page-hero::before {
  content:"";
  position:absolute;
  inset:-18% -12% auto 45%;
  height: 560px;
  background: radial-gradient(circle, rgba(242,118,22,.16), transparent 62%);
  filter: blur(12px);
  pointer-events:none;
}
.page-hero-grid {
  gap: clamp(30px, 5vw, 72px);
  align-items:center;
}
.page-hero .copy { gap: 20px; }
.page-hero .copy h1 {
  max-width: 13ch;
  font-size: clamp(40px, 4.9vw, 72px);
  line-height: .96;
  letter-spacing: -.055em;
}
.page-hero .copy p {
  max-width: 62ch;
  color:#d6e0ea;
  font-size: clamp(16px, 1.25vw, 19px);
}
.page-hero-grid .media {
  position:relative;
  min-height: clamp(360px, 35vw, 540px);
  border-radius: 34px;
  background: linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
  box-shadow: 0 26px 90px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.06);
  isolation:isolate;
}
.page-hero-grid .media::after {
  content:"";
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(5,7,10,.04), rgba(5,7,10,.22) 62%, rgba(5,7,10,.48)),
    radial-gradient(circle at 20% 82%, rgba(242,118,22,.2), transparent 45%);
  z-index:2;
  pointer-events:none;
}
.page-hero-grid .media img { filter: saturate(1.05) contrast(1.04); }
.kicker {
  width:max-content;
  max-width:100%;
  border-color: rgba(242,118,22,.38);
  background: linear-gradient(135deg, rgba(242,118,22,.18), rgba(255,255,255,.035));
  color:#ffd39a;
  font-weight:800;
}
.kicker::before { background:#f47616; box-shadow:0 0 0 8px rgba(242,118,22,.12); }
.badge {
  background: rgba(255,255,255,.045);
  border-color: rgba(255,255,255,.12);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.045);
}
.section {
  position:relative;
  padding: clamp(70px, 7vw, 104px) 0;
  border-top:1px solid rgba(255,255,255,.065);
}
.section:nth-of-type(even) {
  background: linear-gradient(180deg, rgba(12,18,25,.66), rgba(8,12,17,.34));
}
.section-title span {
  display:inline-flex;
  width:max-content;
  padding: 9px 13px;
  border-radius:999px;
  background: rgba(242,118,22,.12);
  border:1px solid rgba(242,118,22,.28);
  color:#ffc27e;
  letter-spacing:0;
  text-transform:none;
  font-size:13px;
  font-weight:800;
}
.section-title h2 {
  max-width: 16ch;
  font-size: clamp(34px, 4.2vw, 58px);
  line-height: .98;
  letter-spacing: -.05em;
}
.section-title p { color:#bcc9d7; font-size:16px; }
.card,
.stat-box,
.process-card,
.table-row,
.faq details,
.anchor-card,
.photo-card {
  background: linear-gradient(180deg, rgba(23,30,39,.86), rgba(12,17,23,.78));
  border-color: rgba(255,255,255,.12);
  box-shadow: 0 18px 70px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.045);
}
.card:hover,
.stat-box:hover,
.process-card:hover,
.table-row:hover,
.faq details:hover,
.anchor-card:hover,
.photo-card:hover {
  border-color: rgba(242,118,22,.26);
  transform: translateY(-1px);
}
.card,
.stat-box,
.process-card,
.table-row,
.faq details,
.anchor-card,
.photo-card { transition: transform .22s ease, border-color .22s ease, background .22s ease; }
.table-row {
  min-height:64px;
  align-items:center;
  border-radius:20px;
}
.table-row strong:first-child::before,
.card ul li::marker { color:#f47616; }
.stats-stack { gap: 18px; }
.stat-box strong { color:#fff; }
.stat-box strong::first-letter { color:#ffbf66; }
.cta-band {
  display:none;
}
.lead-section {
  padding: clamp(78px, 8vw, 118px) 0;
  background:
    radial-gradient(circle at 8% 18%, rgba(242,118,22,.18), transparent 32%),
    linear-gradient(90deg, rgba(43,24,15,.82), rgba(8,15,22,.9) 52%, rgba(5,8,12,.98));
  border-top: 1px solid rgba(255,255,255,.09);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.lead-layout {
  display:grid;
  grid-template-columns: minmax(0, .9fr) minmax(420px, 1fr);
  gap: clamp(28px, 5vw, 72px);
  align-items:center;
}
.lead-copy {
  display:flex;
  flex-direction:column;
  gap: 18px;
}
.lead-copy h2 {
  margin:0;
  max-width: 13ch;
  font-size: clamp(38px, 4.6vw, 66px);
  line-height:.96;
  letter-spacing:-.055em;
}
.lead-copy p {
  margin:0;
  max-width: 58ch;
  color:#cdd8e4;
  font-size:16px;
  line-height:1.72;
}
.lead-form-card {
  padding: clamp(22px, 3vw, 34px);
  border-radius: 34px;
  background: linear-gradient(180deg, rgba(25,32,41,.96), rgba(14,20,28,.94));
}
.lead-form-card .form-grid { gap: 16px; }
.lead-form-card .field label {
  font-weight:800;
  color:#e8f0f8;
}
.lead-form-card .field input,
.lead-form-card .field textarea,
.lead-form-card .field select {
  background: rgba(2,6,10,.62);
  border-color: rgba(255,255,255,.12);
}
.lead-form-card button.btn {
  width:100%;
  min-height:56px;
  background: linear-gradient(135deg, #ff7a1a 0%, #d95c08 100%);
  color:#fff;
  box-shadow: 0 20px 50px rgba(242,118,22,.28);
}
.related-v121-related-links .anchor-grid,
.anchor-grid {
  gap: 14px;
}
.anchor-card {
  border-radius: 22px;
}
.photo-grid {
  gap: 18px;
}
.photo-card {
  border-radius: 28px;
  overflow:hidden;
}
.photo-card img { min-height:260px; object-fit:cover; }
.photo-caption {
  background: linear-gradient(180deg, rgba(6,9,13,.38), rgba(6,9,13,.86));
}
@media (max-width:1080px) {
  .lead-layout { grid-template-columns:1fr; }
  .lead-form-card { max-width: 760px; width:100%; }
  .page-hero-grid .media { min-height: 420px; }
}
@media (max-width:780px) {
  .page-hero { padding-top: 38px; }
  .page-hero .copy h1, .lead-copy h2, .section-title h2 { max-width:none; }
  .page-hero-grid .media { min-height: 300px; border-radius:24px; }
  .lead-section { padding: 58px 0; }
  .lead-copy .badge-row .badge { width:100%; justify-content:center; text-align:center; }
  .lead-form-card { border-radius:24px; padding:18px; }
  .section-title span { font-size:12px; }
}


/* TOP174 v97 hotfix: compact visible cards for service-grid sections */
.service-grid {
  display:grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  margin-top: 34px;
}
.service-grid > .service-card {
  display:flex !important;
  flex-direction:column;
  gap: 12px;
  min-height: 0 !important;
  padding: clamp(20px, 2.2vw, 28px);
  border-radius: 28px;
  border: 1px solid rgba(255,255,255,.12);
  background: linear-gradient(180deg, rgba(23,30,39,.88), rgba(12,17,23,.82));
  box-shadow: 0 18px 70px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.045);
  transition: transform .22s ease, border-color .22s ease, background .22s ease;
}
.service-grid > .service-card:hover {
  transform: translateY(-2px);
  border-color: rgba(242,118,22,.30);
  background: linear-gradient(180deg, rgba(29,37,48,.92), rgba(14,20,28,.86));
}
.service-grid > .service-card h3 {
  margin:0;
  color:#fff;
  font-size: clamp(19px, 1.45vw, 24px);
  line-height:1.18;
  letter-spacing:-.02em;
}
.service-grid > .service-card p {
  margin:0;
  color:#c7d3df;
  line-height:1.68;
  max-width: 62ch;
}
.service-grid > .service-card strong {
  margin-top:auto;
  display:inline-flex;
  width:max-content;
  max-width:100%;
  padding: 8px 12px;
  border-radius:999px;
  border:1px solid rgba(242,118,22,.30);
  background: rgba(242,118,22,.10);
  color:#ffd39a;
  font-size:14px;
  line-height:1;
}
@media (max-width: 980px) {
  .service-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .service-grid { grid-template-columns: 1fr; margin-top: 24px; }
  .service-grid > .service-card { border-radius:22px; }
}


/* v98: фото в hero-блоках не обрезаем. Показываем изделие целиком. */
.page-hero-grid .media {
  min-height: 0;
  aspect-ratio: 16 / 11;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 86%, rgba(242,118,22,.12), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.018)),
    #080c12;
}
.page-hero-grid .media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: center center;
  background: #080c12;
}
.page-hero-grid .media::after {
  background:
    linear-gradient(180deg, rgba(5,7,10,.02), rgba(5,7,10,.10) 68%, rgba(5,7,10,.18)),
    radial-gradient(circle at 18% 86%, rgba(242,118,22,.12), transparent 42%);
}
@media (max-width: 1080px) {
  .page-hero-grid .media { min-height: 0; aspect-ratio: 16 / 11; }
}
@media (max-width: 780px) {
  .page-hero-grid .media { min-height: 0; aspect-ratio: 4 / 3; }
}

/* Если на конкретной странице нужен кинематографичный фон с кадрированием — можно добавить class="media is-cover". */
.page-hero-grid .media.is-cover img { object-fit: cover; }

/* source: media-nocrop.v99.css */
/* TOP174 v99: единое правило — реальные фото и карточки показываем без обрезки */

/* Внутренние страницы: hero, галереи, карточки, схемы, портфолио */
main .page-hero-grid .media img,
main .photo-card img,
main .portfolio-item img,
main .schema-card img,
main .service-media img,
main .opory-gallery-card img,
main .card > img,
main .photo-grid img,
main .schema-grid img,
main [data-lightbox-group] {
  object-fit: contain !important;
  object-position: center center !important;
  background: #080c12;
}

/* Фон контейнеров, чтобы при contain не было белых/рваных пустот */
main .page-hero-grid .media,
main .photo-card,
main .portfolio-item,
main .schema-card,
main .service-media,
main .opory-gallery-card,
main .card:has(> img) {
  background:
    radial-gradient(circle at 18% 86%, rgba(242,118,22,.10), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.016)),
    #080c12;
}

/* Галереи: не режем вертикальные и горизонтальные фото, но держим аккуратную высоту */
main .photo-card {
  display:flex;
  flex-direction:column;
}
main .photo-card img,
main .schema-card img {
  width:100% !important;
  height:auto !important;
  max-height: 560px;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  display:block;
}
main .photo-card.large img {
  max-height: 620px;
}

/* Карточки портфолио: изображение остается фоном карточки, но целиком */
main .portfolio-item img {
  padding: 10px;
  box-sizing: border-box;
}

/* Скользящие опоры: горизонтальная галерея без кадрирования */
main .opory-gallery-card {
  min-height: 360px;
  display:flex;
  align-items:center;
  justify-content:center;
}
main .opory-gallery-card img {
  width:100% !important;
  height:100% !important;
  min-height: 0 !important;
  padding: 8px;
  box-sizing:border-box;
}
main .opory-gallery-card:hover img {
  transform: none !important;
}

/* Главная: карточки направлений без обрезания изделий */
.service-card .card-image,
.direction-card,
.direction-card .image,
.metal-card .card-image {
  background:#080c12;
}
.service-card .card-image img,
.direction-card img,
.metal-card .card-image img {
  width:100% !important;
  height:auto !important;
  max-height: 220px;
  object-fit: contain !important;
  object-position:center center !important;
  background:#080c12;
}

/* Мобильная версия: не возвращаем cover через старые media-правила */
@media (max-width: 780px) {
  main .page-hero-grid .media img,
  main .photo-card img,
  main .portfolio-item img,
  main .schema-card img,
  main .service-media img,
  main .opory-gallery-card img,
  .service-card .card-image img,
  .direction-card img,
  .metal-card .card-image img {
    object-fit: contain !important;
  }
}

/* source: top174-content-v121.css */
/* TOP174 UX/content усиление v121: коммерческие блоки, доказательства производства, мобильная читабельность */
.proof-v120{position:relative;background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.00))}
.proof-v120 .proof-v120-head{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:22px;align-items:end;margin-bottom:22px}
.proof-v120 .proof-v120-note{border:1px solid rgba(255,138,45,.28);background:linear-gradient(135deg,rgba(255,138,45,.10),rgba(255,255,255,.035));border-radius:22px;padding:18px;color:rgba(255,255,255,.82);box-shadow:0 18px 50px rgba(0,0,0,.22)}
.proof-v120 .proof-v120-note strong{display:block;color:#fff;margin-bottom:6px;font-size:18px}.proof-v120-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.proof-v120-card{overflow:hidden;border-radius:24px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.10);box-shadow:0 20px 70px rgba(0,0,0,.22)}.proof-v120-card img{width:100%;height:220px;object-fit:cover;display:block;filter:saturate(.96) contrast(1.04)}.proof-v120-card div{padding:16px}.proof-v120-card strong{display:block;color:#fff;font-size:18px;margin-bottom:6px}.proof-v120-card p{margin:0;color:rgba(255,255,255,.72);line-height:1.55}.proof-v120-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.proof-v120-facts span{border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);border-radius:999px;padding:10px 13px;color:rgba(255,255,255,.78);font-size:14px;text-align:center}.intent-v120{background:radial-gradient(circle at 20% 0,rgba(255,138,45,.12),transparent 38%),rgba(0,0,0,.12)}.intent-v120 .intent-v120-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;align-items:stretch}.intent-v120 .intent-v120-panel{border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);border-radius:24px;padding:22px;box-shadow:0 18px 55px rgba(0,0,0,.18)}.intent-v120 .intent-v120-panel h2{margin-top:0}.intent-v120 .intent-v120-list{display:grid;gap:10px}.intent-v120 .intent-v120-item{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;border-bottom:1px solid rgba(255,255,255,.08);padding:0 0 10px}.intent-v120 .intent-v120-item:last-child{border-bottom:0;padding-bottom:0}.intent-v120 .intent-v120-item span{color:rgba(255,255,255,.72)}.intent-v120 .intent-v120-item b{color:#fff;text-align:right;white-space:nowrap}.intent-v120 .intent-v120-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.intent-v120 .intent-v120-mini{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.intent-v120 .intent-v120-mini a,.intent-v120 .intent-v120-mini span{border:1px solid rgba(255,138,45,.25);background:rgba(255,138,45,.08);color:rgba(255,255,255,.84);border-radius:999px;padding:8px 11px;text-decoration:none}@media (max-width:900px){.proof-v120 .proof-v120-head,.intent-v120 .intent-v120-grid{grid-template-columns:1fr}.proof-v120-grid{grid-template-columns:1fr}.proof-v120-card img{height:210px}.proof-v120-facts{grid-template-columns:1fr 1fr}.intent-v120 .intent-v120-item{display:block}.intent-v120 .intent-v120-item b{display:block;text-align:left;margin-top:4px}.intent-v120 .intent-v120-actions .btn,.intent-v120 .intent-v120-actions .btn-secondary{width:100%;justify-content:center;text-align:center}}@media (max-width:520px){.proof-v120-facts{grid-template-columns:1fr}.proof-v120 .proof-v120-note,.intent-v120 .intent-v120-panel{border-radius:18px;padding:16px}.proof-v120-card{border-radius:18px}.proof-v120-card img{height:190px}}

/* source: top174-final-v121.css */
/* TOP174 v121 final polish: images fill frames, cleaner UX, conversion blocks */

main .page-hero-grid .media,
main .photo-card,
main .portfolio-item,
main .schema-card,
main .service-media,
main .opory-gallery-card,
main .card:has(> img),
.service-card .card-image,
.direction-card,
.direction-card .image,
.metal-card .card-image,
.proof-v120-card{
  background:#080c12;
  overflow:hidden;
}

main .page-hero-grid .media img,
main .photo-card img,
main .portfolio-item img,
main .schema-card img,
main .service-media img,
main .card > img,
main .photo-grid img,
main .schema-grid img,
main [data-lightbox-group],
.service-card .card-image img,
.direction-card img,
.metal-card .card-image img,
.proof-v120-card img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center !important;
  padding:0 !important;
  background:transparent !important;
}

main .opory-gallery-card img{
  object-fit:cover !important;
  padding:0 !important;
}

.service-card .card-image img,
.metal-card .card-image img{
  min-height:220px;
  max-height:none !important;
}

.proof-v120-card img{
  display:block;
  aspect-ratio:16 / 10;
}

.related-v121-related-links .section-title p,
.proof-v120-note,
.commercial-v121-note{
  color:#c7d2df;
}

.section-title p,
.card p,
.table-row span,
.faq p,
.lead-copy p{
  max-width:72ch;
}

.table-list{
  gap:10px;
}

.table-row{
  align-items:center;
}

@media (max-width:780px){
  .service-card .card-image img,
  .metal-card .card-image img{
    min-height:176px;
  }
  main .page-hero-grid .media{
    min-height:260px;
  }
  main .page-hero-grid .media img,
  .proof-v120-card img{
    object-fit:cover !important;
  }
}

/* source: top174-service-visuals-v122.css */

.media-example{position:relative;display:block;margin:0}
.media-example img{display:block;width:100%;height:auto}
.media-example figcaption{position:absolute;left:18px;bottom:18px;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:999px;background:rgba(16,18,22,.74);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);color:#f3f4f6;font-size:13px;font-weight:600;letter-spacing:.02em;box-shadow:0 16px 36px rgba(0,0,0,.28)}
.media-example figcaption::before{content:"";width:8px;height:8px;border-radius:50%;background:#ff7a18;box-shadow:0 0 0 4px rgba(255,122,24,.18)}
.service-card.visual-card .card-image{position:relative}
.service-card.visual-card .card-image::after{content:"Под заказ";position:absolute;left:14px;bottom:14px;padding:8px 12px;border-radius:999px;background:rgba(16,18,22,.74);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(10px);color:#f3f4f6;font-size:12px;font-weight:600;letter-spacing:.02em;box-shadow:0 12px 30px rgba(0,0,0,.24)}
.section-note-inline{margin-top:18px;text-align:center;color:#98a2b3;font-size:14px;line-height:1.6}
.section-note-inline strong{color:#f5f5f6}

/* source: top174-commercial-sprint-v130.css */

/* TOP174 commercial sprint v130: SEO landing pages + stronger conversion blocks */
.commercial-sprint{position:relative;overflow:hidden;background:linear-gradient(135deg,#080b10 0%,#111822 48%,#080b10 100%);border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.commercial-sprint .container,.commercial-sprint .shell{position:relative;z-index:2}
.commercial-sprint::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 10%,rgba(242,113,28,.20),transparent 28%),radial-gradient(circle at 85% 75%,rgba(255,255,255,.08),transparent 30%);pointer-events:none}
.sprint-panel{border:1px solid rgba(255,255,255,.12);background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));box-shadow:0 28px 90px rgba(0,0,0,.42);border-radius:28px;padding:34px;backdrop-filter:blur(10px)}
.sprint-kicker{display:inline-flex;gap:8px;align-items:center;padding:7px 12px;border-radius:999px;background:rgba(242,113,28,.13);border:1px solid rgba(242,113,28,.35);color:#ffb476;font-weight:800;letter-spacing:.04em;text-transform:uppercase;font-size:12px;margin-bottom:14px}
.sprint-title{font-size:clamp(28px,4vw,52px);line-height:1.04;margin:0 0 14px;color:#fff;letter-spacing:-.04em}
.sprint-lead{font-size:clamp(16px,2vw,20px);line-height:1.65;color:rgba(232,239,247,.82);max-width:920px;margin:0 0 24px}
.sprint-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.sprint-card{grid-column:span 4;border:1px solid rgba(255,255,255,.11);border-radius:22px;background:rgba(7,11,17,.76);padding:22px;min-height:100%;box-shadow:0 18px 46px rgba(0,0,0,.22)}
.sprint-card h3{margin:0 0 10px;color:#fff;font-size:21px}.sprint-card p,.sprint-card li{color:rgba(229,237,246,.76);line-height:1.62}.sprint-card strong{display:block;color:#ffb476;margin-bottom:8px;font-size:14px;text-transform:uppercase;letter-spacing:.04em}.sprint-card ul{margin:0;padding-left:18px;display:grid;gap:8px}
.sprint-card.wide{grid-column:span 6}.sprint-card.full{grid-column:1/-1}.sprint-card.accent{background:linear-gradient(135deg,rgba(242,113,28,.17),rgba(7,11,17,.82));border-color:rgba(242,113,28,.35)}
.sprint-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.sprint-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border-radius:999px;border:1px solid rgba(255,255,255,.16);color:#fff;text-decoration:none;font-weight:800;background:rgba(255,255,255,.06)}.sprint-btn.primary{background:linear-gradient(135deg,#ff8a2a,#ff5c00);border-color:rgba(255,138,42,.5);box-shadow:0 14px 34px rgba(255,92,0,.24)}
.sprint-steps{counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.sprint-step{position:relative;border:1px solid rgba(255,255,255,.12);border-radius:20px;background:rgba(255,255,255,.045);padding:20px}.sprint-step::before{counter-increment:step;content:counter(step,decimal-leading-zero);display:block;color:#ffb476;font-weight:900;margin-bottom:10px}.sprint-step h3{margin:0 0 8px;color:#fff}.sprint-step p{margin:0;color:rgba(229,237,246,.75);line-height:1.55}
.sprint-mini-form{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:18px}.sprint-mini-form span{display:block;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px;background:rgba(0,0,0,.18);color:rgba(255,255,255,.78);font-size:14px}.sprint-mini-form strong{color:#fff;display:block;margin-bottom:4px}
.sprint-link-cloud{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.sprint-link-cloud a{display:inline-flex;padding:10px 14px;border-radius:999px;text-decoration:none;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);color:#e8f0f8;font-weight:700}.sprint-link-cloud a:hover{border-color:rgba(242,113,28,.5);color:#fff}
.sprint-proof-line{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}.sprint-proof-line div{border-left:3px solid #ff7a1a;padding:12px 14px;background:rgba(255,255,255,.04);border-radius:14px}.sprint-proof-line strong{display:block;color:#fff}.sprint-proof-line span{color:rgba(229,237,246,.72);font-size:14px}
.sprint-object-row{display:grid;grid-template-columns:1.1fr .9fr;gap:22px;align-items:center}.sprint-object-row img{width:100%;height:auto;max-height:440px;object-fit:cover;border-radius:24px;border:1px solid rgba(255,255,255,.12);box-shadow:0 20px 54px rgba(0,0,0,.35)}
@media (max-width:980px){.sprint-card,.sprint-card.wide{grid-column:1/-1}.sprint-steps,.sprint-proof-line{grid-template-columns:1fr 1fr}.sprint-mini-form{grid-template-columns:1fr 1fr}.sprint-object-row{grid-template-columns:1fr}.sprint-panel{padding:24px}}
@media (max-width:640px){.sprint-steps,.sprint-proof-line,.sprint-mini-form{grid-template-columns:1fr}.sprint-panel{padding:20px;border-radius:22px}.sprint-title{letter-spacing:-.03em}}

/* source: top174-product-ui-v140.css */
/* TOP174 v140 — product UI system and semantic polish */
:root{
  --ui-accent:#f28a2e;
  --ui-accent-soft:rgba(242,138,46,.14);
  --ui-surface:#0b1118;
  --ui-surface-2:#101821;
  --ui-border:rgba(255,255,255,.10);
  --ui-border-strong:rgba(255,255,255,.16);
  --ui-text:#f5f7fa;
  --ui-muted:#aeb9c6;
  --ui-radius:20px;
  --ui-shadow:0 20px 60px rgba(0,0,0,.25);
  --ui-section:clamp(58px,7vw,96px);
}
html{scroll-behavior:smooth}
body{text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}
.container,.shell{width:min(calc(100% - 32px),1240px);margin-inline:auto}
.section,.content-band{padding-block:var(--ui-section)}
.section-title,.section-title-wrap{margin-bottom:clamp(22px,3vw,34px)}
.section-title>span,.section-title-wrap .eyebrow,.sprint-kicker,.kicker{
  letter-spacing:.07em;text-transform:uppercase;font-weight:800;font-size:12px
}
.section-title h2,.section-title-wrap h2{letter-spacing:-.035em;text-wrap:balance}
.section-title p,.section-title-wrap p,.page-hero .copy>p{max-width:72ch;color:var(--ui-muted);line-height:1.7}
.page-hero-grid{gap:clamp(26px,5vw,64px);align-items:center}
.page-hero h1{font-size:clamp(34px,5vw,66px);line-height:1.03;letter-spacing:-.045em;text-wrap:balance}
.page-hero-grid .media,.media-example{border-radius:clamp(18px,2vw,28px);overflow:hidden;border:1px solid var(--ui-border);box-shadow:var(--ui-shadow)}
.hero-actions,.commercial-v121-actions,.intent-v120-actions,.sprint-actions{gap:12px;align-items:center}
.btn,.btn-secondary,.sprint-btn{min-height:46px;border-radius:13px;font-weight:800;transition:transform .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
@media(hover:hover){.btn:hover,.btn-secondary:hover,.sprint-btn:hover{transform:translateY(-2px)}}

/* Consistent product cards */
.service-grid,.commercial-v121-grid,.proof-v120-grid,.anchor-grid{gap:clamp(14px,1.8vw,22px)}
.service-card,.commercial-v121-card,.proof-v120-card,.anchor-card,.card{
  border-radius:var(--ui-radius);border-color:var(--ui-border);box-shadow:0 1px 0 rgba(255,255,255,.025) inset
}
.service-card,.commercial-v121-card,.anchor-card{height:100%;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
@media(hover:hover){
  .service-card:hover,.commercial-v121-card:hover,.anchor-card:hover{
    transform:translateY(-4px);border-color:rgba(242,138,46,.32);box-shadow:0 22px 54px rgba(0,0,0,.22)
  }
}
.commercial-v121-card>strong{display:inline-flex;width:max-content;max-width:100%;padding:7px 10px;border-radius:999px;background:var(--ui-accent-soft);color:#ffc08a;font-size:13px}

/* Tables become clear commercial comparison rows */
.table-list{display:grid;gap:10px}
.table-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;padding:17px 18px;border:1px solid var(--ui-border);border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.042),rgba(255,255,255,.018))}
.table-row>div{min-width:0}
.table-row>div>strong{display:block;color:var(--ui-text);font-size:16px;margin-bottom:5px}
.table-row>div>span{display:block;color:var(--ui-muted);line-height:1.55}
.table-row>strong{display:inline-flex;align-items:center;justify-content:center;text-align:center;min-height:36px;padding:8px 11px;border-radius:999px;background:var(--ui-accent-soft);color:#ffc08a;white-space:nowrap;font-size:14px}

/* Notes must be semantic and readable, not glued text */
.proof-v120-note,.commercial-v121-note{border-radius:17px;padding:17px 18px;line-height:1.55}
.proof-v120-note>strong,.commercial-v121-note>strong{display:block;margin-bottom:7px;color:#fff}
.proof-v120-note>p,.commercial-v121-note>p{margin:0;color:var(--ui-muted);line-height:1.6}

/* Image previews: consistent geometry, originals remain available in lightbox */
.proof-v120-card{overflow:hidden;background:var(--ui-surface)}
.proof-v120-card img{display:block;width:100%!important;height:auto!important;aspect-ratio:16/10;object-fit:contain!important;background:#080d13;padding:8px;box-sizing:border-box}
.proof-v120-card>div{padding:17px 18px 19px}
.proof-v120-card>div>strong{font-size:17px;letter-spacing:-.015em}
.proof-v120-card>div>p{color:var(--ui-muted);line-height:1.6}

/* Homepage work gallery */
.home-case-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:clamp(15px,1.6vw,22px)!important;align-items:stretch}
.home-case-card{position:relative;display:flex!important;flex-direction:column;min-width:0;height:100%;overflow:hidden;border:1px solid var(--ui-border)!important;border-radius:22px!important;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018)),var(--ui-surface)!important;box-shadow:0 18px 48px rgba(0,0,0,.22);transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease}
.home-case-card>img{display:block;width:100%!important;height:auto!important;aspect-ratio:16/10;object-fit:cover!important;background:#080d13;border-bottom:1px solid rgba(255,255,255,.08)}
.home-case-content{display:grid;gap:8px;padding:18px 19px 20px;flex:1}
.home-case-content h3{margin:0;color:#fff;font-size:19px;line-height:1.25;letter-spacing:-.025em}
.home-case-content p{margin:0;line-height:1.55}
.home-case-desc{color:#d4dde6}
.home-case-meta{color:#aeb9c6;font-size:14px}
.home-case-price{color:#ffc08a;font-weight:800;font-size:15px}
.home-case-note{color:#8f9ba8;font-size:13px;padding-top:6px;border-top:1px solid rgba(255,255,255,.075)}
@media(hover:hover){.home-case-card:hover{transform:translateY(-5px);border-color:rgba(242,138,46,.35)!important;box-shadow:0 28px 66px rgba(0,0,0,.30)}}
.home-cases-cta{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}

/* Compact input blocks on gates and other service pages */
.sprint-mini-form span{display:grid!important;gap:4px;align-content:start}
.sprint-mini-form span strong{display:block}
.sprint-mini-form span small{display:block;color:var(--ui-muted);line-height:1.4;font-size:13px}
.intent-v120-item span{line-height:1.45}
.intent-v120-item b{line-height:1.45}

/* FAQ and lead forms */
.faq{display:grid;gap:10px}
.faq details{border:1px solid var(--ui-border);border-radius:15px;background:rgba(255,255,255,.025);overflow:hidden}
.faq summary{padding:16px 18px;cursor:pointer;font-weight:750}
.faq details p{padding:0 18px 17px;margin:0;color:var(--ui-muted);line-height:1.65}
.lead-form-card,.cta-panel{border-radius:24px!important;border-color:var(--ui-border)!important;box-shadow:var(--ui-shadow)}
.form-grid input,.form-grid textarea,.lead-form input,.lead-form textarea{min-height:48px;border-radius:12px!important}
.form-grid textarea,.lead-form textarea{min-height:118px}

/* Accessibility */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible,[role="button"]:focus-visible{outline:3px solid rgba(242,138,46,.80)!important;outline-offset:3px!important}

@media(max-width:980px){
  .home-case-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .table-row{grid-template-columns:1fr;gap:12px}
  .table-row>strong{justify-self:start}
}
@media(max-width:640px){
  :root{--ui-section:52px;--ui-radius:17px}
  .container,.shell{width:min(calc(100% - 22px),1240px)}
  .home-case-grid{grid-template-columns:1fr!important}
  .home-case-card>img{aspect-ratio:4/3}
  .home-case-content{padding:16px}
  .page-hero h1{font-size:clamp(31px,10vw,44px)}
  .hero-actions,.commercial-v121-actions,.intent-v120-actions,.sprint-actions{display:grid;grid-template-columns:1fr}
  .hero-actions .btn,.hero-actions .btn-secondary,.commercial-v121-actions a,.intent-v120-actions a,.sprint-actions a{width:100%;justify-content:center;text-align:center}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* TOP174 contact CTA v141 — replaces personal-data web forms with direct contact channels. */
.contact-cta{display:grid;gap:16px;align-content:center}
.contact-cta__title{margin:0;font-size:clamp(20px,2.3vw,28px);line-height:1.15}
.contact-cta__text{margin:0;color:#cbd5df;line-height:1.55}
.contact-cta__actions{display:flex;flex-wrap:wrap;gap:10px}
.contact-cta__actions a{min-height:46px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.contact-cta__meta{margin:0;color:#97a6b5;font-size:13px;line-height:1.5}
@media (max-width:640px){.contact-cta__actions{display:grid;grid-template-columns:1fr}.contact-cta__actions a{width:100%}}

.contact-cta__socials{display:flex;flex-wrap:wrap;gap:10px;margin-top:4px}
.contact-cta__socials a{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;min-height:52px;border-radius:10px}
.contact-cta__socials svg{width:20px;height:20px;fill:currentColor;stroke:none}
@media (max-width:640px){.contact-cta__socials{justify-content:flex-start}.contact-cta__socials a{width:48px;height:48px;min-height:48px}}

/* contact CTA polish v2 */
.contact-cta{gap:18px}
.contact-cta__title{margin:0 0 2px}
.contact-cta__text{max-width:520px}
.contact-cta__socials{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:6px}
.contact-cta__socials a{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;min-height:52px;border-radius:10px;border:1px solid rgba(255,255,255,.14);background:linear-gradient(180deg,rgba(32,33,35,.92),rgba(15,15,16,.97));box-shadow:inset 0 1px 0 rgba(255,255,255,.04);transition:transform .2s ease,filter .2s ease,border-color .2s ease,background .2s ease,box-shadow .2s ease}
.contact-cta__socials a:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.24);filter:brightness(1.06)}
.contact-cta__socials a:focus-visible{outline:2px solid rgba(255,173,71,.85);outline-offset:2px}
.contact-cta__socials svg{width:20px;height:20px;fill:currentColor;stroke:none}
@media (max-width:640px){.contact-cta{gap:14px}.contact-cta__socials{gap:10px}.contact-cta__socials a{width:48px;height:48px;min-height:48px}}

/* road page redesign v142 */
.road-page .section{padding:64px 0}
.road-page .road-hero-v142{padding:44px 0 30px}
.road-page .road-hero-v142 .page-hero-grid{grid-template-columns:minmax(0,.82fr) minmax(500px,1.18fr);gap:clamp(28px,4vw,58px);align-items:center}
.road-page .road-hero-v142 .copy{gap:18px}
.road-page .road-hero-v142 .copy h1{max-width:13ch;font-size:clamp(38px,4.7vw,66px)}
.road-page .road-hero-v142 .copy>p{font-size:17px;max-width:56ch;color:#c2ccd7}
.road-page .road-hero-v142 .media{min-height:540px;aspect-ratio:auto}
.road-page .road-hero-v142 .media img{width:100%;height:100%;object-fit:cover!important}
.road-hero-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:2px}
.road-hero-facts span{display:flex;flex-direction:column;gap:4px;padding:13px 14px;border:1px solid rgba(255,255,255,.08);border-radius:14px;background:rgba(255,255,255,.035);color:#96a4b4;font-size:12px;line-height:1.4}
.road-hero-facts b{color:#f6f8fb;font-size:14px}
.road-showcase-v142{padding:38px 0 66px}
.road-section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:24px}
.road-section-head>div{max-width:730px}
.road-section-head>div>span,.road-eyebrow{display:block;color:var(--accent-2);text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:700;margin-bottom:10px}
.road-section-head h2,.road-price-panel h2,.road-data-panel h2,.road-use-copy h2,.road-faq-intro h2,.road-contact-copy h2{margin:0;font-size:clamp(30px,3.2vw,48px);line-height:1.05;letter-spacing:-.035em}
.road-section-head>p{margin:0;max-width:44ch;color:var(--muted);line-height:1.65;text-align:right}
.road-showcase-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);grid-template-rows:repeat(2,minmax(0,1fr));gap:16px;min-height:600px}
.road-photo{position:relative;margin:0;overflow:hidden;border-radius:22px;border:1px solid rgba(255,255,255,.09);background:#080c12;box-shadow:0 20px 52px rgba(0,0,0,.22)}
.road-photo-main{grid-row:1 / 3}
.road-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease,filter .35s ease}
.road-photo:hover img{transform:scale(1.015);filter:brightness(1.04)}
.road-photo figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:14px 16px;border-radius:14px;background:rgba(8,12,17,.78);border:1px solid rgba(255,255,255,.09);backdrop-filter:blur(12px);display:flex;flex-direction:column;gap:4px}
.road-photo figcaption strong{font-size:15px}
.road-photo figcaption span{color:#aeb9c5;font-size:12px;line-height:1.45}
.road-order-v142{padding-top:58px!important}
.road-order-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:20px;align-items:stretch}
.road-price-panel,.road-data-panel{padding:clamp(24px,3vw,38px);border:1px solid rgba(255,255,255,.09);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));box-shadow:var(--shadow)}
.road-price-panel>p,.road-data-panel>p{color:var(--muted);line-height:1.7}
.road-price-list{display:grid;margin-top:28px;border-top:1px solid rgba(255,255,255,.08)}
.road-price-list>div{display:flex;justify-content:space-between;gap:18px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.08)}
.road-price-list span{color:#cbd4de}
.road-price-list strong{color:#fff;text-align:right}
.road-data-list{list-style:none;padding:0;margin:26px 0 24px;display:grid;gap:10px}
.road-data-list li{display:grid;grid-template-columns:42px 1fr;gap:12px;align-items:center;padding:13px 14px;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.065)}
.road-data-list li>b{color:var(--accent-2);font-size:12px;letter-spacing:.08em}
.road-data-list li span{display:flex;flex-direction:column;gap:3px}
.road-data-list small{color:var(--muted);font-size:12px;line-height:1.4}
.road-inline-cta{width:100%}
.road-types-v142{padding-top:56px!important}
.road-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.road-type-card{min-height:260px;padding:24px;border-radius:22px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.018));display:flex;flex-direction:column}
.road-type-card>b{color:var(--accent-2);font-size:12px;letter-spacing:.12em}
.road-type-card h3{margin:28px 0 10px;font-size:24px;letter-spacing:-.025em}
.road-type-card p{margin:0;color:var(--muted);line-height:1.65;font-size:14px}
.road-type-card a,.road-type-card>span{margin-top:auto;padding-top:24px;color:#e9eef4;font-size:13px;font-weight:700}
.road-type-card a:hover{color:var(--accent-2)}
.road-use-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:42px;align-items:center}
.road-use-copy>p{color:var(--muted);line-height:1.75;max-width:58ch}
.road-use-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.road-use-tags span{padding:9px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.035);color:#cbd4de;font-size:12px}
.road-process{display:grid;gap:10px}
.road-process-row{display:grid;grid-template-columns:54px 1fr;gap:16px;align-items:center;padding:18px 20px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.028)}
.road-process-row>b{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:rgba(242,155,56,.12);color:var(--accent-2);font-size:13px}
.road-process-row span{display:flex;flex-direction:column;gap:4px}
.road-process-row small{color:var(--muted);line-height:1.45}
.road-faq-grid{display:grid;grid-template-columns:minmax(260px,.38fr) minmax(0,.62fr);gap:54px;align-items:start}
.road-faq-intro{position:sticky;top:112px}
.road-faq-intro>p{color:var(--muted);line-height:1.65}
.road-page .road-faq-v142 .faq{display:grid;gap:10px}
.road-page .road-faq-v142 .faq details{border-radius:16px}
.road-related-v142{padding:6px 0 44px}
.road-related{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:20px 22px;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.road-related>span{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.14em;white-space:nowrap}
.road-related>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px 16px}
.road-related a{color:#dce3ea;font-size:13px}
.road-related a:hover{color:var(--accent-2)}
.road-contact-v142{padding-top:56px!important;padding-bottom:74px!important}
.road-contact-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:22px;align-items:stretch}
.road-contact-copy{padding:34px 10px 34px 0;display:flex;flex-direction:column;justify-content:center;gap:16px}
.road-contact-copy>p{margin:0;color:var(--muted);line-height:1.7;font-size:16px}
.road-contact-note{color:#cbd4de;font-size:13px;padding-top:4px}
.road-contact-v142 .lead-form-card{display:flex;align-items:center;padding:30px}
.road-contact-v142 .contact-cta{width:100%}
@media (max-width:1050px){
  .road-page .road-hero-v142 .page-hero-grid{grid-template-columns:1fr 1fr}
  .road-page .road-hero-v142 .media{min-height:440px}
  .road-type-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:820px){
  .road-page .section{padding:48px 0}
  .road-page .road-hero-v142{padding-top:32px}
  .road-page .road-hero-v142 .page-hero-grid,.road-order-grid,.road-use-grid,.road-faq-grid,.road-contact-grid{grid-template-columns:1fr}
  .road-page .road-hero-v142 .media{min-height:0;aspect-ratio:4/3}
  .road-hero-facts{grid-template-columns:1fr}
  .road-section-head{align-items:start;flex-direction:column;gap:12px}
  .road-section-head>p{text-align:left}
  .road-showcase-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto;min-height:0}
  .road-photo-main{grid-row:auto;grid-column:1/-1;aspect-ratio:16/9}
  .road-photo:not(.road-photo-main){aspect-ratio:4/3}
  .road-faq-intro{position:static}
  .road-related{align-items:flex-start;flex-direction:column}
  .road-related>div{justify-content:flex-start}
  .road-contact-copy{padding-right:0}
}
@media (max-width:560px){
  .road-page .road-hero-v142 .copy h1{font-size:clamp(32px,10vw,42px)}
  .road-page .road-hero-v142 .copy>p{font-size:15px}
  .road-showcase-v142{padding-top:24px;padding-bottom:48px}
  .road-showcase-grid{grid-template-columns:1fr;gap:12px}
  .road-photo-main,.road-photo:not(.road-photo-main){grid-column:auto;aspect-ratio:4/3}
  .road-type-grid{grid-template-columns:1fr}
  .road-type-card{min-height:0}
  .road-price-list>div{flex-direction:column;gap:5px}
  .road-price-list strong{text-align:left}
  .road-contact-v142 .lead-form-card{padding:22px}
}
