@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
  --ink: #101d29;
  --navy: #081827;
  --navy-2: #102536;
  --navy-3: #173346;
  --orange: #f47737;
  --orange-dark: #e6652a;
  --cream: #f7f6f2;
  --paper: #ffffff;
  --muted: #64727a;
  --line: #e0e4e5;
  --radius: 3px;
  --container: 1240px;
  --header-h: 90px;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 110px; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 400 16px/1.7 'DM Sans', system-ui, -apple-system, sans-serif; -webkit-font-smoothing: antialiased; }
body.nav-open { overflow: hidden; }
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration: none; }
button { font: inherit; }
button, a, summary { -webkit-tap-highlight-color: transparent; }
:focus-visible { outline: 3px solid var(--orange); outline-offset: 3px; }
::selection { background: var(--orange); color: #fff; }
.container { width: min(calc(100% - 72px), var(--container)); margin-inline: auto; }
.skip-link { position: fixed; z-index: 1000; top: -100px; left: 14px; padding: 10px 17px; background: var(--orange); color: var(--navy); }
.skip-link:focus { top: 12px; }
h1,h2,h3,h4 { font-family: 'Manrope', system-ui, sans-serif; line-height: 1.18; letter-spacing: -.045em; }
h1,h2,h3,p { margin-top: 0; }
h2 em, h1 em { font-style: normal; color: var(--orange); }

/* Global utility/header */
.site-topline { height: 34px; background: #060e17; color: #c9d1d6; border-bottom: 1px solid rgba(255,255,255,.08); font-size: 11px; font-weight: 700; letter-spacing: .065em; }
.top-inner { height: 100%; display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.top-inner a { color: #fff; transition: color .2s; }
.top-inner a:hover { color: var(--orange); }
.top-inner a span { color: var(--orange); padding-left: 5px; }
.top-dot,.status-light { width: 6px; height: 6px; display: inline-block; border-radius: 50%; margin-right: 9px; background: var(--orange); box-shadow: 0 0 0 4px rgba(244,119,55,.12); vertical-align: middle; }
.site-header { position: sticky; top: 0; z-index: 70; background: var(--navy); border-bottom: 1px solid rgba(255,255,255,.1); transition: box-shadow .25s, background .25s; }
.site-header.scrolled { background: #071521; box-shadow: 0 6px 32px rgba(0,0,0,.25); }
body.admin-bar .site-header { top: 32px; }
.header-inner { min-height: var(--header-h); display: flex; align-items: center; justify-content: space-between; gap: 32px; }
.brand { display: flex; align-items: center; gap: 15px; flex-shrink: 0; min-width: 0; }
.brand img { width: 145px; height: auto; filter: brightness(0) invert(1); }
.brand-caption { border-left: 1px solid rgba(255,255,255,.22); padding: 2px 0 2px 15px; display: flex; flex-direction: column; color: #fff; font: 800 14px/1.45 'Manrope', sans-serif; letter-spacing: .12em; white-space: nowrap; }
.brand-caption span { color: #d3dce1; font-weight: 600; font-size: 8px; letter-spacing: .19em; }
.main-nav { display: flex; align-items: center; gap: 37px; margin-left: auto; }
.nav-list { display: flex; align-items: center; gap: 28px; list-style: none; margin: 0; padding: 0; }
.nav-list a { color: #e0e7ea; font-size: 12px; font-weight: 700; white-space: nowrap; transition: color .2s; }
.nav-list a:hover, .nav-list a:focus { color: var(--orange); }
.nav-cta { display: inline-flex; align-items: center; gap: 22px; white-space: nowrap; border: 1px solid var(--orange); color: var(--orange); padding: 13px 17px; text-transform: uppercase; letter-spacing: .03em; font-size: 11px; font-weight: 800; transition: color .2s,background .2s; }
.nav-cta:hover { background: var(--orange); color: var(--navy); }
.nav-cta span { font-size: 18px; font-weight: 400; line-height: .8; }
.nav-toggle { display: none; }

/* Hero */
.hero { min-height: 650px; height: min(790px, calc(100svh - 124px)); position: relative; isolation: isolate; background: var(--navy); color: #fff; overflow: hidden; }
.hero-image { position: absolute; inset: 0; z-index: -3; background: url('hero-motosiklet.webp') center center / cover no-repeat; transform: scale(1.002); }
.hero-vignette { position: absolute; inset: 0; z-index: -2; background: linear-gradient(90deg,rgba(4,17,30,.95) 0%,rgba(4,17,30,.85) 24%,rgba(4,17,30,.55) 42%,rgba(4,17,30,.08) 76%),linear-gradient(0deg,rgba(4,17,30,.65),transparent 24%); }
.hero::after { content: ''; position: absolute; inset: auto 0 0; height: 1px; background: rgba(255,255,255,.18); }
.hero-content { position: relative; height: 100%; display: flex; flex-direction: column; justify-content: center; }
.hero-main { max-width: 710px; padding: 35px 0 50px; }
.eyebrow { display: flex; align-items: center; gap: 13px; color: var(--orange-dark); font-size: 11px; letter-spacing: .16em; font-weight: 800; line-height: 1.4; text-transform: uppercase; margin-bottom: 24px; }
.eyebrow.light { color: #e9ecee; }
.eyebrow-line { display: inline-block; width: 26px; height: 2px; flex-shrink: 0; background: var(--orange); }
.hero h1 { font-size: clamp(58px, 6.4vw, 99px); font-weight: 800; letter-spacing: -.068em; line-height: 1.06; margin: 0 0 30px; }
.hero p { font-size: clamp(15px, 1.3vw, 18px); line-height: 1.9; max-width: 530px; color: #d2dce2; margin-bottom: 36px; }
.hero-buttons { display: flex; gap: 12px; flex-wrap: wrap; }
.btn { min-height: 57px; padding: 16px 23px; display: inline-flex; align-items: center; justify-content: center; gap: 22px; border: 1px solid transparent; font-size: 12px; font-weight: 800; text-transform: uppercase; line-height: 1.4; letter-spacing: .045em; transition: transform .2s, background .2s, color .2s, border-color .2s; }
.btn:hover { transform: translateY(-2px); }
.btn span { font-size: 18px; font-weight: 400; line-height: 1; }
.btn-primary { background: var(--orange); color: #101b23; }
.btn-primary:hover { background: #ff945d; }
.btn-outline { border-color: rgba(255,255,255,.5); color: #fff; background: rgba(0,0,0,.08); }
.btn-outline:hover { background: #fff; color: var(--navy); border-color: #fff; }
.hero-foot { position: absolute; bottom: 37px; left: 0; right: 0; display: flex; align-items: center; gap: 30px; color: #e7ecef; }
.hero-foot-label { font-size: 9px; letter-spacing: .2em; font-weight: 800; color: #b3c0c8; }
.hero-tags { display: flex; align-items: center; flex-wrap: wrap; gap: 14px; font-size: 11px; font-weight: 700; }
.hero-tags i { display: block; width: 3px; height: 3px; border-radius: 50%; background: var(--orange); }
.hero-scroll { position: absolute; right: max(26px, calc((100vw - var(--container)) / 2)); bottom: 29px; z-index: 2; display: flex; flex-direction: column; align-items: center; color: rgba(255,255,255,.8); gap: 10px; font-size: 9px; font-weight: 800; letter-spacing: .2em; }
.hero-scroll b { display: grid; place-items: center; border: 1px solid rgba(255,255,255,.5); border-radius: 50%; width: 33px; height: 33px; font-size: 15px; font-weight: 400; }

/* Intro reasons */
.intro-strip { background: var(--cream); border-bottom: 1px solid var(--line); }
.intro-grid { min-height: 135px; display: grid; grid-template-columns: repeat(3,1fr); align-items: stretch; }
.intro-item { display: flex; align-items: center; gap: 23px; padding: 28px 35px; border-right: 1px solid #e6e7e4; }
.intro-item:first-child { padding-left: 0; }
.intro-item:last-child { border-right: 0; }
.intro-number { color: var(--orange-dark); font: 800 32px/1 'Manrope',sans-serif; letter-spacing: -.07em; }
.intro-item strong { display: block; color: #253440; font-size: 13px; font-weight: 800; margin-bottom: 3px; }
.intro-item div span { display: block; color: #7d888d; font-size: 11px; line-height: 1.5; }

/* Section language */
.section { padding: 119px 0 125px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 80px; margin-bottom: 49px; }
.section-heading h2, .about-copy h2, .faq-grid h2, .contact-top h2 { font-size: clamp(38px, 4vw, 59px); font-weight: 800; letter-spacing: -.065em; line-height: 1.13; margin-bottom: 0; }
.section-heading > p { max-width: 370px; font-size: 15px; color: #748087; line-height: 1.95; margin-bottom: 4px; }
.services-section { background: #fff; }
.service-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: #e1e5e6; border: 1px solid #e1e5e6; }
.service-card { position: relative; min-height: 350px; padding: 30px 32px 27px; background: #fff; display: flex; flex-direction: column; transition: background .28s; }
.service-card:hover { background: #f8f9f8; }
.service-no { align-self: end; font-size: 10px; font-weight: 800; letter-spacing: .11em; color: #a6b0b6; }
.service-icon { display: flex; align-items: center; justify-content: center; width: 68px; height: 68px; margin-top: 4px; margin-bottom: 28px; color: var(--orange-dark); background: #fff3eb; }
.service-icon svg { width: 38px; height: 38px; }
.service-card h3 { font-size: 21px; font-weight: 800; letter-spacing: -.04em; margin-bottom: 11px; }
.service-card p { color: #6a777f; font-size: 13px; line-height: 1.8; margin-bottom: 26px; max-width: 300px; }
.service-card a { margin-top: auto; color: #243441; font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .03em; display: flex; justify-content: space-between; align-items: center; border-top: 1px solid #e7ebec; padding-top: 17px; transition: color .2s; }
.service-card a span { font-size: 20px; font-weight: 400; }
.service-card a:hover { color: var(--orange-dark); }
.service-card.featured { background: #fff8f2; }
.service-card.featured .service-icon { background: #ffe9da; }
.services-note { font-size: 11px; color: #89949b; margin: 22px 0 0; }

/* About */
.about-section { background: #0a1b2a; color: #fff; overflow: hidden; }
.about-grid { min-height: 685px; display: grid; grid-template-columns: 48% 52%; gap: 0; align-items: center; }
.about-graphic { position: relative; height: 100%; display: flex; align-items: center; justify-content: center; padding: 65px 70px 65px 0; }
.about-graphic::before { content: ''; position: absolute; width: 650px; height: 650px; border: 1px solid rgba(255,255,255,.045); border-radius: 50%; left: -300px; top: 0; box-shadow: 0 0 0 90px rgba(255,255,255,.012),0 0 0 170px rgba(255,255,255,.007); }
.about-frame { position: relative; width: min(100%,420px); aspect-ratio: 1 / 1.15; border: 1px solid rgba(255,255,255,.22); background: radial-gradient(circle at 60% 25%,rgba(246,120,56,.14),transparent 46%),linear-gradient(145deg,#152d3c,#071421); display: flex; align-items: center; justify-content: center; overflow: hidden; }
.about-frame::before,.about-frame::after { content: ''; position: absolute; width: 86%; height: 1px; left: 7%; background: rgba(255,255,255,.13); }
.about-frame::before { top: 64px; }
.about-frame::after { bottom: 64px; }
.about-number { font: 800 clamp(105px,13vw,195px)/1 'Manrope',sans-serif; letter-spacing: -.12em; color: #fff; transform: translateX(-10px); }
.about-number span { color: var(--orange); font-weight: 400; }
.about-frame-top,.about-frame-bottom { position: absolute; left: 0; right: 0; text-align: center; font-size: 9px; letter-spacing: .18em; font-weight: 800; color: #d4dce1; }
.about-frame-top { top: 29px; }
.about-frame-bottom { bottom: 29px; }
.about-frame-bottom b { color: var(--orange); margin: 0 5px; }
.about-label { position: absolute; right: 22px; bottom: 97px; padding: 15px 20px; font-size: 10px; font-weight: 800; letter-spacing: .1em; background: var(--orange); color: #152331; box-shadow: 0 14px 30px rgba(0,0,0,.23); }
.about-label .status-light { background: #152331; box-shadow: 0 0 0 4px rgba(0,0,0,.12); }
.about-copy { padding: 100px 0 100px 55px; }
.about-copy h2 { color: #fff; margin-bottom: 30px; }
.about-copy > p { color: #b4c3ca; font-size: 14px; line-height: 2; margin-bottom: 35px; max-width: 525px; }
.about-values { border-top: 1px solid rgba(255,255,255,.1); margin-bottom: 33px; }
.about-values > div { display: grid; grid-template-columns: 30px 1fr; column-gap: 8px; padding: 14px 0; border-bottom: 1px solid rgba(255,255,255,.1); }
.about-values > div > span { grid-row: span 2; color: var(--orange); font-size: 20px; }
.about-values strong { font-size: 12px; font-weight: 800; }
.about-values small { color: #91a4ae; font-size: 11px; }
.text-link { font-size: 12px; font-weight: 800; color: var(--orange-dark); text-transform: uppercase; letter-spacing: .03em; display: inline-flex; align-items: center; gap: 17px; padding-bottom: 7px; border-bottom: 1px solid currentColor; }
.text-link span { font-size: 19px; font-weight: 400; }
.light-link { color: #fff; }
.text-link:hover { color: var(--orange); }

/* Process */
.process-section { background: var(--cream); }
.section-heading.compact { margin-bottom: 75px; }
.process-grid { display: grid; grid-template-columns: repeat(4,1fr); }
.process-step { position: relative; padding: 0 35px 0 0; }
.process-index { color: var(--orange-dark); font: 800 52px/1 'Manrope',sans-serif; letter-spacing: -.075em; display: inline-block; margin-bottom: 45px; }
.process-connector { height: 1px; background: #ccd2d3; width: calc(100% + 18px); position: absolute; top: 70px; left: 0; }
.process-connector::before { content: ''; position: absolute; left: 0; top: -4px; width: 9px; height: 9px; border-radius: 50%; background: var(--orange); }
.process-step h3 { margin: 0 0 13px; font-size: 18px; font-weight: 800; }
.process-step p { margin: 0; max-width: 240px; color: #738087; font-size: 13px; line-height: 1.95; }

/* Electrical callout */
.callout-section { background: var(--orange); color: #101d27; overflow: hidden; }
.callout-inner { min-height: 315px; display: flex; align-items: center; justify-content: space-between; gap: 50px; position: relative; isolation: isolate; padding-block: 45px; }
.callout-inner .eyebrow.light { color: #142735; margin-bottom: 17px; }
.callout-inner .eyebrow-line { background: #142735; }
.callout-inner h2 { font-size: clamp(35px,3.6vw,52px); line-height: 1.14; font-weight: 800; margin-bottom: 16px; }
.callout-inner h2 em { font-style: normal; color: #fff; }
.callout-inner p { font-size: 13px; max-width: 600px; line-height: 1.85; margin-bottom: 0; }
.btn-light { flex-shrink: 0; color: var(--navy); background: #fff; }
.btn-light:hover { background: var(--navy); color: #fff; }
.callout-decoration { position: absolute; font: 800 430px/1 'Manrope',sans-serif; color: rgba(255,255,255,.08); right: 14%; top: -70px; z-index: -1; pointer-events: none; }

/* FAQ */
.faq-section { padding-block: 120px; }
.faq-grid { display: grid; grid-template-columns: 42% 58%; gap: 40px; }
.faq-grid h2 { margin-bottom: 24px; }
.faq-grid > div:first-child > p { max-width: 350px; font-size: 14px; color: #728087; line-height: 1.9; margin-bottom: 34px; }
.faq-list { padding-left: 8px; }
.faq-list details { border-bottom: 1px solid #dce2e3; }
.faq-list details:first-child { border-top: 1px solid #dce2e3; }
.faq-list summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 24px 0; font-weight: 800; font-size: 14px; line-height: 1.5; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: var(--orange-dark); font-weight: 400; font-size: 26px; line-height: 1; transition: transform .25s; flex-shrink: 0; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details div { color: #66767e; font-size: 13px; line-height: 1.95; padding: 0 38px 23px 0; }

/* Contact/footer */
.contact-section { background: #102a3b; color: #fff; padding: 100px 0 115px; }
.contact-top { display: flex; align-items: end; justify-content: space-between; gap: 50px; margin-bottom: 48px; }
.contact-top h2 { color: #fff; }
.contact-top p { color: #a9bbc5; max-width: 360px; font-size: 15px; line-height: 1.9; margin-bottom: 4px; }
.contact-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 15px; }
.contact-card { position: relative; min-height: 305px; background: #17374a; border: 1px solid rgba(255,255,255,.09); padding: 29px 30px; display: flex; flex-direction: column; }
.contact-card.highlighted { background: #1c4257; }
.contact-kicker { font-size: 10px; color: var(--orange); font-weight: 800; letter-spacing: .12em; margin-bottom: 40px; }
.contact-card h3 { color: #fff; font-size: 19px; font-weight: 800; margin-bottom: 16px; }
.contact-card p { color: #afc0ca; font-size: 12px; line-height: 1.85; margin-bottom: 26px; }
.contact-card address { color: #d0dbe1; font-size: 15px; line-height: 1.8; font-style: normal; margin-bottom: 26px; }
.contact-big { color: #fff; font: 800 23px/1.5 'Manrope',sans-serif; letter-spacing: -.04em; display: block; margin-bottom: 7px; }
.contact-big:hover { color: var(--orange); }
.contact-action { display: flex; justify-content: space-between; align-items: center; margin-top: auto; padding-top: 15px; color: #fff; border-top: 1px solid rgba(255,255,255,.16); font-size: 11px; font-weight: 800; text-transform: uppercase; letter-spacing: .04em; }
.contact-action span { font-size: 20px; font-weight: 400; color: var(--orange); }
.contact-action:hover { color: var(--orange); }
.site-footer { background: #071521; color: #c9d4db; }
.footer-grid { display: grid; grid-template-columns: 45% 22% 33%; gap: 0; padding: 72px 0 62px; }
.footer-grid > div { padding-right: 40px; }
.footer-brand p { font-size: 12px; color: #91a3ae; line-height: 2; max-width: 340px; margin: 22px 0 0; }
.footer-logo img { width: 180px; height: auto; filter: brightness(0) invert(1); }
.footer-grid h3 { font: 800 12px/1.5 'Manrope',sans-serif; color: #fff; letter-spacing: .065em; text-transform: uppercase; margin-bottom: 23px; }
.footer-grid ul { padding: 0; margin: 0; list-style: none; }
.footer-grid li + li { margin-top: 10px; }
.footer-grid li a,.footer-map { font-size: 12px; color: #91a3ae; transition: color .2s; }
.footer-grid a:hover { color: var(--orange); }
.footer-grid p { max-width: 300px; font-size: 12px; line-height: 1.9; color: #91a3ae; }
.footer-phone { color: #fff; font: 800 18px/1.5 'Manrope',sans-serif; display: inline-block; margin-bottom: 7px; }
.footer-map { display: inline-block; color: var(--orange); font-weight: 800; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; border-top: 1px solid rgba(255,255,255,.1); padding: 23px 0; font-size: 10px; color: #718995; }
.mobile-action-bar { display: none; }

/* Internal WordPress pages */
.inside-main { min-height: 56vh; padding: 92px 0 130px; background: #fff; }
.inside-title { margin-bottom: 52px; }
.inside-title h1 { font: 800 clamp(35px,5vw,64px)/1.1 'Manrope',sans-serif; margin-bottom: 0; }
.reading-area { max-width: 960px; }
.rich-content { font-size: 16px; line-height: 1.95; color: #3d4c56; }
.rich-content h2, .rich-content h3 { margin: 38px 0 17px; color: var(--ink); }
.rich-content img { height: auto; }
.rich-content a { color: var(--orange-dark); text-decoration: underline; }
.post-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 22px; }
.post-card { padding: 30px; background: var(--cream); }
.post-card h2 { font-size: 22px; }
.post-card p { color: #6d7c84; font-size: 14px; }
.post-card .post-meta { color: var(--orange-dark); font-size: 11px; letter-spacing: .06em; font-weight: 800; }
.post-card a:hover { color: var(--orange-dark); }
.notfound p { font-size: 16px; color: var(--muted); margin-bottom: 35px; }

/* Motion */
@media (prefers-reduced-motion: no-preference) {
  .has-js [data-reveal] { opacity: 0; transform: translateY(20px); transition: opacity .65s ease, transform .65s ease; }
  .has-js [data-reveal].revealed { opacity: 1; transform: translateY(0); }
}

@media (max-width: 1200px) {
  :root { --header-h: 82px; }
  .main-nav { gap: 21px; }
  .nav-list { gap: 17px; }
  .brand img { width: 127px; }
  .brand-caption { font-size: 12px; }
  .service-card { padding: 27px 26px 25px; }
  .about-copy { padding-left: 35px; }
  .about-graphic { padding-right: 48px; }
  .about-label { right: 0; }
}

@media (max-width: 1020px) {
  .container { width: min(calc(100% - 52px), var(--container)); }
  .brand img { width: 135px; }
  .nav-toggle { display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 6px; background: transparent; border: 1px solid rgba(255,255,255,.35); width: 45px; height: 45px; color: #fff; cursor: pointer; margin-left: auto; }
  .nav-toggle span { width: 20px; height: 2px; background: #fff; transition: transform .2s, opacity .2s; }
  .nav-toggle[aria-expanded='true'] span:first-child { transform: translateY(8px) rotate(45deg); }
  .nav-toggle[aria-expanded='true'] span:nth-child(2) { opacity: 0; }
  .nav-toggle[aria-expanded='true'] span:last-child { transform: translateY(-8px) rotate(-45deg); }
  .main-nav { display: none; position: absolute; top: 100%; left: 0; right: 0; background: #071521; box-shadow: 0 20px 30px rgba(0,0,0,.3); padding: 24px 26px 32px; flex-direction: column; align-items: stretch; gap: 27px; max-height: calc(100svh - 110px); overflow: auto; }
  .main-nav.is-open { display: flex; }
  .nav-list { display: flex; flex-direction: column; align-items: stretch; gap: 0; }
  .nav-list li { border-bottom: 1px solid rgba(255,255,255,.11); }
  .nav-list a { display: block; padding: 15px 0; font-size: 15px; }
  .nav-cta { justify-content: space-between; }
  .hero { height: 700px; }
  .hero-image { background-position: 58% center; }
  .hero-vignette { background: linear-gradient(90deg,rgba(4,17,30,.94),rgba(4,17,30,.63) 46%,rgba(4,17,30,.18) 90%),linear-gradient(0deg,rgba(4,17,30,.6),transparent 25%); }
  .hero-main { max-width: 620px; }
  .service-grid { grid-template-columns: repeat(2,1fr); }
  .section { padding-block: 96px; }
  .about-grid { grid-template-columns: 44% 56%; }
  .about-graphic { padding-right: 24px; }
  .about-number { font-size: 105px; }
  .about-copy { padding: 85px 0 85px 25px; }
  .process-step { padding-right: 24px; }
  .contact-card { padding: 24px 23px; }
  .contact-big { font-size: 20px; }
}

@media (max-width: 760px) {
  html { scroll-padding-top: 78px; }
  .container { width: min(calc(100% - 36px), var(--container)); }
  .site-topline { display: none; }
  .header-inner { min-height: 72px; }
  .brand img { width: 100px; }
  .brand-caption { font-size: 11px; padding-left: 10px; gap: 0; }
  .brand-caption span { font-size: 7px; }
  .hero { height: auto; min-height: 685px; }
  .hero-image { background-position: 66% center; }
  .hero-vignette { background: linear-gradient(90deg,rgba(5,17,29,.93),rgba(5,17,29,.77) 62%,rgba(5,17,29,.48)),linear-gradient(0deg,rgba(5,17,29,.74),transparent 38%); }
  .hero-content { min-height: 685px; justify-content: center; }
  .hero-main { padding: 74px 0 95px; }
  .hero h1 { font-size: clamp(51px, 11vw, 71px); line-height: 1.1; }
  .hero p { font-size: 14px; line-height: 1.85; max-width: 460px; }
  .hero-buttons { flex-direction: column; align-items: flex-start; }
  .hero-foot { left: 0; right: 0; bottom: 24px; gap: 8px; flex-direction: column; align-items: flex-start; }
  .hero-foot-label { font-size: 8px; }
  .hero-tags { gap: 9px; font-size: 9px; }
  .hero-scroll { display: none; }
  .intro-grid { grid-template-columns: 1fr; min-height: 0; }
  .intro-item { padding: 21px 0; border-right: 0; border-bottom: 1px solid #e1e3df; }
  .intro-item:last-child { border-bottom: 0; }
  .intro-number { font-size: 28px; width: 48px; }
  .intro-item strong { font-size: 13px; }
  .intro-item div span { font-size: 11px; }
  .section { padding-block: 75px; }
  .section-heading { display: block; margin-bottom: 38px; }
  .section-heading h2,.about-copy h2,.faq-grid h2,.contact-top h2 { font-size: clamp(36px,8.4vw,49px); }
  .section-heading > p { margin: 23px 0 0; font-size: 14px; }
  .service-grid { grid-template-columns: 1fr; }
  .service-card { min-height: 308px; padding: 27px; }
  .service-card h3 { font-size: 21px; }
  .service-icon { margin-bottom: 19px; }
  .about-grid { grid-template-columns: 1fr; }
  .about-graphic { padding: 64px 0 28px; }
  .about-frame { max-width: 360px; aspect-ratio: 1 / 1; }
  .about-number { font-size: 126px; }
  .about-label { right: max(0px, calc((100% - 365px) / 2)); bottom: 40px; }
  .about-copy { padding: 40px 0 75px; }
  .about-copy h2 { margin-bottom: 25px; }
  .about-copy > p { font-size: 14px; }
  .section-heading.compact { margin-bottom: 39px; }
  .process-grid { grid-template-columns: repeat(2,1fr); row-gap: 37px; }
  .process-index { font-size: 43px; margin-bottom: 35px; }
  .process-connector { top: 58px; width: 92%; }
  .process-step h3 { font-size: 16px; }
  .process-step p { font-size: 12px; }
  .callout-inner { min-height: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 28px; padding-block: 56px; }
  .callout-inner h2 { font-size: 38px; }
  .callout-inner p { font-size: 13px; }
  .callout-decoration { right: -80px; top: -30px; font-size: 360px; }
  .faq-grid { grid-template-columns: 1fr; gap: 38px; }
  .faq-list { padding-left: 0; }
  .faq-list summary { font-size: 13px; padding-block: 20px; }
  .contact-section { padding: 75px 0 80px; }
  .contact-top { flex-direction: column; align-items: start; gap: 25px; margin-bottom: 35px; }
  .contact-top p { font-size: 13px; }
  .contact-grid { grid-template-columns: 1fr; }
  .contact-card { min-height: 265px; padding: 27px; }
  .contact-kicker { margin-bottom: 28px; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 38px 12px; padding: 65px 0 45px; }
  .footer-grid > div { padding-right: 0; }
  .footer-grid .footer-brand { grid-column: span 2; }
  .footer-bottom { flex-direction: column; gap: 4px; padding-bottom: 90px; }
  .mobile-action-bar { position: fixed; bottom: 0; left: 0; right: 0; z-index: 65; display: grid; grid-template-columns: 1fr 1fr; height: 62px; background: #071521; box-shadow: 0 -8px 35px rgba(0,0,0,.17); border-top: 1px solid rgba(255,255,255,.12); }
  .mobile-action-bar a { display: grid; place-items: center; color: #fff; text-transform: uppercase; font-size: 12px; font-weight: 800; letter-spacing: .04em; }
  .mobile-action-bar .mobile-call { background: #102c40; }
  .mobile-action-bar .mobile-whatsapp { background: var(--orange); color: #111f2d; }
  .post-grid { grid-template-columns: 1fr; }
  .inside-main { padding: 65px 0 90px; }
}

@media (max-width: 390px) {
  .brand img { width: 86px; }
  .brand-caption { font-size: 9px; }
  .brand-caption span { font-size: 6px; }
  .hero h1 { font-size: 48px; }
  .hero-tags { font-size: 8px; }
  .hero .btn { font-size: 10px; min-height: 53px; }
  .about-number { font-size: 105px; }
}

@media (max-width: 782px) {
  body.admin-bar .site-header { top: 46px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
