

:root { --navy:#071a33; --blue:#1269f6; --cyan:#30c5ff; --slate:#607087; --line:#dce5ef; --soft:#f5f8fc; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#fff; color:var(--navy); font-family:Arial, Helvetica, sans-serif; }
a { color:inherit; text-decoration:none; }
button { font:inherit; }
.site-header { height:88px; border-bottom:1px solid var(--line); background:rgba(255,255,255,.96); position:sticky; top:0; z-index:20; backdrop-filter:blur(12px); }
.nav-wrap { max-width:1480px; height:100%; margin:auto; padding:0 48px; display:flex; align-items:center; justify-content:space-between; gap:34px; }
.logo { display:inline-flex; align-items:center; }
.logo img { display:block; width:auto; height:64px; filter:brightness(0) invert(1); }
.site-header .logo img { filter:none; }
footer .logo img { height:92px; }
.logo-mark { width:34px; height:40px; display:inline-block; background:linear-gradient(145deg,#087bff,#0758dc); clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%); position:relative; }
.logo-mark:after { content:""; position:absolute; width:3px; background:white; top:5px; bottom:5px; left:15px; transform:rotate(-30deg); }
.logo-mark span { position:absolute; width:28px; height:3px; background:#fff; top:18px; left:3px; transform:rotate(-30deg); }
.nav { display:flex; align-items:center; gap:50px; font-size:15px; font-weight:650; }
.nav a,.nav-actions>a:first-child { transition:color .2s; }.nav a:hover,.nav-actions>a:first-child:hover { color:var(--blue); }
.nav-actions { display:flex; align-items:center; gap:28px; font-size:15px; font-weight:650; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:52px; padding:0 25px; border-radius:8px; font-weight:700; border:1px solid transparent; transition:transform .2s, box-shadow .2s, background .2s; cursor:pointer; }
.button:hover { transform:translateY(-2px); }.button.outline { color:var(--blue); border-color:var(--blue); }.button.small { min-height:46px; padding:0 22px; }
.button.primary { background:linear-gradient(120deg,#0f60ec,#126eff); color:white; box-shadow:0 10px 24px rgba(18,105,246,.2); }
.menu-button { display:none; background:none; border:0; color:var(--navy); }
.section { padding:110px max(48px,calc((100vw - 1360px)/2)); }
.hero { min-height:820px; padding-top:74px; padding-bottom:52px; display:grid; grid-template-columns:1fr 1.06fr; grid-template-rows:auto auto; gap:60px 76px; position:relative; overflow:hidden; background:radial-gradient(circle at 70% 20%,#f4f8ff 0,transparent 38%); }
.blueprint { position:absolute; inset:auto auto -70px -70px; width:600px; height:280px; opacity:.18; transform:rotate(4deg); background-image:linear-gradient(#5da7ff 1px,transparent 1px),linear-gradient(90deg,#5da7ff 1px,transparent 1px); background-size:36px 36px; border:1px solid #5da7ff; pointer-events:none; }
.hero-copy { padding-top:52px; position:relative; z-index:1; }
.eyebrow { display:block; color:var(--blue); font-size:12px; letter-spacing:.18em; font-weight:800; margin-bottom:19px; }
.hero h1 { font-size:clamp(52px,5.2vw,78px); line-height:1.04; letter-spacing:-.055em; margin:0 0 26px; max-width:680px; }.hero h1 span { color:var(--blue); }
.hero-copy>p { max-width:610px; margin:0; color:#435a76; font-size:20px; line-height:1.65; }
.trust-row { display:flex; align-items:center; margin-top:42px; color:var(--navy); font-size:14px; font-weight:600; }.trust-row span { display:flex; gap:11px; align-items:center; padding:0 25px; border-right:1px solid #ccd8e6; }.trust-row span:first-child { padding-left:0; }.trust-row span:last-child { border:0; }.trust-row svg { color:var(--blue); }
.upload-card { min-height:570px; padding:52px 38px 32px; background:rgba(255,255,255,.94); border:1px solid #cedbeb; border-radius:22px; box-shadow:0 22px 55px rgba(21,51,86,.14); text-align:center; position:relative; transition:.2s; }
.upload-card:after { content:""; position:absolute; inset:25px; border:2px dashed #5f9eff; border-radius:17px; pointer-events:none; }.upload-card.dragging { box-shadow:0 24px 60px rgba(18,105,246,.28); transform:translateY(-3px); }.upload-card.dragging:after { background:#f1f7ff; }
.upload-card>* { position:relative; z-index:2; }.conversion-icons { display:flex; justify-content:center; align-items:center; gap:30px; margin:8px auto 30px; }.doc { width:88px; height:112px; padding-top:54px; border:2px solid #7b8ca1; border-radius:8px; background:linear-gradient(135deg,transparent 76%,#eaf1f8 76%); font-weight:800; font-size:19px; }.doc.pdf { color:#fff; background:linear-gradient(135deg,transparent 76%,#eaf1f8 76%),linear-gradient(#fff,#fff); position:relative; }.doc.pdf:after { content:"PDF"; position:absolute; left:12px; right:12px; top:47px; background:#e93636; border-radius:4px; padding:5px; }.doc.cad { color:#fff; background-color:#fff; position:relative; }.doc.cad:after { content:"CAD"; position:absolute; left:12px; right:12px; top:47px; background:#176af2; border-radius:4px; padding:5px; }.flow { display:flex; color:var(--blue); align-items:center; }.flow i { display:block; width:34px; border-top:4px dotted currentColor; }
.upload-card h2 { font-size:27px; margin:0 0 8px; letter-spacing:-.02em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.upload-card p { color:#667a91; margin:0 0 26px; }.text-button { border:0; background:none; color:var(--blue); text-decoration:underline; padding:0; cursor:pointer; }
.format-switch { display:grid; grid-template-columns:1fr 1fr; max-width:490px; margin:0 auto 18px; border:1px solid #b9c8da; border-radius:8px; overflow:hidden; }.format-switch button { min-height:53px; color:var(--navy); background:#fff; border:0; cursor:pointer; font-weight:700; }.format-switch button.active { color:white; background:var(--blue); }
.upload-button { border:0; width:min(490px,100%); font-size:17px; }.upload-card small { display:block; color:#708197; margin-top:16px; }.upload-card small b { padding:0 8px; }
.drawing-types { grid-column:1/-1; align-self:end; position:relative; z-index:1; }.drawing-types>p { display:flex; align-items:center; justify-content:center; gap:24px; font-weight:700; }.drawing-types>p span { height:1px; background:#bdcbdc; width:180px; }.drawing-types>div { max-width:850px; margin:22px auto 0; display:grid; grid-template-columns:repeat(4,1fr); }.drawing-types>div span { display:flex; flex-direction:column; align-items:center; gap:8px; border-right:1px solid #cbd6e2; }.drawing-types>div span:last-child { border:0; }.drawing-types svg { width:35px; height:35px; }
.section-heading { text-align:center; max-width:740px; margin:0 auto 56px; }.section-heading.left { text-align:left; max-width:none; margin-left:0; }.section-heading h2,.services h2,.pricing h2,.cta h2 { font-size:clamp(38px,4vw,58px); letter-spacing:-.045em; line-height:1.1; margin:0 0 18px; }.section-heading p,.services-copy>p,.pricing p { color:var(--slate); font-size:18px; line-height:1.65; margin:0; }
.how { background:var(--soft); }.steps { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }.steps article { background:#fff; border:1px solid var(--line); border-radius:14px; padding:36px; position:relative; }.steps article>b { position:absolute; right:28px; top:25px; color:#d8e5f5; font-size:38px; }.icon-box { width:58px; height:58px; display:grid; place-items:center; color:var(--blue); background:#eaf3ff; border-radius:12px; }.steps h3,.service-grid h3,.article-grid h3 { font-size:21px; margin:25px 0 10px; }.steps p,.service-grid p,.article-grid p { color:var(--slate); line-height:1.65; margin:0; }
.services { display:grid; grid-template-columns:.72fr 1.28fr; gap:90px; align-items:center; }.services-copy { max-width:470px; }.text-link { display:inline-flex; align-items:center; gap:8px; color:var(--blue); font-weight:750; margin-top:28px; }.service-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }.service-grid article { border:1px solid var(--line); border-radius:13px; padding:30px; }.service-grid article>svg { color:var(--blue); width:31px; height:31px; }
.why { padding-top:90px; background:var(--navy); color:#fff; }.why .eyebrow { color:#6fb5ff; }.stats { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid #334760; }.stats div { padding:34px 25px; border-right:1px solid #334760; display:flex; flex-direction:column; gap:8px; }.stats div:last-child { border:0; }.stats strong { font-size:27px; }.stats span { color:#aebed0; font-size:14px; }
.pricing { background:#f6f9fd; }.pricing-panel { background:white; border:1px solid var(--line); border-radius:18px; padding:55px 62px; display:grid; grid-template-columns:1.4fr .8fr auto; align-items:center; gap:55px; box-shadow:0 15px 45px rgba(24,54,91,.07); }.pricing-panel ul { list-style:none; padding:0; margin:0; display:grid; gap:14px; }.pricing-panel li { display:flex; align-items:center; gap:10px; font-weight:650; }.pricing-panel li svg { color:var(--blue); }
.article-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }.article-grid article { border:1px solid var(--line); border-radius:13px; padding:32px; }.article-grid article>span { color:var(--blue); font-size:11px; font-weight:800; letter-spacing:.14em; }.article-grid article h3 { margin-top:16px; }.article-grid article a { display:inline-flex; align-items:center; gap:7px; color:var(--blue); font-weight:750; margin-top:25px; }
.cta { background:linear-gradient(125deg,#0f64f0,#064ab8); color:white; display:flex; justify-content:space-between; align-items:center; padding-top:75px; padding-bottom:75px; }.cta .eyebrow { color:#b8d9ff; }.cta p { color:#dbeaff; font-size:18px; }.cta-actions { display:flex; gap:12px; }.button.light { background:white; color:var(--blue); }.button.ghost { color:white; border-color:#88b9ff; }
footer { background:#061426; color:white; padding:70px max(48px,calc((100vw - 1360px)/2)) 24px; }.footer-main { display:grid; grid-template-columns:2fr repeat(3,1fr); gap:55px; }.footer-main>div { display:flex; flex-direction:column; gap:13px; }.footer-main p,.footer-main a,.footer-main span { color:#9eafc3; font-size:14px; line-height:1.7; }.footer-main p { max-width:320px; }.footer-main h3 { font-size:14px; margin:5px 0 8px; }.footer-bottom { border-top:1px solid #26374b; margin-top:50px; padding-top:24px; display:flex; justify-content:space-between; color:#788aa0; font-size:13px; }
@media(max-width:1050px) { .nav,.nav-actions { display:none; }.menu-button { display:block; }.nav.open { display:flex; position:absolute; top:88px; left:0; right:0; padding:25px 35px; background:white; flex-direction:column; align-items:flex-start; gap:24px; border-bottom:1px solid var(--line); }.hero { grid-template-columns:1fr; }.hero-copy { padding-top:10px; }.services { grid-template-columns:1fr; gap:50px; }.services-copy { max-width:700px; }.pricing-panel { grid-template-columns:1fr; }.stats { grid-template-columns:1fr 1fr; }.stats div:nth-child(2) { border-right:0; }.drawing-types { grid-column:auto; }}
@media(max-width:700px) { .site-header { height:72px; }.nav-wrap { padding:0 20px; }.logo { font-size:23px; }.logo-mark { width:28px; height:33px; }.section { padding:75px 20px; }.hero { padding-top:45px; gap:38px; }.hero h1 { font-size:45px; }.hero-copy>p { font-size:17px; }.trust-row { align-items:flex-start; flex-direction:column; gap:14px; }.trust-row span { border:0; padding:0; }.upload-card { min-height:500px; padding:40px 18px 24px; border-radius:16px; }.upload-card:after { inset:13px; }.conversion-icons { gap:14px; }.doc { width:68px; height:90px; padding-top:44px; }.doc.pdf:after,.doc.cad:after { top:38px; left:8px; right:8px; }.upload-card h2 { font-size:21px; }.drawing-types>p span { width:35px; }.drawing-types>div { grid-template-columns:1fr 1fr; gap:26px 0; }.drawing-types>div span:nth-child(2) { border:0; }.steps,.service-grid,.article-grid { grid-template-columns:1fr; }.stats { grid-template-columns:1fr; }.stats div { border-right:0; border-bottom:1px solid #334760; }.pricing-panel { padding:35px 25px; }.cta { align-items:flex-start; flex-direction:column; gap:30px; }.cta-actions { width:100%; flex-direction:column; }.footer-main { grid-template-columns:1fr 1fr; }.footer-main>div:first-child { grid-column:1/-1; }.footer-bottom { gap:15px; flex-direction:column; }}

@media(max-width:700px) { .logo img { height:52px; } footer .logo img { height:82px; } }

/* Working upload form */
.upload-form{min-height:760px;padding-top:34px}.upload-form:after{inset:20px}.upload-form .conversion-icons{margin-bottom:16px}.upload-form .doc{width:66px;height:84px;padding-top:42px}.upload-form .doc.pdf:after,.upload-form .doc.cad:after{top:35px;left:8px;right:8px;font-size:15px}.arrow-icon{font-size:32px;font-weight:700}.customer-fields{width:min(490px,100%);margin:0 auto 15px;display:grid;grid-template-columns:1fr 1fr;gap:12px;text-align:left}.customer-fields label{display:flex;flex-direction:column;gap:6px}.customer-fields label span{font-size:12px;font-weight:750;color:#435a76}.customer-fields .field-wide{grid-column:1/-1}.customer-fields input{width:100%;height:45px;border:1px solid #b9c8da;border-radius:7px;padding:0 13px;color:var(--navy);background:#fff}.customer-fields input:focus{outline:3px solid rgba(18,105,246,.16);border-color:var(--blue)}.privacy-check{width:min(490px,100%);margin:0 auto 13px;display:flex;align-items:flex-start;gap:9px;text-align:left;color:#607087;font-size:12px;line-height:1.45}.privacy-check input{margin-top:2px}.submit-button{border:0;width:min(490px,100%);font-size:16px}.submit-button:disabled{opacity:.65;cursor:wait}.form-message{width:min(490px,100%);min-height:0;margin:0 auto 10px;padding:0;font-size:13px;font-weight:650}.form-message.error,.form-message.success{padding:10px 12px;border-radius:7px}.form-message.error{color:#9b1c1c;background:#fff0f0}.form-message.success{color:#126133;background:#edf9f1}.website-field{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}@media(max-width:700px){.upload-form{min-height:830px;padding-top:30px}.customer-fields{grid-template-columns:1fr}.customer-fields .field-wide{grid-column:auto}}
.password-field small{display:block;margin-top:6px;color:#687b94;font-size:12px;font-weight:400}
.password-field[hidden]{display:none!important}
#source-icon:after,#target-icon:after{content:attr(data-label)}

/* Professional, direction-aware conversion illustration. */
.upload-form .conversion-icons{display:flex;justify-content:center;align-items:center;gap:22px;margin:8px auto 16px}
.upload-form .format-document{width:84px;height:104px;border:1px solid #a9bad0;border-radius:12px;background:linear-gradient(145deg,#fff 0 70%,#f2f6fb 70%);box-shadow:0 10px 24px rgba(30,55,88,.1),inset 0 0 0 1px rgba(255,255,255,.8);display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:0 9px 12px;position:relative;overflow:hidden}
.upload-form .format-document strong{min-width:54px;padding:7px 5px 6px;border-radius:6px;color:#fff;font-size:17px;line-height:1;letter-spacing:.02em;box-shadow:0 6px 14px rgba(13,34,61,.13);position:relative;z-index:2;text-align:center}
.upload-form .format-document small{margin:7px 0 0;color:#71839a;font-size:8px;line-height:1;font-weight:800;letter-spacing:.15em;position:relative;z-index:2}
.upload-form .format-pdf strong{background:linear-gradient(135deg,#f04444,#d92532)}
.upload-form .format-cad strong{background:linear-gradient(135deg,#2378f5,#0e5ed8)}
.upload-form .format-fold{position:absolute;top:-1px;right:-1px;width:27px;height:27px;background:linear-gradient(225deg,#fff 0 48%,#dce6f2 49% 52%,#edf3f9 53%);border-radius:0 12px 0 5px;z-index:3}
.upload-form .format-grid{position:absolute;inset:8px;opacity:.34;background-image:linear-gradient(#9dc2f4 1px,transparent 1px),linear-gradient(90deg,#9dc2f4 1px,transparent 1px);background-size:9px 9px;mask-image:linear-gradient(to bottom,#000,transparent 75%)}
.upload-form .format-document:not(.format-cad) .format-grid{display:none}
.upload-form .conversion-flow{width:92px;display:grid;gap:8px;align-items:center}
.upload-form .flow-label{color:#6d8097;font-size:8px;font-weight:800;letter-spacing:.14em;text-align:center}
.upload-form .flow-line{height:2px;background:linear-gradient(90deg,#a9c9f8,var(--blue));border-radius:2px;position:relative}
.upload-form .flow-line:before{content:"";position:absolute;left:28px;top:-3px;width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:-14px 0 0 #9fc4fa,14px 0 0 #5b9cf7}
.upload-form .flow-line:after{content:"";position:absolute;right:-1px;top:-4px;width:8px;height:8px;border-top:2px solid var(--blue);border-right:2px solid var(--blue);transform:rotate(45deg)}
@media(max-width:700px){.upload-form .format-document{width:70px;height:90px}.upload-form .conversion-flow{width:66px}.upload-form .format-document strong{min-width:46px;font-size:14px}.upload-form .flow-label{font-size:7px}}
.conversion-mode{display:grid;grid-template-columns:1fr 1fr;width:min(490px,100%);margin:0 auto 16px;border:1px solid #b9c8da;border-radius:9px;overflow:hidden}.conversion-mode button{min-height:42px;border:0;background:#fff;color:var(--navy);font-weight:750;cursor:pointer}.conversion-mode button.active{background:var(--blue);color:#fff}.cad-pdf-options{width:min(490px,100%);margin:0 auto 15px;text-align:left}.cad-pdf-options[hidden]{display:none!important}.cad-pdf-options summary{color:#607087;font-size:12px;font-weight:750;text-align:center;cursor:pointer}.cad-pdf-options>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:11px}.cad-pdf-options label{display:flex;flex-direction:column;gap:6px}.cad-pdf-options span{font-size:12px;font-weight:750;color:#435a76}.cad-pdf-options select{height:45px;border:1px solid #b9c8da;border-radius:7px;padding:0 12px;background:#fff;color:var(--navy)}@media(max-width:700px){.cad-pdf-options>div{grid-template-columns:1fr}}
