body.admin-bar .header{top:32px}.td-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.lead-form button:disabled{opacity:.6;cursor:wait}.td-menu-icon{width:28px;height:28px}.td-menu-icon svg{width:25px;height:25px} .td-empty{padding:50px 0}.wp-block-image img{max-width:100%;height:auto} @media(max-width:782px){body.admin-bar .header{top:46px}} @media(max-width:600px){body.admin-bar .header{top:0}}

.td-link-cursor{position:fixed;left:0;top:0;width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:#e81722;color:#fff;pointer-events:none;z-index:10000;opacity:0;transform:translate(-50%,-50%) scale(.65);transition:opacity .16s,transform .2s;box-shadow:0 8px 32px #0003}.td-link-cursor span{font:400 34px/1 Arial,sans-serif}.td-link-cursor.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
@media(hover:hover) and (pointer:fine){a.td-cursor-active,a.td-cursor-active *{cursor:none!important}}
@media(prefers-reduced-motion:reduce){.td-link-cursor{transition:none}}
@media(hover:none),(pointer:coarse){.td-link-cursor{display:none!important}}

.td-personal-icon{overflow:visible}.nav-icon-box:has(.td-personal-icon){background:transparent;border:0;box-shadow:none}

.td-error-page{overflow:hidden}.td-error-layout{display:grid;grid-template-columns:1fr 1fr;gap:48px 32px;padding-top:88px;padding-bottom:100px;align-items:center}.td-error-copy h1{font-size:clamp(38px,4.8vw,68px);line-height:1.12}.td-error-copy h1 em{font-style:normal;color:var(--red)}.td-error-lead{max-width:540px;color:#aaa;margin:28px 0 32px;font-size:17px}.td-error-art{height:410px;position:relative;display:grid;place-items:center}.td-error-art canvas{position:absolute;inset:0;width:100%;height:100%;z-index:2}.td-error-number{font:900 clamp(100px,17vw,250px)/1 Arial;color:var(--red);letter-spacing:-.06em}.has-particles .td-error-number{visibility:hidden}.td-error-orbit{position:absolute;width:95%;height:50%;border:1px solid #444;border-radius:50%;transform:rotate(-25deg)}.td-error-orbit:after{content:'';width:10px;height:10px;border-radius:50%;background:var(--red);position:absolute;left:14%;top:8%;box-shadow:0 0 24px #e8172280}.td-error-coordinate{position:absolute;bottom:25px;right:20px;font-size:10px;letter-spacing:.16em;color:#777}.td-error-search{margin-top:36px;max-width:420px}.td-error-search label{display:block;color:#888;font-size:13px;margin-bottom:10px}.td-error-search form{display:flex;border-bottom:1px solid #555}.td-error-search input{min-width:0;width:100%;background:none;border:0;color:white;padding:12px 0}.td-error-search button{border:0;background:none;color:var(--red);padding:12px}.td-error-search svg{width:24px;height:24px}.td-error-shortcuts{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.td-error-shortcuts .service-card{display:flex;align-items:center;gap:18px;padding:28px;min-height:130px}.td-error-shortcuts svg{width:36px;height:36px}.td-error-shortcuts small{display:block;font-size:10px;letter-spacing:.1em;color:#888;margin-bottom:10px}.td-error-shortcuts strong{font-size:18px;font-weight:500}.td-error-shortcuts b{margin-left:auto;font-size:24px;font-weight:400}
@media(max-width:750px){.td-error-layout{grid-template-columns:1fr;padding-top:48px;padding-bottom:64px;gap:24px}.td-error-copy h1{font-size:42px}.td-error-art{height:260px;grid-row:2}.td-error-shortcuts{grid-template-columns:1fr}.td-error-shortcuts .service-card{min-height:104px;padding:22px}.td-error-coordinate{bottom:5px}.td-error-lead{font-size:16px}}

/* Wiki author: one consistent light card, overriding older dark profile rules. */
.author-box.author-profile{display:grid;grid-template-columns:96px minmax(0,1fr);align-items:start!important;gap:24px;width:100%;max-width:100%;margin:40px 0 0;padding:28px!important;background:#fff!important;background-image:none!important;color:#202020!important;border:1px solid #d9d9d3!important;border-radius:16px;box-shadow:none;box-sizing:border-box}
.author-box.author-profile>img{width:96px!important;height:112px!important;max-width:100%;border-radius:12px;border:0;object-fit:cover;object-position:center top;filter:grayscale(1);margin:0;display:block}
.author-box.author-profile>div{min-width:0}.author-box.author-profile .eyebrow{color:#c6111c!important;font-size:10px;line-height:1.4;letter-spacing:.1em;margin:0 0 8px!important}
.author-box.author-profile :is(h3,.td-visual-h3){color:#171717!important;font-size:24px!important;line-height:1.2;margin:0 0 8px!important;letter-spacing:-.035em}
.author-box.author-profile p:not(.eyebrow){color:#62625e!important;font-size:14px;line-height:1.5;margin:0 0 18px!important}
.author-box.author-profile .author-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px;padding:16px 0;border-block:1px solid #e6e6e0}
.author-box.author-profile .author-stats span{display:block;min-width:0;border:0;background:none;padding:0;border-radius:0;color:#62625e;font-size:12px;line-height:1.5;overflow-wrap:normal}
.author-box.author-profile .author-stats b{display:block;color:#202020;font-size:23px;font-weight:600;line-height:1.2;margin-bottom:5px}
.author-box.author-profile .author-links{gap:10px 22px;display:flex;flex-wrap:wrap;margin:0}.author-box.author-profile .author-links a{color:#b60f19!important;font-size:13px;line-height:1.5;text-decoration:underline;text-underline-offset:4px;white-space:nowrap}.author-box.author-profile .author-links a:hover{color:#181818!important}
@media(max-width:600px){.author-box.author-profile{grid-template-columns:64px minmax(0,1fr);gap:16px;padding:20px!important;border-radius:12px}.author-box.author-profile>img{width:64px!important;height:80px!important}.author-box.author-profile :is(h3,.td-visual-h3){font-size:21px!important}.author-box.author-profile .author-stats{grid-template-columns:1fr;gap:10px;padding-block:14px}.author-box.author-profile .author-stats span{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.author-box.author-profile .author-stats b{font-size:19px;margin:0}.author-box.author-profile .author-links{gap:10px 16px}}

.td-pagination{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.td-pagination .page-numbers{display:inline-block;padding:10px 16px;border:1px solid #ccc;border-radius:8px}.td-pagination .current{background:#171717;color:white}

/* The checklist dashboard is dark inside a light section. */
.check-dashboard .check-actions .button.outline{color:#f5f5f2!important;border-color:#777;background:transparent;white-space:normal;min-height:48px;line-height:1.4;text-align:center}
.check-dashboard .check-actions .button.outline:hover{color:#141414!important;background:#fff;border-color:#fff}
.check-dashboard .check-actions .button.outline:focus-visible{outline:3px solid #ed1423;outline-offset:4px}

/* A compact link beside the heading of related services. */
.service-related .section-head .section-note{justify-self:end;text-align:right;max-width:none;margin:0}
.service-related .section-head .section-note .button.outline{display:inline-flex;gap:10px;align-items:center;padding:4px 0;min-height:0;border:0;border-radius:0;background:transparent;color:inherit;font-size:14px;font-weight:500;line-height:1.5;white-space:nowrap;transform:none;transition:color .2s}
.service-related .section-head .section-note .button.outline::after{content:'↗';font-family:Arial,sans-serif;font-size:20px;font-weight:400;line-height:1;transition:transform .2s}
.service-related .section-head .section-note .button.outline:hover{background:transparent;color:var(--red);transform:none;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px}
.service-related .section-head .section-note .button.outline:hover::after{transform:translate(2px,-2px)}
@media(max-width:650px){.service-related .section-head .section-note{text-align:left;margin-top:20px}.service-related .section-head .section-note .button.outline{font-size:14px}}
@media(prefers-reduced-motion:reduce){.service-related .section-head .section-note .button.outline,.service-related .section-head .section-note .button.outline::after{transition:none}.service-related .section-head .section-note .button.outline:hover::after{transform:none}}

/* Successful lead confirmation, both colour themes. */
.td-thanks{min-height:70vh;display:flex;align-items:center;position:relative;overflow:hidden}.td-thanks-card{max-width:920px;margin:auto;text-align:center;padding:48px 0}.td-thanks-icon{display:block;width:88px;height:88px;margin:0 auto 36px;color:var(--red)}.td-thanks-icon svg{width:100%;height:100%}.td-thanks h1{font-size:clamp(40px,6vw,84px);line-height:1.1;margin:24px 0}.td-thanks h1 em{color:var(--red);font-style:normal}.td-thanks-copy{max-width:600px;margin:0 auto;color:#aaa;font-size:18px;line-height:1.8}.td-thanks-actions{display:flex;justify-content:center;align-items:center;gap:30px;flex-wrap:wrap;margin:36px 0 24px}.td-thanks-note{font-size:13px;color:#888}.light .td-thanks-copy{color:#555}.light .td-thanks-note{color:#666}@media(max-width:650px){.td-thanks-card{padding:16px 0}.td-thanks-copy{font-size:16px}.td-thanks-actions{gap:24px}.td-thanks-icon{width:70px;height:70px}}

/* Phone disclosure retains surrounding link layout and keyboard access. */
.td-phone-reveal{font:inherit;color:inherit;background:transparent;border:0;padding:0;cursor:pointer;text-align:inherit;line-height:inherit;letter-spacing:inherit}
.td-phone-reveal:focus-visible{outline:2px solid #e81722;outline-offset:5px}
.td-phone-reveal.button{padding:16px 24px}

/* Phone follows the logo, with a larger number and compact disclosure label. */
.header-in>.td-header-phone{flex-shrink:0;color:var(--white);font-size:19px;font-weight:600;line-height:1.3;white-space:nowrap;text-align:center;padding:0;border:0;background:transparent;transition:color .2s}
.header-in>.td-header-phone:hover{color:var(--red)}
.td-header-phone .td-phone-digits{display:block;font:inherit;white-space:nowrap}
.td-header-phone .td-phone-label{display:block;font-size:11px;font-weight:500;line-height:1.4;color:var(--muted);text-decoration:underline;text-underline-offset:3px;margin-top:3px}
html[data-theme="light"] .header-in>.td-header-phone{color:#181818}
@media(max-width:1250px) and (min-width:951px){.header-in{gap:16px}.header-in>.brand>span{display:none}.desktop-nav{gap:12px;padding-inline:14px;font-size:12px}.header-in>.td-header-phone{font-size:18px}.header-in>.button{font-size:12px;padding:12px 14px}}
@media(max-width:950px){.header-in>.td-header-phone{font-size:17px;margin-right:auto}.header-in>.td-theme-toggle{margin-left:0}}
@media(max-width:560px){.header-in{gap:8px}.header-in>.brand>span{display:none}.header-in>.td-header-phone{font-size:15px}.header-in>.td-theme-toggle{width:36px;height:36px;min-width:36px}}

/* Center the contact in the free space between the logo and navigation. */
.header-in>.td-header-phone{flex:1 0 auto;min-width:165px;text-align:center}
.header-in>.td-header-phone~.desktop-nav{margin-left:0}
@media(max-width:950px){.header-in>.td-header-phone{min-width:0;margin-right:0}}

/* Desktop dropdown panels follow the site container rather than the viewport. */
@media(min-width:951px){.header>.mega-menu{left:50%;right:auto;transform:translateX(-50%);width:min(100%,1440px);border:1px solid #333;border-radius:0 0 18px 18px;box-shadow:0 24px 60px #0007}.header>.mega-menu>.container{width:100%}html[data-theme="light"] .header>.mega-menu{border:1px solid #dcdcd6}}

/* Service portfolio: six cards, three columns on desktop. */
.service-portfolio .case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;overflow:visible}
.service-portfolio .case-grid>.case-card{min-width:0;width:auto;grid-column:auto}
.service-portfolio-more{display:flex;justify-content:center;margin-top:36px}
@media(max-width:1000px){.service-portfolio .case-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.service-portfolio .case-grid{grid-template-columns:1fr}}
/* Containers authored in TheDigital Studio. */
.td-builder-container,.td-builder-column{min-width:0}.td-builder-grid>*{min-width:0}
@media(max-width:650px){.td-builder-grid{grid-template-columns:1fr!important}}
