/* Website-first upgrade. Tokens inherit the current, verified Velocity identity. */
body.done48{--content:1280px;--gutter:max(24px,calc((100vw - var(--content))/2));--radius:8px}
.u-section{padding:88px var(--gutter)}
.done48 .d-header{gap:42px}
.done48 .d-header nav{gap:26px}
.done48 .d-header nav>a:not(.d-button){white-space:nowrap}
.done48 :is(a,button,summary):focus-visible{outline:3px solid var(--brand-blue);outline-offset:5px}
.done48 .d-footer :is(a,button):focus-visible,.done48 .u-closing a:focus-visible{outline-color:var(--accent)}
.u-hero.d-hero{grid-template-columns:1.05fr 1fr;gap:64px;padding-top:68px;padding-bottom:72px;min-height:650px;align-items:center}
.u-hero h1{font-size:clamp(44px,4.5vw,66px);line-height:1.06;letter-spacing:-.055em;margin-bottom:22px}
.u-hero .d-eyebrow{margin-bottom:20px}
.u-hero .d-lead{font-size:16px;line-height:1.65;max-width:510px;margin-bottom:22px}
.u-hero-price{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0 0 20px}
.u-hero-price strong{color:var(--brand-blue);font-size:31px;letter-spacing:-.05em;line-height:1.2}
.u-hero-price span{color:var(--muted);font-size:14px}
.u-timing{border-left:3px solid var(--brand-blue);padding-left:16px;max-width:450px}
.u-timing strong{font-size:15px}
.u-timing p{font-size:13px;color:var(--muted);line-height:1.55;margin:4px 0 0}
.u-hero .d-hero-actions{margin-top:25px;gap:12px 26px}
.u-demo{background:var(--ice);padding:25px 25px 0;border:1px solid var(--line);border-radius:var(--radius);min-width:0}
.u-demo>a{display:block;text-decoration:none;color:var(--ink)}
.u-demo-bar{display:flex;justify-content:space-between;gap:15px;font-size:9px;font-weight:700;letter-spacing:.08em;margin-bottom:15px;color:var(--muted)}
.u-demo img{width:100%;height:auto;border-radius:3px;border:1px solid var(--line);box-shadow:0 14px 30px #080c160a;aspect-ratio:1.44;object-fit:cover}
.u-demo-bottom{padding:21px 0;display:flex;justify-content:space-between;align-items:center;gap:16px;font-size:12px;color:var(--muted)}
.u-demo-bottom>span:last-child{font-weight:650;color:var(--brand-blue)}
.u-demo .d-icon{width:15px;height:15px;margin-left:3px}
.u-work{border-top:1px solid var(--line);background:#fff}
.u-work .d-section-heading{margin-bottom:32px}
.u-work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.u-work-card{display:block;text-decoration:none;border-bottom:1px solid var(--line);min-width:0}
.u-work-image{position:relative;border-radius:6px;overflow:hidden;background:var(--ice);border:1px solid var(--line)}
.u-work-image img{aspect-ratio:900/650;width:100%;object-fit:cover;height:auto;transition:transform .2s}
.u-work-card:hover img{transform:scale(1.025)}
.u-work-image>span{position:absolute;bottom:10px;left:10px;padding:6px 8px;background:#fff;color:var(--ink);font-size:8px;letter-spacing:.07em;font-weight:700;border-radius:3px}
.u-work-copy{padding:22px 0 12px}
.u-work-copy small{color:var(--muted);font-size:11px}
.u-work-copy h3{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:20px;margin:6px 0 10px}
.u-work-copy p{color:var(--muted);font-size:14px;line-height:1.6}
.u-work-note{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:24px}
.u-work-note p{max-width:700px;color:var(--muted);font-size:12px;margin:0}
.u-work-note a{white-space:nowrap}
.u-process{background:var(--ice)}
.u-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px;list-style:none;padding:0;margin:42px 0 0}
.u-steps li{border-top:1px solid var(--line);padding-top:24px}
.u-steps li>span{font-size:26px;color:var(--brand-blue);letter-spacing:-.04em;font-weight:550}
.u-steps h3{font-size:20px;margin:20px 0 12px}
.u-steps p{font-size:15px;color:var(--muted);margin:0}
.u-pricing{background:#fff}
.u-offer{border:1px solid var(--line);border-radius:var(--radius);display:grid;grid-template-columns:.85fr 1.15fr;overflow:hidden}
.u-price{padding:44px;background:var(--ice)}
.u-price h3{font-size:23px;max-width:260px}
.u-price-number{color:var(--brand-blue);font-size:64px;font-weight:750;line-height:1;letter-spacing:-.06em;margin:26px 0 8px}
.u-price>p{color:var(--muted);font-size:14px;margin-bottom:28px}
.u-price small{display:block;font-size:12px;color:var(--muted);margin-top:14px}
.u-inclusions{padding:44px}
.u-list{list-style:none;padding:0;margin:22px 0}
.u-list li{position:relative;padding:13px 0 13px 26px;border-bottom:1px solid var(--line);font-size:15px;line-height:1.6}
.u-list li::before{content:'✓';position:absolute;left:0;color:var(--brand-blue);font-weight:700}
.u-promise{font-size:13px;line-height:1.6;margin-top:24px}
.u-promise p{color:var(--muted);margin:8px 0 0}
.u-promise a{color:var(--brand-blue)}
.u-costs{grid-column:1/-1;border-top:1px solid var(--line);padding:30px 44px;display:grid;grid-template-columns:1fr 1fr;gap:50px}
.u-costs h3{font-size:15px;margin-bottom:8px}
.u-costs p,.u-costs a{font-size:13px;line-height:1.7;color:var(--muted);margin-bottom:0}
.u-costs a{display:inline-block;color:var(--brand-blue);padding-top:10px}
.u-support-teaser{border-block:1px solid var(--line);display:grid;grid-template-columns:1.05fr .95fr;gap:80px;background:var(--ice)}
.u-support-teaser h2{font-size:clamp(30px,3vw,42px)}
.u-support-teaser>div>p{color:var(--muted);font-size:15px;max-width:550px}
.u-support-summaries article{display:flex;gap:20px;padding:22px 0;border-top:1px solid var(--line)}
.u-support-summaries article>span{color:var(--brand-blue);font-size:12px;padding-top:5px}
.u-support-summaries h3{font-size:20px;margin-bottom:8px}
.u-support-summaries p{color:var(--muted);font-size:14px;margin:0}
.u-faq{background:#fff}
.u-faq details>summary{gap:24px;font-size:16px;min-height:64px}
.u-faq details>summary>span{color:var(--brand-blue);font-size:23px}
.u-faq details p{max-width:860px;font-size:15px}
.u-closing{background:var(--ink)}
.u-closing .d-eyebrow{color:#bdc6da}
.u-closing p,.u-closing small{color:#bdc6da}
.u-closing .d-button{background:var(--accent);color:var(--ink)}
.u-preview-note{padding:12px 16px;background:var(--ice);border-left:3px solid var(--brand-blue);font-size:13px;line-height:1.5;color:var(--muted)}
.u-start .d-start-intro>p,.u-start .d-start-intro li{color:var(--muted);max-width:490px}
.u-start .d-start-intro .u-list{margin:30px 0}
.u-support-hero{padding-bottom:64px}
.u-support-hero>p{max-width:720px}
.u-support-jump{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 18px}
.u-support-jump a{padding:11px 16px;border:1px solid var(--line);border-radius:4px;color:var(--brand-blue);font-size:14px;text-decoration:none;min-height:44px}
.u-support-jump a:hover{background:var(--ice)}
.u-support-hero .u-support-back{font-size:14px}
.u-service{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;border-top:1px solid var(--line)}
.u-service h2{font-size:clamp(32px,3vw,44px)}
.u-service p,.u-hosting p{font-size:15px;color:var(--muted)}
.u-service-price{font-size:14px!important;line-height:1.8}
.u-service-price strong{color:var(--brand-blue);font-size:30px;letter-spacing:-.03em}
.u-service-intro>p:first-of-type{max-width:340px}
.u-service-note{font-size:13px!important;border-top:1px solid var(--line);padding-top:20px;margin-top:24px}
.u-service a:not(.d-button),.u-hosting a{color:var(--brand-blue)}
.u-seo{background:var(--ice)}
.u-deliverables{padding-left:22px;margin:24px 0 34px}
.u-deliverables li{font-size:15px;color:var(--muted);padding-left:8px;margin:13px 0}
.u-deliverables li::marker{color:var(--brand-blue);font-weight:650}
.u-monthly-scope{background:#fff;padding:26px 30px;border:1px solid var(--line);border-radius:6px;margin:28px 0}
.u-monthly-scope p{font-size:13px}
.u-exclusions{border-bottom:1px solid var(--line);padding-bottom:12px}
.u-exclusions summary{font-size:16px;font-weight:650;cursor:pointer;min-height:44px}
.u-exclusions p{font-size:14px;margin-bottom:8px}
.u-hosting{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;border-bottom:1px solid var(--line)}
.u-hosting h2{font-size:38px}
.u-support-form>div:first-child>p{max-width:440px;color:var(--muted)}
.u-ledger{background:var(--ice);padding:38px;border:1px solid var(--line);border-radius:8px}
.u-ledger>strong{font-size:48px;color:var(--brand-blue);letter-spacing:-.045em}
.u-ledger strong small{font-size:14px;color:var(--muted);letter-spacing:0;display:block;margin-top:4px}
.u-ledger p{font-size:13px;color:var(--muted)}
.u-ledger dl{margin:25px 0}
.u-ledger dl>div{padding:14px 0;border-block-start:1px solid var(--line);display:flex;justify-content:space-between;gap:16px;font-size:13px}
.u-ledger dd{margin:0;font-weight:650;white-space:nowrap}
.u-V094.d-hero{grid-template-columns:1fr;text-align:center;max-width:880px;margin:auto;padding-inline:24px}
.u-V094 .d-hero-copy{max-width:650px;margin:auto}
.u-V094 .d-lead,.u-V094 .u-timing{margin-inline:auto}
.u-V094 .u-timing{border-left:0}
.u-V094 .u-hero-price,.u-V094 .d-hero-actions{justify-content:center}
.u-V094 .u-demo{max-width:650px;margin:auto}
/* The contact bar is enabled below at mobile widths. */
.done48 .d-mobile-action{display:none}
.done48{padding-bottom:0}
@media(min-width:1025px){.done48 .d-footer-main{flex-wrap:wrap;gap:22px}.done48 .d-footer-main nav{flex-wrap:wrap}}
@media(max-width:1100px){.done48 .d-header{gap:26px}.done48 .d-header nav{gap:18px}.done48 .d-logo img{width:148px}.u-hero.d-hero{gap:36px}.u-hero h1{font-size:48px}.u-service,.u-hosting{gap:44px}.u-support-teaser{gap:44px}}
@media(max-width:900px){.done48 .d-header{height:76px}.done48 .d-menu-toggle{display:inline-flex;align-items:center;gap:10px;margin-left:auto;min-height:44px;padding:9px 13px;background:#fff;border:1px solid var(--line);border-radius:4px;color:var(--ink)}.done48 .d-header nav{display:none;position:absolute;top:76px;left:0;right:0;background:#fff;padding:18px var(--gutter);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:4px;max-height:calc(100dvh - 76px);overflow:auto}.done48 .d-header nav.is-open{display:flex}.done48 .d-header nav>.d-button{margin:8px 0 0}.u-hero.d-hero{grid-template-columns:1fr 1fr;gap:28px;padding-block:50px}.u-hero h1{font-size:42px}.u-demo{padding:16px 16px 0}.u-demo-bar{font-size:7px}.u-demo-bottom{flex-direction:column;align-items:flex-start;gap:8px;padding-block:16px}.u-section{padding-block:64px}.u-work-grid{gap:18px}.u-work-copy h3{font-size:17px}.u-steps{gap:24px}.u-price,.u-inclusions{padding:30px}.u-price-number{font-size:52px}.u-costs{padding:24px 30px;gap:30px}.u-service,.u-hosting{grid-template-columns:1fr;gap:28px}.u-service-intro>p:first-of-type{max-width:600px}.u-service-intro .u-service-note{max-width:650px}.u-support-teaser{grid-template-columns:1fr;gap:24px}.u-support-summaries{display:grid;grid-template-columns:1fr 1fr;gap:24px}}
@media(max-width:640px){body.done48{--gutter:22px}.done48 .d-header{height:72px}.done48 .d-header nav{top:72px;max-height:calc(100dvh - 72px)}.done48 .d-logo img{width:148px}.u-hero.d-hero{grid-template-columns:1fr;padding-top:42px;padding-bottom:42px;gap:34px;min-height:0}.u-hero h1{font-size:clamp(37px,9.6vw,52px);line-height:1.06;margin-bottom:22px}.u-hero .d-eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:18px}.u-hero .d-lead{font-size:15px;line-height:1.65}.u-hero-price strong{font-size:30px}.u-hero-price span{font-size:13px}.u-hero .d-hero-actions{gap:10px 20px;flex-wrap:wrap}.u-hero .d-hero-actions>.d-button{min-height:52px}.u-hero .d-hero-actions>.d-link{font-size:13px}.u-demo{padding:18px 18px 0}.u-demo-bar{font-size:8px}.u-demo-bottom{flex-direction:row;gap:20px;font-size:11px}.u-demo-bottom>span:first-child{max-width:140px}.u-section{padding-block:52px}.u-work-grid{grid-template-columns:1fr;gap:28px}.u-work-copy{padding-top:16px}.u-work-copy h3{font-size:22px}.u-work-note{display:block}.u-work-note p{margin-bottom:12px}.u-steps{grid-template-columns:1fr;gap:24px;margin-top:28px}.u-steps li{padding-top:20px}.u-steps h3{margin-top:10px}.u-offer{grid-template-columns:1fr}.u-price,.u-inclusions{padding:28px 24px}.u-price-number{font-size:60px}.u-price h3{max-width:none}.u-costs{grid-template-columns:1fr;padding:25px 24px;gap:24px}.u-list li{font-size:14px}.u-support-summaries{grid-template-columns:1fr;gap:0}.u-support-teaser h2{font-size:32px}.u-faq details>summary{font-size:15px;min-height:68px;padding-block:18px}.u-start{padding-top:40px}.u-start .d-start-intro{padding-bottom:0}.u-start .d-enquiry-panel{padding:24px 20px}.u-support-hero{padding-block:44px}.u-support-hero h1{font-size:44px}.u-support-jump{gap:8px}.u-support-jump a{font-size:13px}.u-service-price strong{font-size:28px}.u-monthly-scope{padding:22px 20px}.u-hosting h2{font-size:32px}.u-support-form .d-enquiry-panel{padding:24px 20px}.u-ledger{padding:24px}.u-ledger dl>div{flex-wrap:wrap;gap:4px}.u-V094 .d-hero-actions>.d-button{width:100%}.u-V094 .u-demo{width:100%}.d-footer a,.d-footer button{min-height:44px;display:inline-flex;align-items:center}.d-footer-meta{overflow-wrap:anywhere}.u-closing{padding-block:54px}.u-closing .d-button{width:100%}}
@media(prefers-reduced-motion:reduce){.u-work-card img{transition:none}.u-work-card:hover img{transform:none}}

@media(max-width:640px){.u-start h1 br{display:block}.u-start .d-start-intro .u-list{margin:20px 0}.u-start .d-start-intro .u-list li{padding-block:9px}}

/* Always within thumb reach, with space for the home indicator and page footer. */
@media(max-width:820px){
 body.done48:has(.d-mobile-action){--d-dock-height:calc(74px + env(safe-area-inset-bottom,0px));padding-bottom:calc(var(--d-dock-height) + 16px)}
 .done48 .d-mobile-action{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:stretch;gap:12px;position:fixed;z-index:80;inset:auto 0 0;min-height:74px;padding:9px max(14px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(14px,env(safe-area-inset-left,0px));border-top:1px solid #30394d;background:var(--ink);box-shadow:0 -6px 24px #080c161a}
 .done48 .d-mobile-email{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-width:44px;min-height:54px;border:1px solid #677187;border-radius:5px;color:#fff;font-size:11px;font-weight:600;line-height:1.2;text-decoration:none}
 .done48 .d-mobile-email .d-icon{width:21px;height:21px;flex-basis:21px}
 .done48 .d-mobile-email:hover{background:#20283b;border-color:#fff}
 .done48 .d-mobile-action .d-button{min-width:0;min-height:54px;margin:0;padding:12px 16px;gap:12px;border-radius:5px;background:var(--accent);border-color:var(--accent);color:var(--ink);font-size:14px;font-weight:700;line-height:1.3;letter-spacing:-.01em;text-align:center;text-decoration:none}
 .done48 .d-mobile-action .d-button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
 .done48 .d-mobile-action a:focus-visible{outline:3px solid #fff;outline-offset:3px}
 .done48.d-mobile-field-active .d-mobile-action{visibility:hidden;pointer-events:none}
 .done48:has(dialog[open]) .d-mobile-action{visibility:hidden;pointer-events:none}
 .done48 .d-header nav{max-height:calc(100dvh - 88px - var(--d-dock-height,74px))}
 .done48 .d-enquiry-panel{scroll-margin-top:92px}
 .done48 .d-privacy-banner:not(.d-privacy-banner-inline){left:12px;right:12px;bottom:calc(var(--d-dock-height,74px) + 12px);width:auto;max-height:calc(100dvh - var(--d-dock-height,74px) - 108px);overflow:auto}
 .done48.d-mobile-field-active .d-privacy-banner:not(.d-privacy-banner-inline){bottom:12px}
}
@media(max-width:350px){.done48 .d-mobile-action{grid-template-columns:55px minmax(0,1fr);gap:9px}.done48 .d-mobile-action .d-button{padding-inline:10px;font-size:13px;gap:8px}}
@media print{.done48 .d-mobile-action{display:none}body.done48:has(.d-mobile-action){padding-bottom:0}}
