/* Centurion Services – base styles matching the Squarespace design (DigiMark) */
:root{--dm-accent:#25a0f2;--dm-accent-dark:#1b86cf;--dm-dark:#2a2829;--dm-light:#e0e0db;--dm-text:#000;--dm-head:Arial,Helvetica,sans-serif;--dm-body:"Open Sans",Arial,sans-serif}
body{font-family:var(--dm-body);color:var(--dm-text);font-size:16px;line-height:1.6;margin:0}
.elementor-widget-text-editor,.elementor-widget-text-editor p{font-family:var(--dm-body)}
h1,h2,h3,h4,.elementor-heading-title{font-family:var(--dm-head);font-weight:400;line-height:1.25}
.elementor-widget-text-editor p{margin:0 0 1em}
.elementor-widget-text-editor p:last-child{margin-bottom:0}
.elementor-widget-text-editor a{color:var(--dm-accent)}
.dm-white,.dm-white *{color:#fff!important}
.dm-site-header{position:relative;z-index:50}
.dm-site-header .dm-sticky{position:sticky;top:0}
/* announcement bar */
.dm-ann{background:var(--dm-accent);color:#fff;text-align:center;font-size:17px;padding:10px 40px;position:relative}
.dm-ann a,.dm-ann a:visited{color:#fff!important;text-decoration:none;font-weight:600}
.dm-ann button{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:0;color:#fff;font-size:22px;cursor:pointer}
/* nav */
.dm-nav{display:flex;gap:28px;align-items:center;justify-content:flex-end;list-style:none;margin:0;padding:0;font-family:var(--dm-body)}
.dm-nav>li{position:relative}
.dm-nav a,.dm-nav button{color:var(--dm-accent);text-decoration:none;font-size:17px;background:none;border:0;cursor:pointer;padding:6px 0;font-family:inherit}
.dm-nav a:hover,.dm-nav button:hover{opacity:.75}
.dm-nav .dm-sub{display:none;position:absolute;left:50%;transform:translateX(-50%);top:100%;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.12);list-style:none;padding:10px 0;margin:0;min-width:260px;z-index:60}
.dm-nav li:hover>.dm-sub,.dm-nav li:focus-within>.dm-sub{display:block}
.dm-nav .dm-sub a{display:block;padding:8px 20px;font-size:15px;white-space:nowrap}
.dm-burger{display:none;background:none;border:0;cursor:pointer;padding:8px}
.dm-burger span{display:block;width:26px;height:2px;background:var(--dm-accent);margin:6px 0}
.dm-mobile-nav{display:none}
@media (max-width:1024px){.dm-nav{display:none}.dm-burger{display:block}
 .dm-mobile-nav.open{display:block;position:fixed;inset:0;background:#fff;z-index:100;padding:80px 30px 30px;overflow:auto}
 .dm-mobile-nav a{display:block;color:var(--dm-accent);font-size:22px;padding:10px 0;text-decoration:none}
 .dm-mobile-nav .dm-sub-m a{font-size:17px;padding-left:16px}
 .dm-mobile-nav .dm-close{position:absolute;right:20px;top:20px;font-size:32px;background:none;border:0;color:var(--dm-accent)}}
/* buttons */
.elementor-button,.dm-btn{background:var(--dm-accent);color:#fff;font-family:var(--dm-body);font-weight:700;border-radius:5px;transition:background .2s}
.elementor-button:hover,.dm-btn:hover{background:var(--dm-accent-dark);color:#fff}
/* forms */
.dm-form{display:grid;gap:16px;text-align:left}
.dm-field label{display:block;font-size:15px;margin-bottom:6px}
.dm-req{opacity:.6;font-size:13px}
.dm-form input,.dm-form textarea{width:100%;box-sizing:border-box;padding:14px;border:1px solid #c9c9c4;background:#fafafa;font:inherit;border-radius:0}
.dm-form input:focus,.dm-form textarea:focus{outline:2px solid var(--dm-accent);outline-offset:0}
.dm-form .dm-btn{border:0;padding:16px 34px;font-size:15px;cursor:pointer;justify-self:start}
.dm-form .dm-btn[disabled]{opacity:.6;cursor:wait}
.dm-hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.dm-form-msg{margin:0;font-weight:600}
.dm-form-msg.err{color:#b00020}
/* hero slider */
.dm-hero{position:relative;overflow:hidden;height:var(--dm-hero-h,680px);background:#000}
.dm-hero .dm-slide{position:absolute;inset:0;opacity:0;transition:opacity 1s ease}
.dm-hero .dm-slide.on{opacity:1}
.dm-hero .dm-slide img{width:100%;height:100%;object-fit:cover;display:block}
.dm-hero .dm-cap{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 10%}
.dm-hero .dm-cap span{font-family:var(--dm-head);color:#fff;font-size:clamp(44px,7vw,101px);line-height:1.25;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.dm-hero .dm-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.85);border:0;cursor:pointer;font-size:22px;color:#444;z-index:2}
.dm-hero .dm-prev{left:30px}.dm-hero .dm-next{right:30px}
@media (max-width:767px){.dm-hero{height:var(--dm-hero-hm,420px)}.dm-hero .dm-arrow{width:36px;height:36px;font-size:18px}.dm-hero .dm-prev{left:12px}.dm-hero .dm-next{right:12px}}
/* service list cards */
.dm-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 60px;max-width:1200px;margin:0 auto}
.dm-card{text-align:center}
.dm-card img{width:100%;max-width:300px;aspect-ratio:1/1;object-fit:cover;border-radius:50%;display:block;margin:0 auto 20px}
.dm-card .dm-btn{display:inline-block;text-decoration:none;padding:12px 18px;font-size:12px;text-transform:uppercase;max-width:200px;line-height:1.35}
.dm-card h3{font-size:22px;margin:0 0 10px}
@media (max-width:767px){.dm-cards{grid-template-columns:1fr}}
/* gallery grid */
.dm-gallery{display:grid;grid-template-columns:repeat(var(--dm-cols,3),1fr);gap:var(--dm-gap,16px)}
.dm-gallery img{width:100%;aspect-ratio:var(--dm-ratio,4/3);object-fit:cover;display:block}
@media (max-width:767px){.dm-gallery{grid-template-columns:repeat(2,1fr)}}
/* blog */
.dm-blog-list{max-width:1100px;margin:0 auto;padding:70px 6vw 90px}
.dm-post-list{display:grid;gap:30px}
.dm-post-item{display:grid;grid-template-columns:435px 1fr;gap:64px;align-items:start}
.dm-post-thumb img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block;height:auto}
.dm-post-body{padding-top:30px}
.dm-post-date{font-weight:700;font-size:15px;margin-bottom:14px}
.dm-post-item h2{font-family:var(--dm-head);font-size:22px;line-height:1.3;margin:0 0 30px}
.dm-post-item h2 a{color:#000;text-decoration:none}
.dm-post-excerpt{font-size:17px;line-height:1.6}
.dm-more{display:inline-block;margin-top:28px;color:var(--dm-accent);text-decoration:underline}
.dm-pager{display:flex;justify-content:space-between;margin-top:50px}
.dm-pager a{color:var(--dm-accent);text-decoration:none;font-weight:600}
.dm-blog-list .page-header h1{font-family:var(--dm-head);font-size:32px;text-align:center;margin:0 0 40px}
@media (max-width:767px){.dm-post-item{grid-template-columns:1fr;gap:16px}.dm-post-body{padding-top:0}.dm-blog-list{padding:40px 24px 60px}}
.single-post .site-main{max-width:1000px;margin:0 auto;padding:70px 6vw 80px}
.single-post .page-header .entry-title{font-family:var(--dm-head);font-size:28px;font-weight:400;text-align:center;margin:0 0 20px}
.single-post .page-content{font-size:17px;line-height:1.6}
.single-post .page-content img{max-width:100%;height:auto}
.single-post .page-content a{color:var(--dm-accent)}
.single-post .page-content h2,.single-post .page-content h3{font-family:var(--dm-body);font-weight:700;font-size:17px;margin:2em 0 .6em}
.single-post .post-tags{display:none}
/* footer */
.dm-footer-links a{color:#000;text-decoration:underline;display:block;padding:3px 0}
.dm-areas a{color:#fff}

/* forms on accent-colored sections */
.dm-on-accent .dm-btn{background:#fff!important;color:var(--dm-accent)!important}
.dm-on-accent .dm-btn:hover{background:#f0f0f0!important}
.dm-on-accent label,.dm-on-accent .dm-req,.dm-on-accent .dm-form-msg,.dm-on-dark label,.dm-on-dark .dm-req,.dm-on-dark .dm-form-msg{color:#fff!important}
.dm-circle img{aspect-ratio:1/1;height:auto!important;object-fit:cover;border-radius:50%}
