/*
Theme Name: INFO-TEC 2026
Theme URI: https://infotec.lt
Author: INFO-TEC
Description: INFO-TEC LT/EN svetainės tema. Parengta pagal LT 1.0_261001 ir EN 39 leidimą.
Version: 1.0.1
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: infotec
*/

:root { --ink:#0b1f33; --muted:#5a6a7b; --blue:#0f6cbd; --blue-dark:#0b4f8a; --cyan:#35b8c5; --pale:#f3f8fc; --line:#dce6ef; --white:#fff; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--white); font-family:"Segoe UI",Arial,Helvetica,sans-serif; -webkit-font-smoothing:antialiased; }
body.admin-bar .site-header { top:32px; }
a { color:inherit; text-decoration:none; }
button,input,select,textarea { font:inherit; }
button,a { -webkit-tap-highlight-color:transparent; }

.infotec-form-status { margin:0 0 15px; padding:12px 14px; border-radius:7px; font-size:13px; line-height:1.45; }
.infotec-form-status.error { color:#8a2f22; border:1px solid #efc3bc; background:#fff1ef; }
.infotec-form-status.info { color:#174b69; border:1px solid #b9d7e8; background:#edf7fc; }
.infotec-form-result { min-height:300px; display:grid; place-items:center; align-content:center; gap:14px; padding:42px 34px; color:var(--ink); text-align:center; }
.infotec-form-result>span { width:50px; height:50px; display:grid; place-items:center; color:#fff; border-radius:50%; background:#2f9c79; font-size:24px; }
.infotec-form-result h3 { margin:0; font-size:30px; }
.infotec-form-result p { max-width:580px; margin:0; color:var(--muted); font-size:16px; line-height:1.6; }
.infotec-result-price { color:var(--blue-dark); font-size:44px; font-weight:760; letter-spacing:-.04em; }
.infotec-result-price small { display:block; margin-top:5px; color:#4e687a; font-size:15px; font-weight:650; letter-spacing:0; }
.infotec-form-result button { color:var(--blue); border:0; border-bottom:1px solid currentColor; background:transparent; cursor:pointer; font-weight:700; }
.infotec-no-js { margin:20px; padding:16px; border:1px solid #efc3bc; border-radius:7px; background:#fff1ef; }

@media (max-width:782px) {
  body.admin-bar .site-header { top:46px; }
}

.site-header { position:sticky; top:0; z-index:50; height:76px; display:flex; align-items:center; justify-content:space-between; padding:0 clamp(22px,5vw,76px); background:rgba(255,255,255,.93); border-bottom:1px solid rgba(220,230,239,.9); backdrop-filter:blur(16px); }
.brand { display:inline-flex; align-items:center; }
.brand-logo { width:154px; height:auto; display:block; }
.site-header nav { display:flex; align-items:center; gap:clamp(18px,2vw,34px); color:#2b3c4d; font-size:14px; font-weight:600; }
.site-header nav>a:not(.nav-cta),.nav-dropdown-trigger { padding:27px 0; color:inherit; border:0; border-bottom:2px solid transparent; background:transparent; cursor:pointer; font-weight:600; }
.site-header nav>a:not(.nav-cta):hover,.nav-dropdown-trigger:hover,.nav-dropdown-open .nav-dropdown-trigger { color:var(--blue); border-color:var(--blue); }
.nav-dropdown { position:relative; align-self:stretch; display:flex; align-items:center; }
.nav-dropdown-control { height:100%; display:flex; align-items:center; }
.nav-dropdown-trigger { display:flex; align-items:center; }
.nav-dropdown-toggle { width:27px; height:38px; display:grid; place-items:center; padding:0; color:var(--blue); border:0; background:transparent; cursor:pointer; }
.nav-dropdown-toggle>span { font-size:16px; transition:transform .18s ease; }
.nav-dropdown-open .nav-dropdown-toggle>span { transform:rotate(180deg); }
.nav-submenu { position:absolute; top:66px; left:-20px; width:270px; display:grid; gap:2px; padding:12px; visibility:hidden; opacity:0; transform:translateY(-5px); border:1px solid var(--line); border-radius:10px; background:white; box-shadow:0 18px 40px rgba(20,50,70,.14); transition:.16s ease; }
.nav-submenu a { padding:12px 14px; border-radius:7px; color:#30495e; font-size:14px; }
.nav-submenu a:hover,.nav-submenu a:focus-visible { color:var(--blue); background:#edf6fb; outline:none; }
.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu,.nav-dropdown-open .nav-submenu { visibility:visible; opacity:1; transform:translateY(0); }
.language { background:transparent; border:0; color:var(--muted); cursor:pointer; font-weight:700; }
.nav-cta,.primary-button,.submit-button { display:inline-flex; align-items:center; justify-content:center; gap:22px; color:white; background:var(--blue); border-radius:7px; border:0; font-weight:700; transition:.18s ease; cursor:pointer; }
.nav-cta { padding:12px 19px; }
.nav-cta:hover,.primary-button:hover,.submit-button:hover { background:var(--blue-dark); transform:translateY(-1px); }
.menu-button { display:none; }

.hero { min-height:690px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr); align-items:center; gap:6vw; padding:78px clamp(24px,7vw,108px) 88px; overflow:hidden; background:radial-gradient(circle at 78% 45%,#e7f6fb 0,#f7fbfd 28%,rgba(255,255,255,0) 57%); }
.eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 22px; color:var(--blue); font-size:12px; font-weight:750; letter-spacing:.13em; text-transform:uppercase; }
.eyebrow>span { width:22px; height:2px; background:var(--cyan); }
.hero h1 { margin:0; max-width:720px; font-size:clamp(52px,5.4vw,84px); line-height:.98; letter-spacing:-.055em; font-weight:720; }
.hero h1 em { color:var(--blue); font-style:normal; }
.hero-lead { max-width:660px; margin:28px 0 0; color:var(--muted); font-size:clamp(18px,1.55vw,21px); line-height:1.58; }
.hero-actions { display:flex; align-items:center; gap:30px; margin-top:36px; }
.primary-button { min-height:52px; padding:0 22px; }
.primary-button span { font-size:20px; }
.text-button { padding:13px 0; color:var(--blue); font-weight:700; border-bottom:1px solid #8cbbe1; }
.hero-proof { display:flex; gap:0; margin-top:54px; color:var(--muted); font-size:12px; }
.hero-proof span { display:flex; flex-direction:column; min-width:130px; padding-right:24px; margin-right:24px; border-right:1px solid var(--line); }
.hero-proof span:last-child { border:0; }
.hero-proof b { color:var(--ink); font-size:22px; letter-spacing:-.02em; }

.hero-visual { position:relative; min-height:480px; display:grid; place-items:center; }
.visual-grid { position:absolute; inset:0; opacity:.42; background-image:linear-gradient(#cbe0ed 1px,transparent 1px),linear-gradient(90deg,#cbe0ed 1px,transparent 1px); background-size:38px 38px; mask-image:radial-gradient(circle,black 15%,transparent 70%); }
.hero-visual::before,.hero-visual::after { content:""; position:absolute; border-radius:50%; border:1px solid #b6dbe8; }
.hero-visual::before { width:390px; height:390px; }
.hero-visual::after { width:310px; height:310px; border-style:dashed; animation:spin 24s linear infinite; }
@keyframes spin { to { transform:rotate(360deg); } }
.system-card { position:relative; z-index:2; border:1px solid rgba(255,255,255,.85); background:rgba(255,255,255,.9); box-shadow:0 22px 50px rgba(30,80,116,.14); backdrop-filter:blur(14px); }
.main-system-card { width:min(360px,76vw); padding:30px; border-radius:18px; }
.card-topline { display:flex; align-items:center; gap:8px; color:var(--muted); font-size:12px; }
.live-dot { width:8px; height:8px; border-radius:50%; background:#39a875; box-shadow:0 0 0 5px #e6f5ee; }
.main-system-card>strong { display:block; margin-top:17px; font-size:29px; letter-spacing:-.03em; }
.status-line { height:7px; margin-top:18px; overflow:hidden; border-radius:9px; background:#e5edf3; }
.status-line i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--blue),var(--cyan)); }
.mini-stats { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-top:25px; }
.mini-stats span { display:flex; flex-direction:column; padding:14px; border-radius:9px; background:var(--pale); }
.mini-stats b { font-size:18px; }
.mini-stats small { margin-top:3px; color:var(--muted); font-size:10px; }
.floating-card { position:absolute; display:flex; align-items:center; gap:12px; padding:15px 18px; border-radius:12px; }
.floating-card span:nth-child(2) { display:flex; flex-direction:column; }
.floating-card small { color:var(--muted); font-size:10px; }
.floating-card b { margin-top:3px; font-size:12px; }
.support-card { top:70px; right:4px; }
.security-card { bottom:55px; left:0; }
.tile-icon,.shield { width:30px; height:30px; display:grid; place-items:center; color:white; border-radius:7px; background:var(--blue); font-weight:800; }
.shield { background:#2f9c79; }

.trust-bar { min-height:72px; display:flex; align-items:center; justify-content:center; gap:clamp(25px,4vw,62px); padding:16px 25px; color:#365064; background:#edf5f9; font-size:13px; font-weight:650; text-align:center; }
.trust-bar i { width:5px; height:5px; border-radius:50%; background:var(--cyan); }
.section-shell { width:min(1180px,calc(100% - 48px)); margin:0 auto; }
.services { padding-top:108px; padding-bottom:118px; }
.section-heading { display:grid; grid-template-columns:1.08fr .92fr; gap:9vw; align-items:end; }
.section-heading h2,.calculator-intro h2 { margin:0; font-size:clamp(46px,4.6vw,68px); line-height:1.04; letter-spacing:-.045em; }
.section-heading>p { max-width:540px; margin:0 0 7px; color:var(--muted); font-size:20px; line-height:1.65; }
.service-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:14px; margin-top:54px; }
.service-card { position:relative; grid-column:span 2; min-height:326px; padding:32px; overflow:hidden; border:1px solid var(--line); border-radius:13px; background:white; transition:.2s ease; }
.service-card:nth-child(4),.service-card:nth-child(5) { grid-column:span 3; }
.service-card:hover { transform:translateY(-4px); border-color:#a8cbe2; box-shadow:0 18px 38px rgba(35,75,105,.09); }
.service-card.featured { color:white; border-color:var(--blue); background:linear-gradient(140deg,var(--blue),#0a5798); }
.service-code { display:inline-block; color:var(--cyan); font-size:12px; font-weight:800; letter-spacing:.1em; }
.featured .service-code { color:#aeeff2; }
.service-card h3 { max-width:320px; margin:54px 0 16px; font-size:28px; line-height:1.15; letter-spacing:-.025em; }
.service-card p { max-width:420px; margin:0; color:var(--muted); font-size:17px; line-height:1.65; }
.featured p { color:#dceefa; }
.card-arrow { position:absolute; top:23px; right:24px; color:#7b94a8; font-size:22px; }
.featured .card-arrow { color:white; }

.calculator-section { padding:112px 0; color:white; background:#092945; }
.calculator-shell { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(48px,7vw,95px); align-items:start; }
.eyebrow.light { color:#8ccce5; }
.calculator-intro { position:sticky; top:112px; padding-top:32px; }
.calculator-intro>p:not(.eyebrow) { margin:25px 0 0; color:#b7cbd9; font-size:17px; line-height:1.65; }
.calculator-intro ul { display:grid; gap:13px; margin:32px 0 0; padding:0; list-style:none; color:#d6e3eb; font-size:14px; }
.calculator-intro li::before { content:"✓"; display:inline-grid; place-items:center; width:20px; height:20px; margin-right:10px; color:#07263f; border-radius:50%; background:#63d4c5; font-size:11px; font-weight:900; }
.calculator-card { color:var(--ink); overflow:hidden; border-radius:17px; background:white; box-shadow:0 30px 70px rgba(0,0,0,.23); }
.calculator-head { display:flex; align-items:center; gap:15px; padding:25px 30px; border-bottom:1px solid var(--line); }
.calculator-head>span { display:grid; place-items:center; width:36px; height:36px; color:var(--blue); border-radius:8px; background:#e8f2fa; font-weight:800; }
.calculator-head>div { display:flex; flex-direction:column; }
.calculator-head b { font-size:19px; }
.calculator-head small { margin-top:3px; color:var(--muted); font-size:13px; }
.contact-head { border-top:1px solid var(--line); }
.fields { padding:12px 30px 5px; }
.calculator-comment { display:flex; flex-direction:column; gap:9px; padding:22px 0 4px; border-top:1px solid #e6edf2; color:#334b5d; }
.calculator-comment>span { display:flex; flex-direction:column; }
.calculator-comment b { font-size:15px; }
.calculator-comment small { margin-top:4px; color:var(--muted); font-size:12px; font-weight:400; }
.calculator-comment textarea { width:100%; min-height:105px; padding:12px 14px; color:var(--ink); border:1px solid #cbd8e2; border-radius:6px; background:white; outline:0; font-size:15px; line-height:1.5; resize:vertical; }
.calculator-comment textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px #dcebfa; }
.fields .calculator-comment { padding-bottom:24px; }
.calc-field { min-height:75px; display:flex; align-items:center; justify-content:space-between; gap:20px; border-bottom:1px solid #e9eff4; }
.calc-field>span:first-child { display:flex; flex-direction:column; }
.calc-field strong { font-size:17px; }
.stepper { display:grid; grid-template-columns:35px 50px 35px; height:36px; overflow:hidden; border:1px solid #cbd8e2; border-radius:6px; }
.stepper button { color:var(--blue); background:#f3f7fa; border:0; cursor:pointer; font-size:18px; }
.stepper button:hover { background:#e3eff8; }
.stepper input { width:100%; text-align:center; border:0; outline:0; appearance:textfield; font-weight:700; }
.stepper input::-webkit-inner-spin-button { appearance:none; }
.result-box { position:relative; display:flex; flex-direction:column; margin:22px 30px 0; padding:24px; overflow:hidden; border-radius:11px; background:#eaf5fb; }
.result-box::after { content:""; position:absolute; width:160px; height:160px; right:-70px; top:-73px; border:28px solid rgba(53,184,197,.12); border-radius:50%; }
.result-box>span { color:#496273; font-size:12px; }
.result-box strong { margin-top:4px; color:var(--blue-dark); font-size:38px; letter-spacing:-.04em; }
.result-box strong small { font-size:16px; letter-spacing:0; }
.result-box em { color:var(--muted); font-size:11px; font-style:normal; }
.lead-form { padding:28px 30px 30px; }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.form-grid label { display:flex; flex-direction:column; gap:7px; color:#334b5d; font-size:13px; font-weight:700; }
.form-grid input { width:100%; min-height:48px; padding:0 13px; border:1px solid #cbd8e2; border-radius:6px; outline:0; font-size:15px; font-weight:400; }
.form-grid input:focus { border-color:var(--blue); box-shadow:0 0 0 3px #dcebfa; }
.consent { display:flex; align-items:flex-start; gap:9px; margin:19px 0; color:var(--muted); font-size:13px; line-height:1.45; }
.consent input { margin:1px 0 0; accent-color:var(--blue); }
.consent a { color:var(--blue-dark); border-bottom:1px solid currentColor; font-weight:700; }
.submit-button { width:100%; min-height:49px; }
.submit-button:disabled { opacity:.65; cursor:wait; transform:none; }
.form-note { display:block; margin-top:13px; color:#768594; font-size:12px; line-height:1.5; text-align:center; }
.form-error { margin:0 0 15px; padding:12px 14px; color:#8a2f22; border:1px solid #efc3bc; border-radius:7px; background:#fff1ef; font-size:13px; line-height:1.45; }
.success-message { min-height:300px; display:grid; place-items:center; align-content:center; gap:14px; padding:40px; text-align:center; }
.success-message>span { width:48px; height:48px; display:grid; place-items:center; color:white; border-radius:50%; background:#2f9c79; font-size:24px; }
.success-message b { font-size:22px; }
.success-message p { max-width:570px; color:var(--muted); font-size:16px; line-height:1.6; }
.success-message button { color:var(--blue); background:none; border:0; text-decoration:underline; cursor:pointer; }
.price-reveal { min-height:660px; padding:55px 40px; }
.revealed-price { margin:18px 0; color:var(--blue-dark); font-size:48px; font-weight:760; letter-spacing:-.04em; }
.revealed-price small { display:block; margin-top:4px; color:#4e687a; font-size:17px; font-weight:650; letter-spacing:0; }
.attempts-left { padding:8px 13px; color:#3c6478; border-radius:20px; background:#eaf5fb; }
.price-reveal>.form-note { max-width:520px; margin-top:5px; }

/* INFO-TEC home page */
.home-page { overflow:hidden; }
.home-hero { min-height:720px; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr); align-items:center; gap:clamp(55px,7vw,115px); padding:96px clamp(28px,7vw,112px) 90px; background:radial-gradient(circle at 78% 43%,#e4f4fa 0,#f7fbfd 30%,rgba(255,255,255,0) 60%); }
.home-hero-copy { max-width:780px; }
.home-hero-copy h1 { margin:0; font-size:clamp(58px,5.8vw,88px); line-height:.98; letter-spacing:-.058em; font-weight:720; }
.home-hero-copy h1 em { color:var(--blue); font-style:normal; }
.home-hero-copy>p:not(.eyebrow) { max-width:690px; margin:28px 0 0; color:var(--muted); font-size:20px; line-height:1.65; }
.home-proof { display:flex; margin-top:52px; }
.home-proof span { min-width:135px; display:flex; flex-direction:column; margin-right:25px; padding-right:25px; border-right:1px solid var(--line); }
.home-proof span:last-child { margin:0; padding:0; border:0; }
.home-proof b { font-size:26px; letter-spacing:-.04em; }
.home-proof small { margin-top:3px; color:var(--muted); font-size:11px; }
.home-visual { position:relative; min-height:520px; display:grid; place-items:center; }
.home-visual::before,.home-visual::after { content:""; position:absolute; border-radius:50%; border:1px solid #b7dae8; }
.home-visual::before { width:430px; height:430px; }
.home-visual::after { width:330px; height:330px; border-style:dashed; animation:spin 28s linear infinite reverse; }
.home-visual-grid { position:absolute; inset:-35px; opacity:.42; background-image:linear-gradient(#cbe0ed 1px,transparent 1px),linear-gradient(90deg,#cbe0ed 1px,transparent 1px); background-size:42px 42px; mask-image:radial-gradient(circle,black 15%,transparent 70%); }
.core-card { position:relative; z-index:3; width:225px; height:225px; display:flex; align-items:center; flex-direction:column; justify-content:center; color:white; border-radius:50%; background:linear-gradient(145deg,#0f6cbd,#0a4d85); box-shadow:0 28px 60px rgba(15,108,189,.28); }
.core-logo-panel { width:172px; min-height:77px; display:grid; place-items:center; padding:12px 13px; border-radius:12px; background:white; box-shadow:0 11px 24px rgba(4,35,60,.2); }
.core-logo-panel .brand-logo { width:146px; }
.core-card small { margin-top:5px; color:#cfe7f7; font-size:11px; }
.orbit-card { position:absolute; z-index:4; min-width:190px; display:flex; flex-direction:column; padding:18px 20px; border:1px solid rgba(255,255,255,.9); border-radius:11px; background:rgba(255,255,255,.95); box-shadow:0 17px 38px rgba(28,75,105,.14); backdrop-filter:blur(12px); }
.orbit-card span { color:var(--cyan); font-size:10px; font-weight:800; letter-spacing:.12em; }
.orbit-card b { margin-top:7px; font-size:15px; }
.orbit-card small { margin-top:3px; color:var(--muted); font-size:10px; }
.orbit-doc { top:44px; left:-16px; }
.orbit-it { right:-67px; top:70px; }
.orbit-print { bottom:38px; left:15px; }
.home-directions { padding-top:112px; padding-bottom:120px; }
.direction-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:15px; margin-top:58px; }
.direction-card { position:relative; min-height:390px; display:flex; flex-direction:column; padding:34px; overflow:hidden; color:white; border-radius:15px; background:#104f84; }
.direction-card::after { content:""; position:absolute; width:210px; height:210px; right:-100px; top:-98px; border:34px solid rgba(255,255,255,.08); border-radius:50%; }
.direction-card.digital { background:linear-gradient(145deg,#0f6cbd,#0a4e88); }
.direction-card.it { background:linear-gradient(145deg,#173f60,#0b2e49); }
.direction-card.print { background:linear-gradient(145deg,#187d85,#0f5968); }
.direction-card>span { color:#b9edf1; font-size:11px; font-weight:800; letter-spacing:.12em; }
.direction-card h3 { max-width:310px; margin:82px 0 17px; font-size:34px; line-height:1.08; letter-spacing:-.04em; }
.direction-card p { max-width:360px; margin:0; color:#d8eaf4; font-size:17px; line-height:1.62; }
.direction-card>a { width:max-content; display:flex; align-items:center; gap:17px; margin-top:auto; padding:15px 0 6px; border-bottom:1px solid rgba(255,255,255,.45); font-size:13px; font-weight:750; }
.direction-card>a b { font-size:17px; }
.home-about { padding:112px 0; color:white; background:#0a243a; }
.home-about-shell { display:grid; grid-template-columns:.85fr 1.15fr; gap:35px 9vw; align-items:start; }
.about-copy h2 { max-width:540px; margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.about-copy>p:not(.eyebrow) { max-width:560px; margin:26px 0 0; color:#b7cbd9; font-size:18px; line-height:1.68; }
.credential-grid { display:grid; gap:12px; }
.credential-grid>div { min-height:102px; display:grid; grid-template-columns:155px 1fr; align-items:center; padding:0 26px; border:1px solid rgba(255,255,255,.13); border-radius:10px; background:rgba(255,255,255,.04); }
.credential-grid span { color:#8ed7df; font-size:18px; font-weight:800; }
.credential-grid b { color:#e0edf4; font-size:15px; }
.partner-row { grid-column:1/-1; min-height:94px; display:grid; grid-template-columns:1.4fr repeat(4,1fr); align-items:center; margin-top:27px; border-top:1px solid rgba(255,255,255,.14); border-bottom:1px solid rgba(255,255,255,.14); }
.partner-row span { color:#85a3b6; font-size:11px; font-weight:750; letter-spacing:.09em; text-transform:uppercase; }
.partner-row b { padding-left:28px; border-left:1px solid rgba(255,255,255,.12); font-size:19px; letter-spacing:-.02em; }
.client-section { padding-top:112px; padding-bottom:120px; }
.client-heading { display:grid; grid-template-columns:1.1fr .9fr; gap:8vw; align-items:end; }
.client-heading h2 { max-width:650px; margin:0; font-size:clamp(45px,4.7vw,67px); line-height:1.04; letter-spacing:-.048em; }
.client-heading>p { max-width:420px; margin:0 0 7px; color:var(--muted); font-size:18px; line-height:1.6; }
.client-carousel { position:relative; width:100vw; margin:54px 0 0 calc(50% - 50vw); padding:12px 0; overflow:hidden; background:linear-gradient(112deg,#0b2943 0%,#0d456f 48%,#0b365b 100%); box-shadow:inset 0 1px 0 rgba(255,255,255,.13),inset 0 -1px 0 rgba(111,215,225,.18),0 24px 60px rgba(8,42,70,.14); }
.client-carousel::before,.client-carousel::after { content:""; position:absolute; z-index:2; top:0; bottom:0; width:clamp(42px,8vw,128px); pointer-events:none; }
.client-carousel::before { left:0; background:linear-gradient(90deg,#0b2943 10%,rgba(11,41,67,0)); }
.client-carousel::after { right:0; background:linear-gradient(270deg,#0b365b 10%,rgba(11,54,91,0)); }
.client-carousel-track { position:relative; z-index:1; width:max-content; display:flex; animation:client-marquee 140s linear infinite; }
.client-carousel:hover .client-carousel-track { animation-play-state:paused; }
.client-carousel-set { display:flex; align-items:stretch; flex-shrink:0; }
.client-carousel-set span { min-width:max-content; min-height:96px; display:flex; align-items:center; justify-content:center; padding:20px 42px; color:rgba(255,255,255,.92); font-size:17px; font-weight:720; letter-spacing:.005em; white-space:nowrap; text-shadow:0 1px 12px rgba(0,19,36,.22); }
.client-carousel-set span::before { content:""; width:7px; height:7px; flex:0 0 auto; margin-right:15px; border-radius:50%; background:#78d6df; box-shadow:0 0 0 5px rgba(120,214,223,.09); }
@keyframes client-marquee { to { transform:translateX(-50%); } }
.client-section>small { display:block; margin-top:14px; color:#84919b; font-size:11px; }
.home-contact { padding:112px 0; color:white; background:linear-gradient(135deg,#0f6cbd,#0b4f8a 58%,#123b63); }
.home-contact-shell { display:grid; grid-template-columns:.8fr 1.2fr; column-gap:clamp(50px,8vw,110px); row-gap:32px; align-items:start; }
.contact-copy { padding-top:25px; }
.contact-copy h2 { max-width:520px; margin:0; font-size:clamp(47px,4.7vw,66px); line-height:1.03; letter-spacing:-.05em; }
.contact-copy>p:not(.eyebrow) { max-width:500px; margin:24px 0 0; color:#d1e6f4; font-size:18px; line-height:1.65; }
.contact-copy>a { display:inline-block; margin-top:32px; padding-bottom:5px; border-bottom:1px solid rgba(255,255,255,.55); font-weight:750; }
.contact-details { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.contact-details>div { position:relative; min-height:190px; display:grid; align-content:start; gap:7px; padding:24px 24px 25px 27px; overflow:hidden; border:1px solid rgba(255,255,255,.16); border-radius:10px; background:rgba(255,255,255,.09); box-shadow:0 12px 28px rgba(5,35,61,.13); }
.contact-details>div::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:#64d1dc; }
.contact-details b { color:#fff; font-size:13px; letter-spacing:.04em; text-transform:uppercase; }
.contact-details span { color:#d1e6f4; line-height:1.45; }
.contact-details a { width:max-content; color:#fff; border-bottom:1px solid rgba(255,255,255,.38); font-weight:700; }
.home-form-card { min-height:440px; padding:34px; color:var(--ink); border-radius:16px; background:white; box-shadow:0 30px 70px rgba(0,0,0,.2); }
.home-form-card .form-grid input { min-height:52px; }
.home-form-success { min-height:365px; display:flex; align-items:center; flex-direction:column; justify-content:center; text-align:center; }
.home-form-success>span { width:50px; height:50px; display:grid; place-items:center; color:white; border-radius:50%; background:#2f9c79; font-size:24px; }
.home-form-success h3 { margin:16px 0 0; font-size:30px; }
.home-form-success p { max-width:520px; margin:13px 0 0; color:var(--muted); font-size:15px; line-height:1.6; }
.home-form-success button { margin-top:22px; color:var(--blue); border:0; border-bottom:1px solid currentColor; background:transparent; cursor:pointer; font-weight:700; }

/* Invoice digitization page */
.invoice-page { overflow:hidden; }
.invoice-hero { min-height:720px; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr); align-items:center; gap:clamp(55px,7vw,115px); padding:105px clamp(28px,7vw,112px) 88px; background:radial-gradient(circle at 78% 43%,#e2f3f8 0,#f7fbfd 31%,rgba(255,255,255,0) 61%); }
.invoice-hero-copy { max-width:790px; }
.invoice-hero-copy h1 { margin:0; font-size:clamp(57px,5.7vw,87px); line-height:.98; letter-spacing:-.058em; font-weight:720; }
.invoice-hero-copy h1 em { color:var(--blue); font-style:normal; }
.invoice-hero-copy>p:not(.eyebrow) { max-width:690px; margin:28px 0 0; color:var(--muted); font-size:20px; line-height:1.65; }
.invoice-hero-proof { display:flex; margin-top:50px; }
.invoice-hero-proof span { min-width:145px; display:flex; flex-direction:column; margin-right:25px; padding-right:25px; border-right:1px solid var(--line); }
.invoice-hero-proof span:last-child { margin:0; padding:0; border:0; }
.invoice-hero-proof b { font-size:21px; letter-spacing:-.03em; }
.invoice-hero-proof small { margin-top:4px; color:var(--muted); font-size:11px; }
.invoice-visual { position:relative; min-height:525px; display:grid; place-items:center; }
.invoice-visual::before { content:""; position:absolute; width:430px; height:430px; border:1px solid #bcdae7; border-radius:50%; background:rgba(255,255,255,.42); box-shadow:0 30px 70px rgba(31,87,122,.08); }
.invoice-paper { position:absolute; z-index:3; left:5px; width:240px; height:310px; padding:30px 27px; border:1px solid #d1e0e8; border-radius:8px; background:white; box-shadow:0 26px 52px rgba(27,73,103,.17); transform:rotate(-4deg); }
.invoice-paper>span { color:var(--blue); font-size:12px; font-weight:850; letter-spacing:.12em; }
.invoice-paper>i { display:block; height:6px; margin-top:22px; border-radius:6px; background:#d9e5ec; }
.invoice-paper>i:nth-of-type(1) { width:80%; }
.invoice-paper>i:nth-of-type(2) { width:100%; margin-top:12px; }
.invoice-paper>i:nth-of-type(3) { width:65%; margin-top:12px; }
.invoice-paper>div { position:absolute; left:24px; right:24px; bottom:28px; display:flex; flex-direction:column; padding:17px; border-radius:7px; background:#eaf5fb; }
.invoice-paper>div b { color:var(--blue-dark); font-size:23px; }
.invoice-paper>div small { margin-top:3px; color:#5e7688; font-size:10px; }
.data-flow { position:absolute; z-index:2; left:220px; right:205px; display:flex; justify-content:space-around; }
.data-flow::before { content:""; position:absolute; top:50%; left:0; right:0; height:1px; border-top:2px dashed #56b8c6; }
.data-flow i { z-index:1; width:10px; height:10px; border-radius:50%; background:#49bcc8; box-shadow:0 0 0 5px #e1f3f5; }
.system-destination { position:absolute; z-index:3; right:-8px; width:230px; min-height:185px; display:flex; align-items:center; flex-direction:column; justify-content:center; padding:25px; color:white; border-radius:16px; background:linear-gradient(145deg,#0f6cbd,#0a4c83); box-shadow:0 25px 52px rgba(15,108,189,.25); text-align:center; }
.system-destination small { color:#a7dce9; font-size:9px; font-weight:800; letter-spacing:.13em; }
.system-destination b { margin-top:12px; font-size:20px; }
.system-destination span { width:37px; height:37px; display:grid; place-items:center; margin-top:20px; color:#0b5c66; border-radius:50%; background:#8de0c1; font-weight:900; }
.invoice-chip { position:absolute; z-index:5; min-width:195px; padding:15px 18px; border:1px solid rgba(255,255,255,.9); border-radius:10px; background:rgba(255,255,255,.95); box-shadow:0 16px 34px rgba(27,75,105,.13); }
.invoice-chip small { display:block; color:var(--muted); font-size:10px; }
.invoice-chip b { display:block; margin-top:4px; font-size:12px; }
.chip-verify { top:45px; right:6px; }
.chip-integrate { bottom:44px; left:72px; }
.invoice-fit { padding-top:112px; padding-bottom:118px; }
.invoice-value-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:55px; }
.invoice-value-grid article { min-height:295px; padding:32px; border:1px solid var(--line); border-radius:13px; background:white; }
.invoice-value-grid article>span { color:var(--cyan); font-size:11px; font-weight:800; letter-spacing:.1em; }
.invoice-value-grid h3 { margin:55px 0 15px; font-size:29px; line-height:1.12; letter-spacing:-.03em; }
.invoice-value-grid p { margin:0; color:var(--muted); font-size:17px; line-height:1.65; }
.invoice-capabilities { padding:112px 0 118px; color:white; background:#0a243a; }
.capability-heading { display:grid; grid-template-columns:1.08fr .92fr; gap:9vw; align-items:end; }
.capability-heading h2 { max-width:680px; margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.capability-heading>p { max-width:520px; margin:0 0 7px; color:#b7cbd9; font-size:18px; line-height:1.65; }
.capability-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:13px; margin-top:55px; }
.capability-grid article { min-height:245px; padding:31px; border:1px solid rgba(255,255,255,.13); border-radius:12px; background:rgba(255,255,255,.04); }
.capability-grid article>span { color:#82d7df; font-size:11px; font-weight:800; letter-spacing:.1em; }
.capability-grid h3 { margin:45px 0 13px; color:#f3f8fb; font-size:27px; letter-spacing:-.03em; }
.capability-grid p { max-width:500px; margin:0; color:#acc2d1; font-size:16px; line-height:1.65; }
.integration-section { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(50px,8vw,110px); align-items:center; padding-top:112px; padding-bottom:118px; }
.integration-copy h2 { margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.integration-copy>p:not(.eyebrow) { margin:25px 0 0; color:var(--muted); font-size:18px; line-height:1.68; }
.integration-cloud { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.integration-cloud span { min-height:92px; display:grid; place-items:center; padding:15px; color:#345064; border-right:1px solid var(--line); border-bottom:1px solid var(--line); font-size:15px; font-weight:750; text-align:center; }
.integration-cloud span:last-child { color:var(--blue); background:#eef7fc; }
.invoice-calculator-card { overflow:visible; }
.invoice-fields { display:grid; gap:24px; padding:28px 30px 30px; }
.invoice-fields fieldset { min-width:0; margin:0; padding:0; border:0; }
.invoice-fields legend { margin-bottom:11px; color:#334b5d; font-size:14px; font-weight:750; }
.invoice-number-field,.system-field { min-height:79px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:15px 0 2px; border-top:1px solid #e6edf2; }
.invoice-number-field>span,.system-field>span { display:flex; flex-direction:column; }
.invoice-number-field b,.system-field b { color:#334b5d; font-size:15px; }
.invoice-number-field small,.system-field small { margin-top:4px; color:var(--muted); font-size:11px; }
.invoice-number-field input { width:150px; min-height:48px; padding:0 14px; color:var(--ink); border:1px solid #cbd8e2; border-radius:6px; outline:0; font-size:17px; font-weight:750; text-align:right; }
.system-field { align-items:stretch; flex-direction:column; }
.system-field input { min-height:49px; padding:0 14px; border:1px solid #cbd8e2; border-radius:6px; outline:0; font-size:15px; }
.invoice-number-field input:focus,.system-field input:focus { border-color:var(--blue); box-shadow:0 0 0 3px #dcebfa; }
.invoice-result { min-height:790px; display:flex; align-items:center; flex-direction:column; justify-content:center; padding:48px 40px; text-align:center; }
.invoice-result h2 { max-width:570px; margin:9px 0 0; font-size:clamp(30px,3vw,41px); line-height:1.12; letter-spacing:-.04em; }
.invoice-result-price { width:100%; max-width:550px; display:flex; align-items:center; flex-direction:column; margin:24px 0 16px; padding:25px; border-radius:12px; background:#eaf5fb; }
.invoice-result-price>small { color:#4e687a; font-size:13px; }
.invoice-result-price strong { margin-top:4px; color:var(--blue-dark); font-size:48px; line-height:1; letter-spacing:-.05em; }
.invoice-result-price em { font-size:18px; font-style:normal; letter-spacing:0; }
.invoice-result-price>span { margin-top:6px; color:#71818d; font-size:11px; }
.invoice-result-details { width:100%; max-width:550px; display:grid; grid-template-columns:1fr 1fr; gap:11px; }
.invoice-result-details>div { min-height:90px; display:flex; align-items:flex-start; flex-direction:column; justify-content:center; padding:15px 17px; border:1px solid var(--line); border-radius:9px; text-align:left; }
.invoice-result-details small { color:var(--muted); font-size:10px; }
.invoice-result-details b { margin-top:5px; color:#193e59; font-size:14px; line-height:1.4; }
.invoice-result>p:not(.result-welcome) { max-width:535px; margin:18px 0 12px; color:var(--muted); font-size:15px; line-height:1.6; }
.invoice-result>button { margin:18px 0 8px; padding:0; color:var(--blue); border:0; border-bottom:1px solid currentColor; background:none; cursor:pointer; font-weight:700; }
.invoice-result>.form-note { max-width:520px; }
.invoice-final { background:linear-gradient(135deg,#0f6cbd,#0a528f 56%,#123b63); }

/* Document scanning page */
.scan-page { overflow:hidden; background:#fff; }
.scan-hero { min-height:720px; display:grid; grid-template-columns:minmax(0,1.06fr) minmax(440px,.94fr); align-items:center; gap:clamp(55px,7vw,115px); padding:105px clamp(28px,7vw,112px) 88px; background:radial-gradient(circle at 78% 43%,#e2f3f8 0,#f7fbfd 31%,rgba(255,255,255,0) 61%); }
.scan-hero-copy { max-width:810px; }
.scan-hero-copy h1 { margin:0; font-size:clamp(57px,5.7vw,87px); line-height:.98; letter-spacing:-.058em; font-weight:720; }
.scan-hero-copy h1 em { color:var(--blue); font-style:normal; }
.scan-hero-copy>p:not(.eyebrow) { max-width:700px; margin:28px 0 0; color:var(--muted); font-size:20px; line-height:1.65; }
.scan-proof { display:flex; margin-top:50px; }
.scan-proof span { min-width:150px; display:flex; flex-direction:column; margin-right:25px; padding-right:25px; border-right:1px solid var(--line); }
.scan-proof span:last-child { margin:0; padding:0; border:0; }
.scan-proof b { font-size:21px; letter-spacing:-.03em; }
.scan-proof small { margin-top:4px; color:var(--muted); font-size:11px; }
.scan-visual { position:relative; min-height:530px; display:grid; place-items:center; }
.scan-visual::before { content:""; position:absolute; width:435px; height:435px; border:1px solid #bcdae7; border-radius:50%; background:rgba(255,255,255,.46); box-shadow:0 30px 70px rgba(31,87,122,.08); }
.scan-stack { position:absolute; z-index:3; left:0; width:225px; height:285px; }
.scan-stack>i { position:absolute; inset:11px 4px -11px 18px; border:1px solid #c6d9e4; border-radius:8px; background:#e5edf2; transform:rotate(4deg); }
.scan-stack>i:nth-child(2) { inset:5px 10px -5px 10px; background:#f1f5f8; transform:rotate(-3deg); }
.scan-stack>div { position:absolute; inset:0; z-index:2; display:flex; flex-direction:column; padding:31px 25px; border:1px solid #d0dee7; border-radius:8px; background:white; box-shadow:0 25px 48px rgba(26,72,102,.18); transform:rotate(-2deg); }
.scan-stack span { color:var(--blue); font-size:11px; font-weight:850; letter-spacing:.12em; }
.scan-stack b { margin-top:auto; color:#173d59; font-size:28px; }
.scan-stack small { margin-top:6px; color:var(--muted); font-size:11px; }
.scan-beam { position:absolute; z-index:2; left:205px; right:215px; display:flex; justify-content:space-around; }
.scan-beam::before { content:""; position:absolute; top:50%; left:0; right:0; border-top:2px dashed #4fb7c4; }
.scan-beam i { z-index:1; width:10px; height:10px; border-radius:50%; background:#49bcc8; box-shadow:0 0 0 5px #e1f3f5; }
.scan-file { position:absolute; z-index:3; right:-5px; width:245px; min-height:245px; display:flex; flex-direction:column; padding:27px; color:white; border-radius:16px; background:linear-gradient(145deg,#0f6cbd,#0a4c83); box-shadow:0 25px 52px rgba(15,108,189,.25); }
.scan-file>span { color:#9fe2e7; font-size:10px; font-weight:850; letter-spacing:.13em; }
.scan-file>b { max-width:175px; margin-top:14px; font-size:20px; line-height:1.2; }
.scan-file>div { display:grid; gap:7px; margin-top:24px; }
.scan-file>div i { height:5px; border-radius:5px; background:rgba(255,255,255,.36); }
.scan-file>div i:nth-child(2) { width:82%; }
.scan-file>div i:nth-child(3) { width:91%; }
.scan-file>div i:nth-child(4) { width:65%; }
.scan-file>small { margin-top:auto; color:#bcdbe9; font-size:9px; line-height:1.5; }
.scan-chip { position:absolute; z-index:5; min-width:205px; padding:15px 18px; border:1px solid rgba(255,255,255,.9); border-radius:10px; background:rgba(255,255,255,.96); box-shadow:0 16px 34px rgba(27,75,105,.13); }
.scan-chip small { display:block; color:var(--muted); font-size:10px; }
.scan-chip b { display:block; margin-top:4px; font-size:12px; }
.scan-chip-location { top:42px; right:4px; }
.scan-chip-system { bottom:42px; left:70px; }
.scan-types { padding-top:112px; padding-bottom:118px; }
.scan-type-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:55px; }
.scan-type-grid article { min-height:300px; padding:32px; border:1px solid var(--line); border-radius:13px; background:white; }
.scan-type-grid article>span { color:var(--cyan); font-size:12px; font-weight:800; letter-spacing:.1em; }
.scan-type-grid h3 { margin:55px 0 15px; font-size:29px; line-height:1.12; letter-spacing:-.03em; }
.scan-type-grid p { margin:0; color:var(--muted); font-size:17px; line-height:1.65; }
.scan-process { padding:112px 0 118px; color:white; background:#0a243a; }
.scan-process-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-top:55px; }
.scan-process-grid article { min-height:255px; padding:29px; border:1px solid rgba(255,255,255,.13); border-radius:12px; background:rgba(255,255,255,.04); }
.scan-process-grid article>span { color:#82d7df; font-size:11px; font-weight:800; letter-spacing:.1em; }
.scan-process-grid h3 { margin:43px 0 12px; color:#f3f8fb; font-size:25px; line-height:1.13; letter-spacing:-.03em; }
.scan-process-grid p { margin:0; color:#acc2d1; font-size:16px; line-height:1.65; }
.scan-delivery { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(50px,8vw,110px); align-items:center; padding-top:112px; padding-bottom:118px; }
.scan-delivery-copy h2 { margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.scan-delivery-copy>p:not(.eyebrow) { margin:25px 0 0; color:var(--muted); font-size:18px; line-height:1.68; }
.scan-delivery-copy>a { width:max-content; display:flex; align-items:center; gap:14px; margin-top:28px; padding-bottom:6px; color:var(--blue); border-bottom:1px solid #8cbbe1; font-size:14px; font-weight:750; }
.scan-delivery-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.scan-delivery-grid article { min-height:150px; display:flex; flex-direction:column; justify-content:center; padding:24px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.scan-delivery-grid span { color:var(--blue); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.scan-delivery-grid b { margin-top:13px; color:#345064; font-size:16px; line-height:1.5; }
.scan-references { padding:105px 0 110px; color:white; background:#0f6cbd; }
.scan-reference-shell { display:grid; grid-template-columns:.86fr 1.14fr; gap:clamp(50px,8vw,110px); align-items:center; }
.scan-reference-shell h2 { max-width:590px; margin:0; font-size:clamp(45px,4.6vw,65px); line-height:1.04; letter-spacing:-.048em; }
.reference-list { border-top:1px solid rgba(255,255,255,.24); }
.reference-list span { min-height:95px; display:flex; flex-direction:column; justify-content:center; padding:16px 22px; border-bottom:1px solid rgba(255,255,255,.24); }
.reference-list small { color:#b9d9ee; font-size:10px; letter-spacing:.08em; text-transform:uppercase; }
.reference-list b { margin-top:7px; font-size:19px; line-height:1.35; }
.scan-calculator-card { overflow:visible; }
.scan-fields { display:grid; gap:0; padding:20px 30px 30px; }
.scan-number-field { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:13px 0; border-bottom:1px solid #e6edf2; }
.scan-number-field>span { display:flex; flex-direction:column; }
.scan-number-field b { color:#334b5d; font-size:15px; }
.scan-number-field small { max-width:360px; margin-top:4px; color:var(--muted); font-size:11px; line-height:1.4; }
.scan-number-field input { width:150px; min-height:47px; padding:0 14px; color:var(--ink); border:1px solid #cbd8e2; border-radius:6px; outline:0; font-size:17px; font-weight:750; text-align:right; }
.scan-number-field input:focus,.scan-select-grid select:focus { border-color:var(--blue); box-shadow:0 0 0 3px #dcebfa; }
.scan-input-with-unit { display:flex; align-items:center; gap:8px; }
.scan-input-with-unit input { width:118px; }
.scan-input-with-unit>span { min-width:36px; color:#607487; font-size:11px; font-weight:800; text-transform:uppercase; }
.scan-percent-summary { margin:13px 0 3px; padding:12px 14px; color:#456173; border-radius:7px; background:#eff6fa; font-size:12px; line-height:1.5; }
.scan-percent-summary.invalid { color:#9b2c2c; background:#fff0f0; }
.scan-select-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding-top:23px; }
.scan-select-grid label { display:flex; flex-direction:column; gap:8px; color:#334b5d; font-size:12px; font-weight:700; }
.scan-select-grid select { min-width:0; min-height:49px; padding:0 13px; color:var(--ink); border:1px solid #cbd8e2; border-radius:6px; background:white; outline:0; }
.scan-select-grid label>small { color:var(--muted); font-size:10px; font-weight:500; line-height:1.45; }
.scan-result { min-height:1020px; display:flex; align-items:center; flex-direction:column; justify-content:center; padding:50px 40px; text-align:center; }
.scan-result h2 { max-width:570px; margin:9px 0 0; font-size:clamp(30px,3vw,41px); line-height:1.12; letter-spacing:-.04em; }
.scan-result-price { width:100%; max-width:550px; display:flex; align-items:center; flex-direction:column; margin:24px 0 16px; padding:25px; border-radius:12px; background:#eaf5fb; }
.scan-result-price>small { color:#4e687a; font-size:13px; }
.scan-result-price strong { margin-top:4px; color:var(--blue-dark); font-size:48px; line-height:1; letter-spacing:-.05em; }
.scan-result-price em { font-size:21px; font-style:normal; letter-spacing:0; }
.scan-result-price>span { margin-top:6px; color:#71818d; font-size:11px; }
.scan-result-details { width:100%; max-width:550px; display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.scan-result-details>div { min-height:82px; display:flex; align-items:flex-start; flex-direction:column; justify-content:center; padding:14px 16px; border:1px solid var(--line); border-radius:9px; text-align:left; }
.scan-result-details small { color:var(--muted); font-size:10px; }
.scan-result-details b { margin-top:5px; color:#193e59; font-size:15px; line-height:1.4; }
.scan-result>p:not(.result-welcome) { max-width:535px; margin:18px 0 12px; color:var(--muted); font-size:15px; line-height:1.6; }
.scan-result .scan-onsite-note { max-width:550px; margin:0 0 16px; padding:14px 16px; color:#6e5325; border-left:3px solid #d9a441; background:#fff8e9; font-size:13px; line-height:1.5; text-align:left; }
.scan-result .scan-onsite-note b { display:block; margin-bottom:3px; color:#5e4317; }
.scan-result>button { margin:18px 0 8px; padding:0; color:var(--blue); border:0; border-bottom:1px solid currentColor; background:none; cursor:pointer; font-weight:700; }
.scan-result>.form-note { max-width:520px; }
.scan-final { background:linear-gradient(135deg,#0f6cbd,#0a528f 56%,#123b63); }

/* Digitization solutions page */
.solution-page { overflow:hidden; background:white; }
.solution-hero { min-height:735px; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr); align-items:center; gap:clamp(55px,7vw,115px); padding:105px clamp(28px,7vw,112px) 88px; background:radial-gradient(circle at 78% 43%,#e2f3f8 0,#f7fbfd 31%,rgba(255,255,255,0) 61%); }
.solution-hero-copy { max-width:810px; }
.solution-hero-copy h1 { margin:0; font-size:clamp(57px,5.7vw,87px); line-height:.98; letter-spacing:-.058em; font-weight:720; }
.solution-hero-copy h1 em { color:var(--blue); font-style:normal; }
.solution-hero-copy>p:not(.eyebrow) { max-width:710px; margin:28px 0 0; color:var(--muted); font-size:20px; line-height:1.65; }
.solution-proof { display:flex; margin-top:50px; }
.solution-proof span { min-width:150px; display:flex; flex-direction:column; margin-right:25px; padding-right:25px; border-right:1px solid var(--line); }
.solution-proof span:last-child { margin:0; padding:0; border:0; }
.solution-proof b { font-size:21px; letter-spacing:-.03em; }
.solution-proof small { margin-top:4px; color:var(--muted); font-size:11px; }
.solution-visual { position:relative; min-height:530px; display:grid; place-items:center; }
.solution-visual::before { content:""; position:absolute; width:445px; height:445px; border:1px solid #b9dae8; border-radius:50%; background:rgba(255,255,255,.43); box-shadow:0 30px 70px rgba(31,87,122,.08); }
.solution-source,.solution-target { position:absolute; z-index:3; width:178px; min-height:152px; display:flex; flex-direction:column; justify-content:center; padding:21px; border:1px solid #cfdee7; border-radius:12px; background:white; box-shadow:0 20px 40px rgba(27,73,103,.14); }
.solution-source { left:-3px; }
.solution-target { right:-3px; color:white; border-color:transparent; background:linear-gradient(145deg,#0f6cbd,#0a4c83); }
.solution-source small,.solution-target small,.solution-engine small { color:var(--cyan); font-size:9px; font-weight:850; letter-spacing:.12em; }
.solution-source b,.solution-target b { margin-top:10px; font-size:19px; }
.solution-source span,.solution-target span { margin-top:7px; color:var(--muted); font-size:10px; line-height:1.45; }
.solution-target small { color:#a9dfe9; }
.solution-target span { color:#c5dfed; }
.solution-engine { position:relative; z-index:4; width:245px; min-height:245px; display:flex; align-items:center; flex-direction:column; justify-content:center; padding:25px; color:white; border-radius:50%; background:linear-gradient(145deg,#0b385c,#0a243a); box-shadow:0 28px 58px rgba(8,40,64,.27); text-align:center; }
.solution-engine b { max-width:180px; margin-top:9px; font-size:21px; line-height:1.15; }
.solution-engine>div { display:flex; gap:6px; margin-top:21px; }
.solution-engine>div span { padding:7px 8px; color:#b8d3e1; border:1px solid rgba(255,255,255,.14); border-radius:5px; font-size:8px; }
.solution-line { position:absolute; z-index:2; top:50%; height:1px; border-top:2px dashed #4fb7c4; }
.line-one { left:155px; right:58%; }
.line-two { left:58%; right:155px; }
.solution-badge { position:absolute; z-index:5; min-width:155px; padding:13px 16px; border:1px solid rgba(255,255,255,.9); border-radius:10px; background:rgba(255,255,255,.96); box-shadow:0 16px 34px rgba(27,75,105,.13); }
.solution-badge small { display:block; color:var(--muted); font-size:9px; }
.solution-badge b { display:block; margin-top:4px; font-size:12px; }
.badge-archive { top:45px; right:13px; }
.badge-connect { bottom:43px; left:73px; }
.solution-value { padding-top:112px; padding-bottom:118px; }
.solution-value-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:13px; margin-top:55px; }
.solution-value-grid article { min-height:300px; padding:30px; border:1px solid var(--line); border-radius:13px; background:white; }
.solution-value-grid article>span { color:var(--cyan); font-size:11px; font-weight:800; letter-spacing:.1em; }
.solution-value-grid h3 { margin:55px 0 14px; font-size:26px; line-height:1.12; letter-spacing:-.03em; }
.solution-value-grid p { margin:0; color:var(--muted); font-size:16px; line-height:1.65; }
.solution-products { padding:112px 0 118px; color:white; background:#0a243a; }
.solution-product-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; margin-top:55px; }
.solution-product-grid article { min-height:520px; display:flex; flex-direction:column; padding:31px; border:1px solid rgba(255,255,255,.13); border-radius:13px; background:rgba(255,255,255,.04); }
.solution-product-grid article>span { color:#82d7df; font-size:11px; font-weight:800; letter-spacing:.1em; }
.solution-product-grid .product-type { margin:50px 0 0; color:#86a8bb; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.solution-product-grid h3 { margin:10px 0 15px; color:#f3f8fb; font-size:29px; line-height:1.1; letter-spacing:-.035em; }
.solution-product-grid h3+p { margin:0; color:#acc2d1; font-size:16px; line-height:1.65; }
.solution-product-grid ul { display:grid; gap:11px; margin:auto 0 0; padding:28px 0 0; color:#d4e3ec; border-top:1px solid rgba(255,255,255,.11); list-style:none; font-size:13px; }
.solution-product-grid li::before { content:"✓"; margin-right:9px; color:#69d1bc; font-weight:900; }
.solution-documents { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(50px,8vw,110px); align-items:center; padding-top:112px; padding-bottom:118px; }
.solution-doc-copy h2 { margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.solution-doc-copy>p:not(.eyebrow) { margin:25px 0 0; color:var(--muted); font-size:18px; line-height:1.68; }
.solution-doc-grid { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.solution-doc-grid span { min-height:92px; display:flex; align-items:center; padding:18px 21px; color:#345064; border-right:1px solid var(--line); border-bottom:1px solid var(--line); font-size:14px; font-weight:750; line-height:1.4; }
.solution-doc-grid span::before { content:""; width:7px; height:7px; flex:0 0 auto; margin-right:12px; border-radius:2px; background:var(--cyan); transform:rotate(45deg); }
.solution-integration { padding:112px 0 118px; color:white; background:#0f6cbd; }
.solution-integration-shell { display:grid; grid-template-columns:.78fr 1.22fr; gap:clamp(50px,8vw,110px); align-items:center; }
.solution-integration-copy h2 { margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.solution-integration-copy>p:not(.eyebrow) { margin:25px 0 0; color:#d5e8f4; font-size:18px; line-height:1.65; }
.solution-architecture { display:grid; grid-template-columns:1fr 1fr 1fr; overflow:hidden; border:1px solid rgba(255,255,255,.28); border-radius:14px; background:rgba(255,255,255,.06); }
.solution-architecture>div { display:flex; flex-direction:column; padding:25px; border-right:1px solid rgba(255,255,255,.18); }
.solution-architecture>div:last-child { border:0; }
.solution-architecture small { margin-bottom:17px; color:#b9d9ee; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.solution-architecture span { min-height:45px; display:flex; align-items:center; margin-bottom:8px; padding:9px 11px; border:1px solid rgba(255,255,255,.16); border-radius:7px; background:rgba(255,255,255,.06); font-size:12px; }
.solution-architecture .architecture-core { background:rgba(8,43,70,.22); }
.solution-architecture .architecture-core span { border-color:rgba(128,229,222,.25); }
.solution-steps { padding-top:112px; padding-bottom:118px; }
.solution-step-list { display:grid; grid-template-columns:repeat(4,1fr); margin:60px 0 0; padding:0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); list-style:none; }
.solution-step-list li { min-height:285px; padding:30px; border-right:1px solid var(--line); }
.solution-step-list li:last-child { border:0; }
.solution-step-list span { color:var(--cyan); font-size:11px; font-weight:800; letter-spacing:.1em; }
.solution-step-list b { display:block; margin-top:50px; font-size:21px; line-height:1.25; }
.solution-step-list p { margin:13px 0 0; color:var(--muted); font-size:15px; line-height:1.65; }
.solution-contact { padding:112px 0; color:white; background:#092945; }
.solution-contact-shell { display:grid; grid-template-columns:.75fr 1.25fr; gap:clamp(50px,8vw,110px); align-items:start; }
.solution-contact-copy { padding-top:25px; }
.solution-contact-copy h2 { margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.solution-contact-copy>p:not(.eyebrow) { margin:25px 0 0; color:#b7cbd9; font-size:18px; line-height:1.65; }
.solution-contact-copy>div { display:grid; gap:13px; margin-top:34px; }
.solution-contact-copy a { width:max-content; display:flex; align-items:center; gap:13px; padding-bottom:5px; color:#d6eaf5; border-bottom:1px solid rgba(255,255,255,.4); font-size:13px; font-weight:700; }
.solution-form-card { min-height:690px; overflow:hidden; color:var(--ink); border-radius:17px; background:white; box-shadow:0 30px 70px rgba(0,0,0,.23); }
.solution-qualifier-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; padding:30px 30px 17px; }
.solution-qualifier-grid label,.solution-description { display:flex; flex-direction:column; gap:7px; color:#334b5d; font-size:13px; font-weight:700; }
.solution-qualifier-grid input,.solution-qualifier-grid select,.solution-description textarea { width:100%; min-height:50px; padding:0 13px; color:var(--ink); border:1px solid #cbd8e2; border-radius:6px; background:white; outline:0; font-size:14px; font-weight:400; }
.solution-qualifier-grid input:focus,.solution-qualifier-grid select:focus,.solution-description textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px #dcebfa; }
.solution-description { padding:0 30px 25px; }
.solution-description textarea { min-height:105px; padding-top:12px; resize:vertical; }
.solution-success { min-height:690px; padding:45px; }

/* Digitization landing page */
.digitization-landing-page { overflow:hidden; background:white; }
.digitization-landing-hero { min-height:690px; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr); align-items:center; gap:clamp(55px,7vw,110px); padding:92px clamp(28px,7vw,112px); background:radial-gradient(circle at 78% 43%,#e3f5f7 0,#f6fbfd 31%,rgba(255,255,255,0) 62%); }
.digitization-landing-copy { max-width:790px; }
.digitization-landing-copy h1 { margin:0; font-size:clamp(57px,5.7vw,87px); line-height:.98; letter-spacing:-.058em; font-weight:720; }
.digitization-landing-copy h1 em { color:var(--blue); font-style:normal; }
.digitization-landing-copy>p:not(.eyebrow) { max-width:720px; margin:28px 0 0; color:var(--muted); font-size:20px; line-height:1.65; }
.digitization-overview { display:grid; grid-template-columns:1fr 1fr; gap:13px; }
.digitization-overview a { min-height:190px; display:flex; flex-direction:column; padding:25px; border:1px solid var(--line); border-radius:13px; background:rgba(255,255,255,.94); box-shadow:0 18px 40px rgba(30,80,116,.08); transition:.2s ease; }
.digitization-overview a:hover { transform:translateY(-3px); border-color:#9bc6df; box-shadow:0 22px 46px rgba(30,80,116,.13); }
.digitization-overview span { color:var(--cyan); font-size:12px; font-weight:800; letter-spacing:.1em; }
.digitization-overview small { margin-top:auto; color:#73889a; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.digitization-overview b { margin-top:7px; font-size:21px; line-height:1.18; letter-spacing:-.025em; }
.digitization-services { padding-top:112px; padding-bottom:118px; }
.digitization-service-grid { display:grid; grid-template-columns:1fr 1fr; gap:15px; margin-top:58px; }
.digitization-service-grid article { min-height:500px; display:flex; flex-direction:column; padding:34px; border:1px solid var(--line); border-radius:14px; background:white; }
.digitization-card-head { display:flex; align-items:center; justify-content:space-between; }
.digitization-card-head span { color:var(--cyan); font-size:12px; font-weight:800; letter-spacing:.1em; }
.digitization-card-head small { padding:7px 10px; color:var(--blue); border-radius:999px; background:#eaf4fb; font-size:10px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.digitization-service-grid h2 { margin:58px 0 17px; font-size:34px; line-height:1.08; letter-spacing:-.035em; }
.digitization-service-grid p { margin:0; color:var(--muted); font-size:17px; line-height:1.65; }
.digitization-service-grid ul { display:grid; gap:10px; margin:28px 0 30px; padding:23px 0 0; border-top:1px solid var(--line); color:#385267; list-style:none; font-size:14px; }
.digitization-service-grid li::before { content:"✓"; margin-right:9px; color:#258f77; font-weight:900; }
.digitization-service-grid article>a { width:max-content; margin-top:auto; padding-bottom:5px; color:var(--blue); border-bottom:1px solid #8cbbe1; font-weight:750; }
.digitization-contact { padding:112px 0; color:white; background:#092945; }
.digitization-contact-shell { display:grid; grid-template-columns:.75fr 1.25fr; gap:clamp(50px,8vw,110px); align-items:start; }
.digitization-contact-copy { padding-top:25px; }
.digitization-contact-copy h2 { margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.digitization-contact-copy>p:not(.eyebrow) { margin:25px 0 0; color:#b7cbd9; font-size:18px; line-height:1.65; }
.digitization-contact-copy>a { display:inline-block; margin-top:31px; padding-bottom:5px; color:#d6eaf5; border-bottom:1px solid rgba(255,255,255,.45); font-weight:750; }
.digitization-form-card { min-height:690px; overflow:hidden; color:var(--ink); border-radius:17px; background:white; box-shadow:0 30px 70px rgba(0,0,0,.23); }
.digitization-request-fields { display:grid; gap:14px; padding:30px; }
.digitization-request-fields label { display:flex; flex-direction:column; gap:7px; color:#334b5d; font-size:13px; font-weight:700; }
.digitization-request-fields select,.digitization-request-fields textarea { width:100%; padding:0 13px; color:var(--ink); border:1px solid #cbd8e2; border-radius:6px; background:white; outline:0; font-size:14px; font-weight:400; }
.digitization-request-fields select { min-height:50px; }
.digitization-request-fields textarea { min-height:120px; padding-top:12px; resize:vertical; }
.digitization-request-fields select:focus,.digitization-request-fields textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px #dcebfa; }
.digitization-success { min-height:690px; padding:45px; }

/* Doxis electronic archive page */
.archive-page { overflow:hidden; background:white; }
.archive-hero { min-height:735px; display:grid; grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr); align-items:center; gap:clamp(55px,7vw,115px); padding:105px clamp(28px,7vw,112px) 88px; background:radial-gradient(circle at 78% 43%,#e4f5f0 0,#f7fbfd 32%,rgba(255,255,255,0) 61%); }
.archive-hero-copy { max-width:810px; }
.archive-hero-copy h1 { margin:0; font-size:clamp(57px,5.7vw,87px); line-height:.98; letter-spacing:-.058em; font-weight:720; }
.archive-hero-copy h1 em { color:var(--blue); font-style:normal; }
.archive-hero-copy>p:not(.eyebrow) { max-width:710px; margin:28px 0 0; color:var(--muted); font-size:20px; line-height:1.65; }
.archive-proof { display:flex; margin-top:50px; }
.archive-proof span { max-width:200px; min-width:155px; display:flex; flex-direction:column; margin-right:23px; padding-right:23px; border-right:1px solid var(--line); }
.archive-proof span:last-child { margin:0; padding:0; border:0; }
.archive-proof b { font-size:18px; letter-spacing:-.025em; }
.archive-proof small { margin-top:5px; color:var(--muted); font-size:10px; line-height:1.4; }
.archive-visual { position:relative; min-height:530px; display:grid; place-items:center; }
.archive-visual::before { content:""; position:absolute; width:445px; height:445px; border:1px solid #b9dacd; border-radius:50%; background:rgba(255,255,255,.46); box-shadow:0 30px 70px rgba(31,87,122,.08); }
.archive-system-card,.archive-storage { position:absolute; z-index:3; width:175px; min-height:150px; display:flex; flex-direction:column; justify-content:center; padding:20px; border:1px solid #cfdee7; border-radius:12px; background:white; box-shadow:0 20px 40px rgba(27,73,103,.14); }
.archive-system-card { left:-3px; }
.archive-storage { right:-3px; color:white; border-color:transparent; background:linear-gradient(145deg,#167a72,#0d5c64); }
.archive-system-card small,.archive-storage small,.archive-core>span { color:var(--cyan); font-size:9px; font-weight:850; letter-spacing:.12em; }
.archive-system-card b,.archive-storage b { margin-top:10px; font-size:18px; line-height:1.15; }
.archive-system-card span,.archive-storage span { margin-top:7px; color:var(--muted); font-size:10px; line-height:1.45; }
.archive-storage small { color:#a7e0d7; }
.archive-storage span { color:#c4e5e3; }
.archive-core { position:relative; z-index:4; width:245px; min-height:245px; display:flex; align-items:center; flex-direction:column; justify-content:center; padding:25px; color:white; border-radius:24px; background:linear-gradient(145deg,#0b385c,#0a243a); box-shadow:0 28px 58px rgba(8,40,64,.27); text-align:center; }
.archive-core b { max-width:180px; margin-top:10px; font-size:22px; line-height:1.15; }
.archive-core>div { width:155px; display:grid; grid-template-columns:1fr 1fr; gap:7px; margin-top:22px; }
.archive-core i { height:28px; border:1px solid rgba(255,255,255,.15); border-radius:4px; background:rgba(255,255,255,.05); }
.archive-core small { margin-top:16px; color:#a9c6d7; font-size:9px; }
.archive-connector { position:absolute; z-index:2; top:50%; height:1px; border-top:2px dashed #4fb7a9; }
.connector-left { left:150px; right:59%; }
.connector-right { left:59%; right:150px; }
.archive-badge { position:absolute; z-index:5; min-width:155px; padding:13px 16px; border:1px solid rgba(255,255,255,.9); border-radius:10px; background:rgba(255,255,255,.96); box-shadow:0 16px 34px rgba(27,75,105,.13); }
.archive-badge small { display:block; color:var(--muted); font-size:9px; }
.archive-badge b { display:block; margin-top:4px; font-size:12px; }
.archive-search { top:45px; right:13px; }
.archive-trace { bottom:43px; left:73px; }
.archive-scope { padding-top:112px; padding-bottom:118px; }
.archive-scope-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:55px; }
.archive-scope-grid article { min-height:300px; padding:32px; border:1px solid var(--line); border-radius:13px; background:white; }
.archive-scope-grid article>span { color:var(--cyan); font-size:11px; font-weight:800; letter-spacing:.1em; }
.archive-scope-grid h3 { margin:55px 0 15px; font-size:29px; line-height:1.12; letter-spacing:-.03em; }
.archive-scope-grid p { margin:0; color:var(--muted); font-size:17px; line-height:1.65; }
.archive-capabilities { padding:112px 0 118px; color:white; background:#0a243a; }
.archive-capability-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:13px; margin-top:55px; }
.archive-capability-grid article { min-height:245px; padding:31px; border:1px solid rgba(255,255,255,.13); border-radius:12px; background:rgba(255,255,255,.04); }
.archive-capability-grid article>span { color:#82d7df; font-size:11px; font-weight:800; letter-spacing:.1em; }
.archive-capability-grid h3 { margin:45px 0 13px; color:#f3f8fb; font-size:27px; letter-spacing:-.03em; }
.archive-capability-grid p { margin:0; color:#acc2d1; font-size:16px; line-height:1.65; }
.archive-volume { display:grid; grid-template-columns:.76fr 1.24fr; gap:clamp(50px,8vw,110px); align-items:center; padding-top:112px; padding-bottom:118px; }
.archive-volume-copy h2 { margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.archive-volume-copy>p:not(.eyebrow) { margin:25px 0 0; color:var(--muted); font-size:18px; line-height:1.68; }
.archive-volume-copy>a { width:max-content; display:flex; align-items:center; gap:14px; margin-top:28px; padding-bottom:6px; color:var(--blue); border-bottom:1px solid #8cbbe1; font-size:14px; font-weight:750; }
.archive-volume-flow { display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; align-items:center; }
.archive-volume-flow>div { min-height:175px; display:flex; flex-direction:column; justify-content:center; padding:20px; border:1px solid var(--line); border-radius:10px; background:#fbfdff; }
.archive-volume-flow>div:nth-of-type(3) { color:white; border-color:transparent; background:#0f6cbd; }
.archive-volume-flow span { color:var(--cyan); font-size:10px; font-weight:800; }
.archive-volume-flow b { margin-top:35px; font-size:17px; line-height:1.2; }
.archive-volume-flow small { margin-top:7px; color:var(--muted); font-size:10px; line-height:1.4; }
.archive-volume-flow>div:nth-of-type(3) small { color:#d2e7f4; }
.archive-volume-flow>i { width:20px; border-top:2px dashed #66bec7; }
.archive-integration { padding:112px 0 118px; color:white; background:#0f6cbd; }
.archive-integration-shell { display:grid; grid-template-columns:.78fr 1.22fr; gap:clamp(50px,8vw,110px); align-items:center; }
.archive-integration-copy h2 { margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.archive-integration-copy>p:not(.eyebrow) { margin:25px 0 0; color:#d5e8f4; font-size:18px; line-height:1.65; }
.archive-integration-model { display:grid; grid-template-columns:1fr 1fr 1fr; overflow:hidden; border:1px solid rgba(255,255,255,.28); border-radius:14px; background:rgba(255,255,255,.06); }
.archive-integration-model>div { display:flex; flex-direction:column; padding:25px; border-right:1px solid rgba(255,255,255,.18); }
.archive-integration-model>div:last-child { border:0; }
.archive-integration-model small { margin-bottom:17px; color:#b9d9ee; font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.archive-integration-model span { min-height:45px; display:flex; align-items:center; margin-bottom:8px; padding:9px 11px; border:1px solid rgba(255,255,255,.16); border-radius:7px; background:rgba(255,255,255,.06); font-size:12px; }
.archive-integration-model .integration-bridge { background:rgba(8,43,70,.22); }
.archive-integration-model .integration-bridge span { border-color:rgba(128,229,222,.25); }
.archive-fit { padding-top:112px; padding-bottom:118px; }
.archive-fit-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; margin-top:55px; }
.archive-fit-grid article { min-height:200px; padding:29px; border:1px solid var(--line); border-radius:12px; background:white; }
.archive-fit-grid span { color:#173d59; font-size:21px; font-weight:760; letter-spacing:-.025em; }
.archive-fit-grid p { margin:35px 0 0; color:var(--muted); font-size:16px; line-height:1.65; }
.archive-contact { padding:112px 0; color:white; background:#092945; }
.archive-contact-shell { display:grid; grid-template-columns:.75fr 1.25fr; gap:clamp(50px,8vw,110px); align-items:start; }
.archive-contact-copy { padding-top:25px; }
.archive-contact-copy h2 { margin:0; font-size:clamp(47px,4.8vw,68px); line-height:1.03; letter-spacing:-.05em; }
.archive-contact-copy>p:not(.eyebrow) { margin:25px 0 0; color:#b7cbd9; font-size:18px; line-height:1.65; }
.archive-contact-copy>a { display:inline-block; margin-top:31px; padding-bottom:5px; border-bottom:1px solid rgba(255,255,255,.5); font-weight:750; }
.archive-form-card { min-height:690px; overflow:hidden; color:var(--ink); border-radius:17px; background:white; box-shadow:0 30px 70px rgba(0,0,0,.23); }
.archive-qualifier-grid { display:grid; grid-template-columns:1fr 1fr; gap:13px; padding:30px 30px 17px; }
.archive-qualifier-grid label,.archive-description { display:flex; flex-direction:column; gap:7px; color:#334b5d; font-size:13px; font-weight:700; }
.archive-qualifier-grid input,.archive-qualifier-grid select,.archive-description textarea { width:100%; min-height:50px; padding:0 13px; color:var(--ink); border:1px solid #cbd8e2; border-radius:6px; background:white; outline:0; font-size:14px; font-weight:400; }
.archive-qualifier-grid input:focus,.archive-qualifier-grid select:focus,.archive-description textarea:focus { border-color:var(--blue); box-shadow:0 0 0 3px #dcebfa; }
.archive-description { padding:0 30px 25px; }
.archive-description textarea { min-height:105px; padding-top:12px; resize:vertical; }
.archive-success { min-height:690px; padding:45px; }

/* Toshiba rental page */
.toshiba-page { overflow:hidden; background:#fff; }
.toshiba-hero { min-height:690px; display:grid; grid-template-columns:minmax(0,1fr) minmax(430px,.88fr); align-items:center; gap:clamp(55px,8vw,130px); padding:110px clamp(28px,7vw,112px) 78px; background:linear-gradient(145deg,#fff 0%,#f6fbfe 64%,#eaf4fa 100%); }
.toshiba-hero-copy { max-width:710px; }
.toshiba-hero-copy h1 { max-width:750px; margin:0; font-size:clamp(58px,6vw,88px); line-height:.98; letter-spacing:-.055em; }
.toshiba-hero-copy>p:not(.eyebrow) { max-width:650px; margin:28px 0 0; color:var(--muted); font-size:20px; line-height:1.65; }
.toshiba-hero-copy .primary-button { width:max-content; margin-top:35px; }
.printer-visual { position:relative; min-height:500px; display:grid; place-items:center; }
.printer-visual::before,.printer-visual::after { content:""; position:absolute; border-radius:50%; }
.printer-visual::before { width:430px; height:430px; border:1px solid #c6e0ee; background:rgba(255,255,255,.62); box-shadow:0 34px 70px rgba(28,82,118,.09); }
.printer-visual::after { width:355px; height:355px; border:1px dashed #abd2e4; }
.printer-device { position:relative; z-index:2; width:285px; height:330px; border-radius:18px 18px 27px 27px; background:linear-gradient(155deg,#fff,#dce8ef); border:1px solid #c9d9e3; box-shadow:0 30px 55px rgba(26,66,92,.2); }
.printer-device::before { content:""; position:absolute; left:25px; right:25px; top:95px; height:95px; border-radius:7px; background:#152b3c; box-shadow:inset 0 0 0 1px rgba(255,255,255,.09); }
.printer-screen { position:absolute; z-index:2; top:27px; left:80px; width:125px; height:53px; display:flex; align-items:center; justify-content:space-between; padding:0 13px; color:#9cdbe9; border:5px solid #203746; border-radius:6px; background:#0d5c7b; font-size:10px; font-weight:800; letter-spacing:.08em; }
.printer-screen i { width:8px; height:8px; border-radius:50%; background:#62dc9e; box-shadow:0 0 0 4px rgba(98,220,158,.15); }
.paper-sheet { position:absolute; z-index:3; left:48px; top:121px; width:189px; height:119px; display:flex; flex-direction:column; padding:25px 23px; color:#0f568c; background:white; box-shadow:0 11px 20px rgba(0,0,0,.15); transform:rotate(-2deg); }
.paper-sheet span { font-size:12px; font-weight:900; letter-spacing:.11em; }
.paper-sheet b { margin-top:19px; color:#6f8798; font-size:23px; letter-spacing:-.03em; }
.printer-tray { position:absolute; left:34px; right:34px; bottom:27px; height:57px; border-radius:4px 4px 14px 14px; background:#c5d5df; box-shadow:inset 0 11px 14px rgba(80,112,132,.11); }
.printer-tray::after { content:""; position:absolute; left:52px; right:52px; top:18px; height:6px; border-radius:5px; background:#859caa; }
.printer-chip { position:absolute; z-index:4; min-width:205px; padding:17px 20px; border:1px solid rgba(255,255,255,.9); border-radius:11px; background:rgba(255,255,255,.94); box-shadow:0 16px 35px rgba(26,73,104,.13); backdrop-filter:blur(12px); }
.printer-chip small { display:block; color:var(--muted); font-size:11px; }
.printer-chip b { display:block; margin-top:4px; font-size:14px; }
.chip-format { top:82px; right:-5px; }
.chip-color { bottom:76px; left:-10px; }
.toshiba-fit { padding-top:112px; padding-bottom:118px; }
.fit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; margin-top:55px; }
.fit-grid article { min-height:285px; padding:32px; border:1px solid var(--line); border-radius:13px; background:#fff; }
.fit-grid article>span { color:var(--cyan); font-size:12px; font-weight:800; letter-spacing:.1em; }
.fit-grid h3 { margin:54px 0 15px; font-size:30px; line-height:1.12; letter-spacing:-.03em; }
.fit-grid p { margin:0; color:var(--muted); font-size:17px; line-height:1.65; }
.toshiba-calculator-card { overflow:visible; }
.toshiba-fields { display:grid; gap:25px; padding:28px 30px 30px; }
.toshiba-fields fieldset { min-width:0; margin:0; padding:0; border:0; }
.toshiba-fields legend { margin-bottom:11px; color:#334b5d; font-size:14px; font-weight:750; }
.choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:11px; }
.choice-card { position:relative; min-height:88px; display:flex; flex-direction:column; justify-content:center; padding:15px 17px; border:1px solid #cbd8e2; border-radius:8px; cursor:pointer; transition:.18s ease; }
.choice-card:hover { border-color:#83b7d8; background:#f8fbfd; }
.choice-card.selected { border-color:var(--blue); background:#eaf4fc; box-shadow:0 0 0 1px var(--blue); }
.choice-card input { position:absolute; opacity:0; pointer-events:none; }
.choice-card b { color:#173c59; font-size:18px; }
.choice-card small { margin-top:4px; color:var(--muted); font-size:12px; line-height:1.35; }
.choice-card.selected b { color:var(--blue); }
.prints-field { min-height:80px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:16px 0 2px; border-top:1px solid #e6edf2; }
.prints-field>span { display:flex; flex-direction:column; }
.prints-field b { color:#334b5d; font-size:16px; }
.prints-field small { margin-top:4px; color:var(--muted); font-size:12px; }
.prints-field input { width:150px; min-height:48px; padding:0 14px; color:var(--ink); border:1px solid #cbd8e2; border-radius:6px; outline:0; font-size:17px; font-weight:750; text-align:right; }
.prints-field input:focus { border-color:var(--blue); box-shadow:0 0 0 3px #dcebfa; }
.term-display { min-height:58px; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 17px; color:#365064; border-radius:8px; background:#f0f6f9; font-size:14px; }
.term-display b { color:#153b58; }
.toshiba-result { min-height:790px; display:flex; align-items:center; flex-direction:column; justify-content:center; padding:50px 42px; text-align:center; }
.result-check { width:50px; height:50px; display:grid; place-items:center; color:white; border-radius:50%; background:#2f9c79; font-size:24px; font-weight:800; }
.result-welcome { margin:17px 0 5px; color:#39718d; font-size:15px; font-weight:750; }
.toshiba-result h2 { max-width:560px; margin:0; font-size:clamp(29px,3vw,40px); line-height:1.12; letter-spacing:-.035em; }
.rental-price { width:100%; max-width:540px; display:flex; align-items:center; flex-direction:column; margin:25px 0 18px; padding:24px; border-radius:12px; background:#eaf5fb; }
.rental-price>small { color:#4e687a; font-size:13px; }
.rental-price strong { margin-top:3px; color:var(--blue-dark); font-size:50px; line-height:1; letter-spacing:-.05em; }
.rental-price em { font-size:18px; font-style:normal; letter-spacing:0; }
.rental-price>span { margin-top:5px; color:#6d7e8b; font-size:11px; }
.print-prices { width:100%; max-width:540px; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
.print-prices:has(>div:only-child) { grid-template-columns:1fr; }
.print-prices>div { min-height:81px; display:flex; align-items:flex-start; flex-direction:column; justify-content:center; padding:15px 17px; border:1px solid var(--line); border-radius:9px; text-align:left; }
.print-prices small { color:var(--muted); font-size:11px; }
.print-prices b { margin-top:5px; color:#193e59; font-size:20px; }
.result-disclaimer { max-width:540px; margin:18px 0 0; padding:14px 16px; color:#5e4c2e; border-left:3px solid #d9a441; background:#fff8e9; font-size:13px; line-height:1.5; text-align:left; }
.toshiba-result>p:not(.result-welcome):not(.result-disclaimer) { max-width:520px; margin:18px 0 12px; color:var(--muted); font-size:15px; line-height:1.55; }
.toshiba-result>button { margin:17px 0 9px; padding:0; color:var(--blue); border:0; border-bottom:1px solid currentColor; background:none; cursor:pointer; font-weight:700; }
.toshiba-result>.form-note { max-width:520px; }
.toshiba-final { background:linear-gradient(135deg,#0f6cbd,#0a528f 56%,#123b63); }

.onboarding { padding-top:112px; padding-bottom:118px; }
.onboarding-heading { align-items:start; }
.timeline { position:relative; display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:66px 0 0; padding:0; list-style:none; border-top:1px solid var(--line); }
.timeline li { position:relative; min-height:210px; padding:32px 34px 28px 0; border-bottom:1px solid var(--line); }
.timeline li:nth-child(3n+2),.timeline li:nth-child(3n+3) { padding-left:34px; border-left:1px solid var(--line); }
.timeline li::before { content:""; position:absolute; top:-5px; left:0; width:9px; height:9px; border-radius:50%; background:var(--cyan); box-shadow:0 0 0 6px white; }
.timeline li:nth-child(3n+2)::before,.timeline li:nth-child(3n+3)::before { left:34px; }
.timeline li:nth-child(n+4)::before { top:auto; bottom:-5px; }
.timeline span { color:var(--blue); font-size:11px; font-weight:800; letter-spacing:.11em; }
.timeline b { display:block; margin-top:31px; font-size:22px; }
.timeline p { max-width:320px; margin:11px 0 0; color:var(--muted); font-size:16px; line-height:1.65; }

.sla-section { padding:110px 0; color:white; background:#0b2135; }
.sla-shell { display:grid; grid-template-columns:.72fr 1.28fr; gap:clamp(50px,8vw,110px); align-items:center; }
.sla-copy h2 { max-width:520px; margin:0; font-size:clamp(46px,4.6vw,66px); line-height:1.04; letter-spacing:-.045em; }
.sla-copy>p:not(.eyebrow) { max-width:500px; margin:24px 0 0; color:#b7cbd9; font-size:18px; line-height:1.65; }
.iso-row { display:flex; gap:12px; margin-top:35px; }
.iso-row span { min-width:140px; display:flex; flex-direction:column; padding:15px; border:1px solid rgba(255,255,255,.15); border-radius:9px; background:rgba(255,255,255,.04); }
.iso-row b { color:#91d7e2; font-size:14px; }
.iso-row small { margin-top:4px; color:#9fb4c3; font-size:10px; }
.sla-table { overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:15px; background:rgba(255,255,255,.05); }
.sla-row { min-height:72px; display:grid; grid-template-columns:1.45fr .65fr .65fr; align-items:center; gap:12px; padding:0 28px; border-bottom:1px solid rgba(255,255,255,.1); }
.sla-row span { display:flex; align-items:center; gap:11px; }
.sla-row i { width:8px; height:8px; border-radius:50%; background:#56c8a5; }
.sla-row.critical i { background:#ed9d63; }
.sla-row b { color:#d7e8f2; font-size:16px; }
.sla-row>span { font-size:16px; }
.sla-head { min-height:51px; color:#7fa1b7; background:rgba(0,0,0,.12); font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.sla-table>small { display:block; padding:15px 28px 19px; color:#829caf; font-size:10px; line-height:1.5; }

.final-cta { padding:108px 24px; background:linear-gradient(135deg,#0f6cbd,#0b4f8a 55%,#123b63); text-align:center; color:white; }
.final-cta-inner { width:min(850px,100%); margin:0 auto; }
.final-cta .eyebrow { justify-content:center; }
.final-cta h2 { margin:0; font-size:clamp(43px,5vw,68px); line-height:1.04; letter-spacing:-.05em; }
.final-cta-inner>p:not(.eyebrow) { max-width:600px; margin:22px auto 0; color:#d3e8f7; font-size:18px; line-height:1.6; }
.final-cta-inner>div { display:flex; justify-content:center; align-items:center; gap:28px; margin-top:35px; }
.cta-light { min-height:52px; display:inline-flex; align-items:center; gap:27px; padding:0 24px; color:var(--blue-dark); border-radius:7px; background:white; font-weight:750; }
.email-link { padding:13px 0; color:white; border-bottom:1px solid rgba(255,255,255,.55); font-weight:650; }

.site-footer { display:grid; grid-template-columns:minmax(220px,1.3fr) minmax(210px,1.25fr) minmax(170px,.8fr) minmax(210px,1fr); align-items:start; gap:35px clamp(30px,5vw,76px); padding:55px clamp(22px,5vw,76px) 28px; color:#5a6a7b; border-top:1px solid var(--line); background:#f8fbfd; font-size:13px; }
.footer-brand { color:var(--ink); }
.footer-brand .brand-logo { width:150px; }
.footer-summary p { max-width:260px; margin:18px 0 0; color:#64798a; line-height:1.55; }
.footer-link-group { display:flex; flex-direction:column; align-items:flex-start; gap:10px; }
.footer-link-group b { margin-bottom:5px; color:var(--ink); font-size:13px; letter-spacing:.03em; }
.footer-link-group .footer-section-link { margin-bottom:5px; color:var(--ink); font-size:13px; font-weight:700; letter-spacing:.03em; }
.footer-link-group a { color:#486174; line-height:1.45; }
.footer-link-group a:hover { color:var(--blue); }
.footer-bottom { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:24px; padding-top:22px; border-top:1px solid var(--line); color:#80909c; }
.footer-legal-links { display:flex; flex-wrap:wrap; gap:12px 24px; }
.footer-legal-links a { color:#617789; }
.footer-legal-links a:hover { color:var(--blue); }

.legal-page { min-height:100vh; background:#fff; }
.legal-hero { padding:150px 0 72px; color:white; background:linear-gradient(135deg,#0b4f8a,#0f6cbd 58%,#123b63); }
.legal-hero-shell { max-width:980px; }
.legal-hero h1 { max-width:780px; margin:0; font-size:clamp(48px,6vw,76px); line-height:1; letter-spacing:-.05em; }
.legal-hero p:not(.eyebrow) { max-width:760px; margin:24px 0 0; color:#d8eaf6; font-size:18px; line-height:1.65; }
.legal-hero small { display:block; margin-top:28px; color:#b9d5e7; font-size:13px; }
.legal-content { max-width:980px; padding-top:82px; padding-bottom:100px; }
.legal-content section { padding:0 0 42px; margin:0 0 42px; border-bottom:1px solid var(--line); }
.legal-content section:last-child { padding-bottom:0; margin-bottom:0; border-bottom:0; }
.legal-content h2 { margin:0 0 18px; color:var(--ink); font-size:clamp(25px,2.6vw,34px); line-height:1.2; letter-spacing:-.025em; }
.legal-content h3 { margin:0 0 14px; color:var(--blue-dark); font-size:19px; }
.legal-content p { margin:0 0 14px; color:#4e6374; font-size:16px; line-height:1.75; }
.legal-content p:last-child { margin-bottom:0; }
.legal-content a { color:var(--blue); border-bottom:1px solid rgba(15,108,189,.35); font-weight:700; }
.legal-data-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.legal-data-grid>div { padding:24px; border:1px solid var(--line); border-radius:12px; background:#f8fbfd; }
.legal-data-grid p { font-size:15px; line-height:1.65; }
.cookie-table { overflow:hidden; margin-top:25px; border:1px solid var(--line); border-radius:12px; }
.cookie-row { display:grid; grid-template-columns:minmax(190px,.9fr) minmax(320px,1.8fr) minmax(150px,.7fr); gap:20px; padding:18px 20px; border-bottom:1px solid var(--line); align-items:start; }
.cookie-row:last-child { border-bottom:0; }
.cookie-row span,.cookie-row code { color:#4e6374; font-size:14px; line-height:1.55; overflow-wrap:anywhere; }
.cookie-row code { color:var(--blue-dark); font-family:inherit; font-weight:700; }
.cookie-head { background:#eef5f9; }
.cookie-head b { color:var(--ink); font-size:13px; text-transform:uppercase; letter-spacing:.04em; }

@media (max-width:980px) {
  .site-header { height:68px; }
  .menu-button { width:44px; height:44px; display:grid; place-content:center; gap:5px; background:transparent; border:0; cursor:pointer; }
  .menu-button span { width:22px; height:2px; background:var(--ink); }
  .menu-button b { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0,0,0,0); }
  .site-header nav { position:absolute; left:0; right:0; top:67px; display:none; align-items:stretch; padding:20px 24px 26px; background:white; border-bottom:1px solid var(--line); box-shadow:0 18px 30px rgba(20,50,70,.1); }
  .site-header nav.nav-open { display:flex; flex-direction:column; gap:0; }
  .site-header nav>a:not(.nav-cta) { width:100%; padding:14px 0; border-bottom:1px solid var(--line); text-align:left; }
  .nav-dropdown { display:block; width:100%; }
  .nav-dropdown-control { width:100%; border-bottom:1px solid var(--line); }
  .nav-dropdown-trigger { flex:1; padding:14px 0; border-bottom:0; text-align:left; }
  .nav-dropdown-toggle { width:48px; height:48px; }
  .nav-submenu { position:static; width:100%; display:none; padding:7px 0 8px 13px; visibility:visible; opacity:1; transform:none; border:0; border-bottom:1px solid var(--line); border-radius:0; box-shadow:none; }
  .nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu { display:none; }
  .nav-dropdown-open .nav-submenu,.nav-dropdown-open:hover .nav-submenu,.nav-dropdown-open:focus-within .nav-submenu { display:grid; }
  .nav-submenu a { padding:11px 12px; }
  .site-header .language { padding:14px 0; text-align:left; }
  .site-header .nav-cta { margin-top:10px; }
  .hero { grid-template-columns:1fr; padding-top:72px; }
  .home-hero { min-height:auto; grid-template-columns:1fr; padding-top:105px; }
  .invoice-hero { min-height:auto; grid-template-columns:1fr; padding-top:105px; }
  .invoice-visual { min-height:500px; }
  .invoice-value-grid { grid-template-columns:1fr 1fr; }
  .invoice-value-grid article:last-child { grid-column:1/-1; }
  .integration-section { grid-template-columns:1fr; }
  .scan-hero { min-height:auto; grid-template-columns:1fr; padding-top:105px; }
  .scan-visual { min-height:500px; }
  .scan-type-grid { grid-template-columns:1fr 1fr; }
  .scan-type-grid article:last-child { grid-column:1/-1; }
  .scan-process-grid { grid-template-columns:1fr 1fr; }
  .scan-delivery,.scan-reference-shell { grid-template-columns:1fr; }
  .solution-hero { min-height:auto; grid-template-columns:1fr; padding-top:105px; }
  .solution-visual { min-height:500px; }
  .solution-value-grid { grid-template-columns:1fr 1fr; }
  .solution-product-grid { grid-template-columns:1fr; }
  .solution-product-grid article { min-height:410px; }
  .solution-documents,.solution-integration-shell,.solution-contact-shell { grid-template-columns:1fr; }
  .solution-step-list { grid-template-columns:1fr 1fr; }
  .solution-step-list li:nth-child(2) { border-right:0; }
  .solution-step-list li:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .digitization-landing-hero { min-height:auto; grid-template-columns:1fr; padding-top:105px; }
  .digitization-contact-shell { grid-template-columns:1fr; }
  .digitization-service-grid { grid-template-columns:1fr; }
  .archive-hero { min-height:auto; grid-template-columns:1fr; padding-top:105px; }
  .archive-visual { min-height:500px; }
  .archive-scope-grid { grid-template-columns:1fr 1fr; }
  .archive-scope-grid article:last-child { grid-column:1/-1; }
  .archive-volume,.archive-integration-shell,.archive-contact-shell { grid-template-columns:1fr; }
  .home-visual { min-height:510px; }
  .direction-grid { grid-template-columns:1fr 1fr; }
  .direction-card:last-child { grid-column:1/-1; }
  .home-about-shell,.home-contact-shell { grid-template-columns:1fr; }
  .about-copy { max-width:720px; }
  .partner-row { grid-template-columns:1.4fr repeat(2,1fr); padding:20px 0; row-gap:20px; }
  .partner-row b:nth-of-type(3) { border-left:0; }
  .toshiba-hero { min-height:auto; grid-template-columns:1fr; padding-top:110px; }
  .printer-visual { min-height:460px; }
  .fit-grid { grid-template-columns:1fr 1fr; }
  .fit-grid article:last-child { grid-column:1/-1; }
  .hero-copy { position:relative; z-index:3; }
  .hero-visual { min-height:430px; margin-top:-10px; }
  .section-heading { gap:50px; }
  .service-grid { grid-template-columns:1fr 1fr; }
  .service-card,.service-card:nth-child(4),.service-card:nth-child(5) { grid-column:auto; }
  .service-card:last-child { grid-column:1/-1; }
  .calculator-shell { grid-template-columns:1fr; }
  .calculator-intro { position:static; max-width:680px; }
  .timeline { grid-template-columns:1fr 1fr; }
  .timeline li:nth-child(3n+2),.timeline li:nth-child(3n+3) { padding-left:0; border-left:0; }
  .timeline li:nth-child(even) { padding-left:30px; border-left:1px solid var(--line); }
  .timeline li::before,.timeline li:nth-child(3n+2)::before,.timeline li:nth-child(3n+3)::before { left:0; }
  .timeline li:nth-child(even)::before { left:30px; }
  .timeline li:nth-child(n+4)::before { top:-5px; bottom:auto; }
  .sla-shell { grid-template-columns:1fr; }
  .site-footer { grid-template-columns:1.15fr 1fr 1fr; }
  .footer-summary { grid-column:1/-1; }
  .footer-bottom { justify-content:flex-start; }
}

@media (max-width:640px) {
  .site-header { padding:0 18px; }
  .hero { min-height:auto; padding:55px 21px 62px; }
  .home-hero { padding:72px 21px 65px; }
  .digitization-landing-hero { padding:72px 21px 65px; }
  .digitization-landing-copy h1 { font-size:49px; }
  .digitization-landing-copy>p:not(.eyebrow) { font-size:17px; }
  .digitization-overview { grid-template-columns:1fr; margin-top:20px; }
  .digitization-overview a { min-height:145px; }
  .digitization-services { padding-top:78px; padding-bottom:82px; }
  .digitization-service-grid { margin-top:39px; }
  .digitization-service-grid article { min-height:455px; padding:28px; }
  .digitization-service-grid h2 { margin-top:45px; font-size:30px; }
  .digitization-contact { padding:78px 0; }
  .digitization-contact-shell { width:calc(100% - 28px); }
  .digitization-contact-copy { padding:0 6px; }
  .digitization-request-fields { padding-left:20px; padding-right:20px; }
  .invoice-hero { padding:72px 21px 65px; }
  .invoice-hero-copy h1 { font-size:49px; }
  .invoice-hero-copy>p:not(.eyebrow) { font-size:17px; }
  .invoice-hero-proof { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
  .invoice-hero-proof span { min-width:0; margin:0; padding:0 7px 0 0; }
  .invoice-hero-proof b { font-size:17px; }
  .invoice-visual { min-height:390px; margin-top:20px; }
  .invoice-visual::before { width:320px; height:320px; }
  .invoice-paper { left:-3px; width:180px; height:250px; padding:23px 20px; }
  .invoice-paper>div { left:18px; right:18px; bottom:21px; }
  .invoice-paper>div b { font-size:18px; }
  .system-destination { right:-5px; width:175px; min-height:155px; padding:18px; }
  .system-destination b { font-size:15px; }
  .data-flow { left:160px; right:145px; }
  .invoice-chip { min-width:157px; padding:12px 14px; }
  .invoice-chip b { font-size:10px; }
  .chip-verify { top:20px; right:-13px; }
  .chip-integrate { bottom:14px; left:18px; }
  .invoice-fit,.integration-section { padding-top:78px; padding-bottom:82px; }
  .invoice-value-grid { grid-template-columns:1fr; margin-top:39px; }
  .invoice-value-grid article:last-child { grid-column:auto; }
  .invoice-value-grid article { min-height:250px; }
  .invoice-value-grid h3 { margin-top:42px; }
  .invoice-capabilities { padding:78px 0 82px; }
  .capability-heading { grid-template-columns:1fr; gap:20px; }
  .capability-heading>p { font-size:16px; }
  .capability-grid { grid-template-columns:1fr; margin-top:39px; }
  .integration-cloud { grid-template-columns:1fr; }
  .integration-cloud span { min-height:76px; }
  .invoice-fields { padding-left:20px; padding-right:20px; }
  .invoice-number-field { align-items:stretch; flex-direction:column; }
  .invoice-number-field input { width:100%; text-align:left; }
  .invoice-result { min-height:770px; padding:40px 20px; }
  .invoice-result-price strong { font-size:41px; }
  .invoice-result-details { grid-template-columns:1fr; }
  .scan-hero { padding:72px 21px 65px; }
  .scan-hero-copy h1 { font-size:49px; }
  .scan-hero-copy>p:not(.eyebrow) { font-size:17px; }
  .scan-proof { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
  .scan-proof span { min-width:0; margin:0; padding:0 7px 0 0; }
  .scan-proof b { font-size:17px; }
  .scan-visual { min-height:395px; margin-top:20px; }
  .scan-visual::before { width:320px; height:320px; }
  .scan-stack { left:-4px; width:175px; height:225px; }
  .scan-stack>div { padding:23px 19px; }
  .scan-stack b { font-size:21px; }
  .scan-file { right:-7px; width:180px; min-height:195px; padding:20px; }
  .scan-file>b { font-size:15px; }
  .scan-beam { left:155px; right:150px; }
  .scan-chip { min-width:162px; padding:12px 14px; }
  .scan-chip b { font-size:10px; }
  .scan-chip-location { top:20px; right:-14px; }
  .scan-chip-system { bottom:14px; left:18px; }
  .scan-types,.scan-delivery { padding-top:78px; padding-bottom:82px; }
  .scan-type-grid { grid-template-columns:1fr; margin-top:39px; }
  .scan-type-grid article:last-child { grid-column:auto; }
  .scan-type-grid article { min-height:250px; }
  .scan-type-grid h3 { margin-top:42px; }
  .scan-process { padding:78px 0 82px; }
  .scan-process-grid { grid-template-columns:1fr; margin-top:39px; }
  .scan-delivery-grid { grid-template-columns:1fr; }
  .scan-references { padding:78px 0 82px; }
  .scan-number-field { align-items:stretch; flex-direction:column; padding:16px 0; }
  .scan-number-field input { width:100%; text-align:left; }
  .scan-input-with-unit { width:100%; }
  .scan-input-with-unit input { flex:1; }
  .scan-fields { padding-left:20px; padding-right:20px; }
  .scan-select-grid { grid-template-columns:1fr; }
  .scan-result { min-height:880px; padding:40px 20px; }
  .scan-result-price strong { font-size:41px; }
  .scan-result-details { grid-template-columns:1fr; }
  .solution-hero { padding:72px 21px 65px; }
  .solution-hero-copy h1 { font-size:49px; }
  .solution-hero-copy>p:not(.eyebrow) { font-size:17px; }
  .solution-proof { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
  .solution-proof span { min-width:0; margin:0; padding:0 7px 0 0; }
  .solution-proof b { font-size:16px; }
  .solution-visual { min-height:400px; margin-top:20px; }
  .solution-visual::before { width:320px; height:320px; }
  .solution-engine { width:175px; min-height:175px; padding:18px; }
  .solution-engine b { font-size:15px; }
  .solution-engine>div { display:none; }
  .solution-source,.solution-target { width:132px; min-height:118px; padding:14px; }
  .solution-source b,.solution-target b { font-size:14px; }
  .solution-source span,.solution-target span { font-size:8px; }
  .solution-line { display:none; }
  .solution-badge { min-width:130px; padding:11px 13px; }
  .badge-archive { top:25px; right:-13px; }
  .badge-connect { bottom:20px; left:9px; }
  .solution-value,.solution-documents,.solution-steps { padding-top:78px; padding-bottom:82px; }
  .solution-value-grid { grid-template-columns:1fr; margin-top:39px; }
  .solution-value-grid article { min-height:255px; }
  .solution-value-grid h3 { margin-top:42px; }
  .solution-products,.solution-integration,.solution-contact { padding:78px 0 82px; }
  .solution-product-grid { margin-top:39px; }
  .solution-product-grid article { min-height:475px; }
  .solution-doc-grid { grid-template-columns:1fr; }
  .solution-architecture { grid-template-columns:1fr; }
  .solution-architecture>div { border-right:0; border-bottom:1px solid rgba(255,255,255,.18); }
  .solution-step-list { grid-template-columns:1fr; margin-top:39px; }
  .solution-step-list li,.solution-step-list li:nth-child(2) { min-height:240px; border-right:0; border-bottom:1px solid var(--line); }
  .solution-step-list li:last-child { border-bottom:0; }
  .solution-qualifier-grid { grid-template-columns:1fr; padding-left:20px; padding-right:20px; }
  .solution-description { padding-left:20px; padding-right:20px; }
  .solution-form-card { min-height:760px; }
  .solution-success { min-height:760px; padding:30px 22px; }
  .archive-hero { padding:72px 21px 65px; }
  .archive-hero-copy h1 { font-size:49px; }
  .archive-hero-copy>p:not(.eyebrow) { font-size:17px; }
  .archive-proof { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
  .archive-proof span { min-width:0; margin:0; padding:0 7px 0 0; }
  .archive-proof b { font-size:16px; }
  .archive-visual { min-height:400px; margin-top:20px; }
  .archive-visual::before { width:320px; height:320px; }
  .archive-core { width:175px; min-height:175px; padding:18px; }
  .archive-core b { font-size:16px; }
  .archive-core>div { width:120px; margin-top:15px; }
  .archive-core i { height:20px; }
  .archive-system-card,.archive-storage { width:132px; min-height:118px; padding:14px; }
  .archive-system-card b,.archive-storage b { font-size:14px; }
  .archive-system-card span,.archive-storage span { font-size:8px; }
  .archive-connector { display:none; }
  .archive-badge { min-width:130px; padding:11px 13px; }
  .archive-search { top:25px; right:-13px; }
  .archive-trace { bottom:20px; left:9px; }
  .archive-scope,.archive-volume,.archive-fit { padding-top:78px; padding-bottom:82px; }
  .archive-scope-grid { grid-template-columns:1fr; margin-top:39px; }
  .archive-scope-grid article:last-child { grid-column:auto; }
  .archive-scope-grid article { min-height:250px; }
  .archive-scope-grid h3 { margin-top:42px; }
  .archive-capabilities,.archive-integration,.archive-contact { padding:78px 0 82px; }
  .archive-capability-grid { grid-template-columns:1fr; margin-top:39px; }
  .archive-volume-flow { grid-template-columns:1fr; gap:8px; }
  .archive-volume-flow>div { min-height:145px; }
  .archive-volume-flow>i { width:0; height:18px; margin:auto; border-top:0; border-left:2px dashed #66bec7; }
  .archive-integration-model { grid-template-columns:1fr; }
  .archive-integration-model>div { border-right:0; border-bottom:1px solid rgba(255,255,255,.18); }
  .archive-fit-grid { grid-template-columns:1fr; margin-top:39px; }
  .archive-qualifier-grid { grid-template-columns:1fr; padding-left:20px; padding-right:20px; }
  .archive-description { padding-left:20px; padding-right:20px; }
  .archive-form-card { min-height:790px; }
  .archive-success { min-height:790px; padding:30px 22px; }
  .home-hero-copy h1 { font-size:50px; }
  .home-hero-copy>p:not(.eyebrow) { font-size:17px; }
  .home-proof { display:grid; grid-template-columns:repeat(3,1fr); gap:9px; }
  .home-proof span { min-width:0; margin:0; padding:0 8px 0 0; }
  .home-proof b { font-size:22px; }
  .home-visual { min-height:410px; margin-top:12px; }
  .home-visual::before { width:320px; height:320px; }
  .home-visual::after { width:245px; height:245px; }
  .core-card { width:175px; height:175px; }
  .core-logo-panel { width:142px; min-height:64px; padding:10px; }
  .core-logo-panel .brand-logo { width:122px; }
  .orbit-card { min-width:152px; padding:13px 15px; }
  .orbit-card b { font-size:12px; }
  .orbit-doc { top:32px; left:-18px; }
  .orbit-it { right:-13px; top:18px; }
  .orbit-print { bottom:25px; left:-5px; }
  .home-directions { padding-top:78px; padding-bottom:82px; }
  .direction-grid { grid-template-columns:1fr; margin-top:39px; }
  .direction-card:last-child { grid-column:auto; }
  .direction-card { min-height:340px; padding:28px; }
  .direction-card h3 { margin-top:63px; font-size:30px; }
  .home-about { padding:78px 0; }
  .credential-grid>div { grid-template-columns:1fr; align-content:center; gap:6px; }
  .partner-row { grid-template-columns:1fr 1fr; }
  .partner-row span { grid-column:1/-1; }
  .partner-row b,.partner-row b:nth-of-type(3) { min-height:45px; display:flex; align-items:center; padding-left:16px; border-left:1px solid rgba(255,255,255,.12); }
  .client-section { padding-top:78px; padding-bottom:82px; }
  .client-heading { grid-template-columns:1fr; gap:20px; }
  .client-heading>p { font-size:16px; }
  .client-carousel { margin-top:38px; }
  .client-carousel { padding:9px 0; }
  .client-carousel-set span { min-height:82px; padding:18px 28px; font-size:15px; }
  .home-contact { padding:78px 0; }
  .home-contact-shell { width:calc(100% - 28px); }
  .contact-copy { padding:0 6px; }
  .contact-details { grid-template-columns:1fr; }
  .contact-details>div { min-height:auto; }
  .home-form-card { padding:25px 20px; }
  .toshiba-hero { padding:74px 21px 60px; }
  .toshiba-hero-copy h1 { font-size:50px; }
  .toshiba-hero-copy>p:not(.eyebrow) { font-size:17px; }
  .toshiba-hero-copy .primary-button { width:100%; }
  .printer-visual { min-height:385px; margin-top:12px; }
  .printer-visual::before { width:330px; height:330px; }
  .printer-visual::after { width:280px; height:280px; }
  .printer-device { width:225px; height:270px; }
  .printer-device::before { left:20px; right:20px; top:78px; height:78px; }
  .printer-screen { top:21px; left:62px; width:101px; height:45px; }
  .paper-sheet { left:39px; top:101px; width:147px; height:94px; padding:18px; }
  .paper-sheet b { margin-top:12px; font-size:18px; }
  .printer-tray { left:28px; right:28px; bottom:22px; height:47px; }
  .printer-chip { min-width:168px; padding:13px 15px; }
  .printer-chip b { font-size:12px; }
  .chip-format { top:42px; right:-17px; }
  .chip-color { bottom:35px; left:-13px; }
  .toshiba-fit { padding-top:78px; padding-bottom:82px; }
  .fit-grid { grid-template-columns:1fr; margin-top:38px; }
  .fit-grid article:last-child { grid-column:auto; }
  .fit-grid article { min-height:245px; }
  .fit-grid h3 { margin-top:42px; }
  .choice-grid { grid-template-columns:1fr; }
  .toshiba-fields { padding-left:20px; padding-right:20px; }
  .prints-field { align-items:stretch; flex-direction:column; }
  .prints-field input { width:100%; text-align:left; }
  .toshiba-result { min-height:760px; padding:40px 20px; }
  .print-prices { grid-template-columns:1fr; }
  .rental-price strong { font-size:43px; }
  .hero h1 { font-size:50px; }
  .hero-lead { font-size:17px; }
  .hero-actions { align-items:stretch; flex-direction:column; gap:8px; }
  .primary-button { width:100%; }
  .text-button { align-self:center; }
  .hero-proof { display:grid; grid-template-columns:1fr 1fr; gap:20px 10px; }
  .hero-proof span { min-width:0; margin:0; padding:0; border:0; }
  .hero-visual { min-height:390px; }
  .support-card { right:-12px; }
  .security-card { left:-8px; }
  .trust-bar { align-items:flex-start; flex-direction:column; gap:12px; text-align:left; }
  .trust-bar i { display:none; }
  .trust-bar span::before { content:"✓"; margin-right:9px; color:var(--blue); }
  .section-shell { width:min(100% - 40px,1180px); }
  .services { padding-top:78px; padding-bottom:82px; }
  .section-heading { grid-template-columns:1fr; gap:22px; }
  .section-heading>p { font-size:16px; }
  .service-grid { grid-template-columns:1fr; }
  .service-card:last-child { grid-column:auto; }
  .service-card { min-height:280px; }
  .calculator-section { padding:78px 0; }
  .calculator-shell { width:calc(100% - 28px); }
  .calculator-intro { padding:0 6px; }
  .calculator-intro h2 { font-size:42px; }
  .calculator-head,.fields,.lead-form { padding-left:20px; padding-right:20px; }
  .result-box { margin-left:20px; margin-right:20px; }
  .calc-field { min-height:82px; }
  .form-grid { grid-template-columns:1fr; }
  .revealed-price { font-size:41px; }
  .onboarding { padding-top:78px; padding-bottom:82px; }
  .timeline { grid-template-columns:1fr; margin-top:45px; border-top:0; }
  .timeline li,.timeline li:nth-child(3n+2),.timeline li:nth-child(3n+3),.timeline li:nth-child(even) { min-height:auto; padding:24px 0 26px 39px; border-left:1px solid var(--line); border-bottom:0; }
  .timeline li::before,.timeline li:nth-child(3n+2)::before,.timeline li:nth-child(3n+3)::before,.timeline li:nth-child(even)::before,.timeline li:nth-child(n+4)::before { top:28px; left:-5px; bottom:auto; }
  .timeline b { margin-top:9px; }
  .sla-section { padding:78px 0; }
  .sla-row { min-height:78px; grid-template-columns:1.35fr .65fr .65fr; padding:0 15px; }
  .sla-row span,.sla-row b { font-size:11px; }
  .sla-head { min-height:48px; }
  .iso-row { display:grid; grid-template-columns:1fr 1fr; }
  .final-cta { padding:78px 21px; }
  .final-cta-inner>div { align-items:stretch; flex-direction:column; gap:12px; }
  .email-link { align-self:center; }
  .site-footer { grid-template-columns:1fr; gap:28px; padding-top:45px; }
  .footer-summary,.footer-bottom { grid-column:auto; }
  .footer-bottom { align-items:flex-start; flex-direction:column; justify-content:flex-start; }
  .legal-hero { padding:112px 0 58px; }
  .legal-content { padding-top:62px; padding-bottom:78px; }
  .legal-data-grid { grid-template-columns:1fr; }
  .cookie-table { border:0; overflow:visible; }
  .cookie-row,.cookie-head { grid-template-columns:1fr; gap:8px; margin-bottom:12px; padding:18px; border:1px solid var(--line); border-radius:10px; }
  .cookie-head { display:none; }
}

@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; } .client-carousel { overflow-x:auto; -webkit-mask-image:none; mask-image:none; } .client-carousel-track { transform:none!important; } .client-carousel-set[aria-hidden="true"] { display:none; } }

.spam-fields { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.cookie-consent { position:fixed; z-index:1200; right:24px; bottom:24px; width:min(680px,calc(100% - 48px)); padding:24px; border:1px solid rgba(255,255,255,.16); border-radius:16px; background:#10253d; color:#fff; box-shadow:0 24px 70px rgba(4,18,33,.34); }
.cookie-consent-copy b { display:block; margin-bottom:7px; font-size:20px; }
.cookie-consent-copy p { margin:0; color:rgba(255,255,255,.78); line-height:1.55; }
.cookie-consent-copy a { display:inline-block; margin-top:8px; color:#fff; text-decoration:underline; }
.cookie-actions { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.cookie-actions button { border:1px solid rgba(255,255,255,.3); border-radius:8px; padding:11px 15px; background:transparent; color:#fff; cursor:pointer; font:inherit; font-weight:700; }
.cookie-actions .cookie-primary { border-color:#1b74e8; background:#1b74e8; }
.cookie-options { display:grid; gap:10px; margin-top:18px; padding-top:16px; border-top:1px solid rgba(255,255,255,.14); }
.cookie-options label { display:flex; align-items:flex-start; gap:10px; }
.cookie-options input { margin-top:4px; accent-color:#1b74e8; }
.cookie-options span,.cookie-options small { display:block; }
.cookie-options small { margin-top:3px; color:rgba(255,255,255,.7); }
.cookie-settings-button { position:fixed; z-index:1100; right:22px; bottom:48px; display:grid; width:46px; height:46px; padding:0; place-items:center; border:1px solid rgba(16,37,61,.2); border-radius:50%; background:rgba(255,255,255,.94); color:#10253d; box-shadow:0 6px 20px rgba(4,18,33,.14); cursor:pointer; transition:transform .2s ease,box-shadow .2s ease,background .2s ease; }
.cookie-settings-button svg { width:21px; height:21px; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.cookie-settings-button:hover { transform:translateY(-2px); background:#fff; box-shadow:0 9px 24px rgba(4,18,33,.18); }
.cookie-settings-button:focus-visible { outline:3px solid rgba(27,116,232,.4); outline-offset:3px; }
@media (max-width:640px) { .cookie-consent { right:14px; bottom:14px; width:calc(100% - 28px); padding:20px; } .cookie-actions { flex-direction:column; } .cookie-actions button { width:100%; } .cookie-settings-button { right:14px; bottom:43px; width:44px; height:44px; } }
