/* Scoped to the native document automation service page. */
.document-service { color: var(--ink); }
.document-hero { display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:clamp(28px,5vw,88px);padding:145px clamp(22px,6vw,92px) 70px;background:var(--sky);align-items:center; }
.document-hero-copy { max-width:740px; }
.document-back { display:inline-block;color:var(--denim);font-weight:700;font-size:.85rem;margin-bottom:30px; }
.document-service .eyebrow { color:var(--denim); }
.document-hero h1 { font-size:clamp(2.6rem,4.5vw,4.8rem);line-height:1.04;letter-spacing:-.045em;margin:0 0 24px; }
.document-hero .document-lead { color:var(--ink);font-size:clamp(1.15rem,1.6vw,1.4rem);line-height:1.5;font-weight:600; }
.document-hero p:not(.eyebrow) { max-width:640px; }
.document-service p { line-height:1.75;color:var(--muted); }
.document-hero .button { margin-top:16px;line-height:1.4;padding:16px 22px;text-align:center; }
.document-hero-visual { margin:0;max-width:500px;justify-self:center; }
.document-hero-visual img { display:block;width:100%;height:auto;max-height:620px;object-fit:contain; }
.document-section { display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,8vw,130px);padding:clamp(54px,7vw,104px) clamp(22px,6vw,92px); }
.document-section h2, .document-contact h2 { font-size:clamp(2rem,3vw,3.25rem);line-height:1.12;letter-spacing:-.035em;margin:0 0 24px;max-width:660px; }
.document-section > div > p { max-width:680px; }
.document-list { margin:0; }
.document-list > div { padding:24px 0;border-top:1px solid var(--line); }
.document-list > div:first-child { padding-top:0;border-top:0; }
.document-list dt { font-size:1.2rem;font-weight:800;margin-bottom:8px; }
.document-list dd { margin:0;line-height:1.75;color:var(--muted); }
.document-process { background:var(--sky); }
.document-steps { margin:0;padding-left:26px; }
.document-steps li { padding:0 0 24px 10px;color:var(--muted);line-height:1.75; }
.document-steps li::marker { color:var(--denim);font-weight:800; }
.document-steps strong { color:var(--ink); }
.document-evidence { border-bottom:1px solid var(--line); }
.document-link { display:inline-block;color:var(--denim);font-weight:800;text-decoration:underline;text-underline-offset:5px;margin-top:14px;line-height:1.7; }
.document-link:hover, .document-back:hover { color:var(--royal); }
.document-answers h3 { font-size:1.15rem;line-height:1.4;margin:28px 0 8px; }
.document-answers h3:first-child { margin-top:0; }
.document-answers p { margin:0; }
.document-contact { padding:clamp(54px,7vw,100px) clamp(22px,6vw,92px);background:var(--denim-dark);color:white; }
.document-contact h2 { max-width:820px;color:white; }
.document-contact .eyebrow { color:var(--cyan); }
.document-contact p:not(.eyebrow) { max-width:760px;color:#d9e8ff; }
.document-contact .button { margin:14px 0 20px;line-height:1.4;padding:16px 22px;text-align:center; }
.document-email { display:block;width:fit-content;color:#d9e8ff;text-decoration:underline;text-underline-offset:4px;line-height:1.7; }
.document-service a:focus-visible { outline:3px solid var(--cyan);outline-offset:5px; }
@media (max-width:900px) {
 .document-hero { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);padding-top:130px;gap:26px; }
 .document-section { gap:42px; }
}
@media (max-width:640px) {
 .document-hero { grid-template-columns:minmax(0,1fr);padding-top:122px;padding-bottom:36px;gap:24px; }
 .document-hero h1 { font-size:clamp(2.35rem,10vw,3rem); }
 .document-back { margin-bottom:22px; }
 .document-hero-visual { max-width:300px; }
 .document-hero-visual img { max-height:340px; }
 .document-section { grid-template-columns:minmax(0,1fr);gap:24px;padding-top:48px;padding-bottom:48px; }
 .document-service .button { width:100%;min-width:0;max-width:100%; }
 .document-contact { padding-bottom:65px; }
}

/* Visual document workflow, version 1.0.10. */
.dv-hero {padding:130px clamp(22px,6vw,92px) 52px;background:var(--sky);}
.dv-hero .document-back{margin-bottom:20px;}
.dv-hero h1{font-size:clamp(2.3rem,4.2vw,4.5rem);line-height:1.08;letter-spacing:-.045em;max-width:1200px;text-wrap:balance;margin:0;}
.dv-hero .dv-promise{font-size:clamp(1.15rem,1.6vw,1.5rem);margin:16px 0 36px;color:var(--ink);}
.dv-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;list-style:none;margin:0;padding:0;}
.dv-flow li{position:relative;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:18px;animation:dv-enter .5s both;}
.dv-flow li:nth-child(2){animation-delay:.08s}.dv-flow li:nth-child(3){animation-delay:.16s}.dv-flow li:nth-child(4){animation-delay:.24s}
.dv-flow li:not(:last-child)::after{content:'→';position:absolute;top:10px;left:88px;right:0;border-bottom:1px solid #9eb8df;color:var(--denim);text-align:right;font-size:24px;line-height:24px;}
.dv-flow strong{display:block;font-size:clamp(1.35rem,2vw,1.9rem);line-height:1.25;margin-bottom:8px;}
.dv-flow li div>span{font-size:.95rem;color:var(--muted);line-height:1.5;display:block;}
.dv-symbol{position:relative;display:grid;place-items:center;width:64px;height:64px;color:var(--royal);font-size:40px;line-height:1;}
.dv-paper::before{content:'';width:34px;height:44px;border:2px solid currentColor;border-radius:3px;transform:rotate(-6deg);}
.dv-paper::after{content:'';position:absolute;width:18px;height:2px;top:25px;left:24px;background:currentColor;box-shadow:0 8px currentColor,0 16px currentColor;transform:rotate(-6deg);}
.dv-data::before{content:'';width:44px;height:36px;border:2px solid currentColor;background:repeating-linear-gradient(0deg,transparent 0 10px,currentColor 10px 12px);}
.dv-data::after{content:'';position:absolute;height:36px;border-left:2px solid currentColor;left:27px;}
.dv-check{border:2px solid currentColor;border-radius:50%;width:54px;height:54px;margin:5px;}
.dv-done{background:var(--royal);color:white;border-radius:50%;}
.dv-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:38px;padding-top:24px;border-top:1px solid #c8d9ee;}
.dv-hero-bottom p{margin:0;color:var(--ink);font-weight:600;}
.dv-proof,.dv-method,.dv-details{padding:60px clamp(22px,6vw,92px);}
.dv-proof{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center;}
.dv-proof h2,.dv-method h2,.dv-contact h2{font-size:clamp(1.9rem,3vw,3rem);line-height:1.15;letter-spacing:-.035em;margin:0 0 18px;}
.dv-case-flow{display:grid;grid-template-columns:auto 1fr auto 1fr auto;gap:14px;align-items:center;font-weight:800;color:var(--denim);font-size:clamp(1rem,1.4vw,1.4rem);}
.dv-case-flow b{text-align:center;font-size:30px;font-weight:400;}
.dv-case-flow p{grid-column:1/-1;margin:16px 0 0;font-size:.95rem;font-weight:400;}
.dv-method{background:var(--denim-dark);color:white;}
.dv-method .eyebrow{color:var(--cyan);}.dv-method h2{color:white;}
.dv-route{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:30px 0 0;padding:0;gap:24px;}
.dv-route li{display:flex;flex-direction:column;border-top:1px solid #61779a;padding-top:18px;position:relative;}
.dv-route li:not(:last-child)::after{content:'→';position:absolute;top:-16px;right:0;background:var(--denim-dark);padding-left:8px;font-size:22px;}
.dv-route span{color:var(--cyan);font-size:.85rem;margin-bottom:8px;}
.dv-route strong{font-size:1.35rem;}.dv-route small{font-size:.9rem;color:#d9e8ff;margin-top:8px;line-height:1.5;}
.dv-details{max-width:1100px;margin:auto;}.dv-details h2{font-size:1.5rem;margin:0 0 24px;}
.dv-details details{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;padding:0;margin:0;}.dv-details summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-weight:700;font-size:1.05rem;}.dv-details summary::-webkit-details-marker{display:none;}.dv-details summary::after{content:'+';font-size:24px;color:var(--royal);}.dv-details details[open] summary::after{content:'−';}.dv-details summary:hover{color:var(--royal);}.dv-details summary:focus-visible{outline:3px solid var(--cyan);outline-offset:4px;}.dv-details details>div{padding:0 0 18px;color:var(--muted);line-height:1.7;}.dv-details details p{margin:0 0 12px;}.dv-details ul{padding-left:22px;margin:0;}
.dv-contact{padding:48px clamp(22px,6vw,92px) 60px;background:var(--sky);text-align:center;}.dv-contact h2{margin-bottom:24px;}.dv-contact .document-email{color:var(--denim);margin:18px auto 0;}
.dv-hero .button,.dv-contact .button{line-height:1.4;padding:16px 24px;text-align:center;}
@keyframes dv-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:700px){
.dv-hero{padding-top:116px;padding-bottom:30px;}.dv-hero .document-back{display:none;}.dv-hero .eyebrow{font-size:.68rem;margin-bottom:12px;}.dv-hero h1{font-size:2.25rem;}.dv-hero .dv-promise{font-size:1.05rem;margin:14px 0 24px;}
.dv-flow{grid-template-columns:1fr;gap:20px;}.dv-flow li{flex-direction:row;gap:18px;align-items:center;min-height:54px;}.dv-symbol{flex:none;width:44px;height:44px;font-size:30px;}.dv-paper::before{width:26px;height:34px;}.dv-paper::after{width:14px;left:16px;top:15px;box-shadow:0 7px currentColor,0 14px currentColor;}.dv-data::before{width:34px;height:30px;}.dv-data::after{height:30px;left:20px;}.dv-check{width:40px;height:40px;margin:2px;}.dv-flow strong{font-size:1.2rem;margin:0 0 3px;}.dv-flow li div>span{font-size:.8rem;}.dv-flow li:not(:last-child)::after{content:'↓';border:0;top:49px;left:14px;right:auto;font-size:19px;line-height:20px;}
.dv-hero-bottom{display:block;margin-top:24px;padding-top:20px;}.dv-hero-bottom p{font-size:.85rem;margin:0 0 14px;}.dv-hero .button,.dv-contact .button{width:100%;min-width:0;}
.dv-proof,.dv-method,.dv-details{padding:40px 22px;}.dv-proof{grid-template-columns:1fr;gap:30px;}.dv-case-flow{gap:8px;font-size:.95rem;}.dv-case-flow b{font-size:24px;}.dv-case-flow p{font-size:.85rem;}.dv-route{grid-template-columns:1fr;gap:24px;}.dv-route li{display:grid;grid-template-columns:24px 92px 1fr;align-items:center;gap:10px;border:0;padding:0;}.dv-route span,.dv-route small{margin:0;}.dv-route strong{font-size:1rem;}.dv-route small{font-size:.78rem;}.dv-route li:not(:last-child)::after{content:'↓';top:auto;bottom:-24px;left:0;right:auto;padding:0;font-size:17px;}.dv-details summary{font-size:.95rem;}.dv-contact{padding:36px 22px 44px;}
}
@media(prefers-reduced-motion:reduce){.dv-flow li{animation:none;}}
