/* Dividia block theme: section layouts for the dv-* patterns. Colors come from theme.json presets
   (--wp--preset--color--*); the aliases below keep the names used in the approved mockup (mock-c.html). */
:root{
  --bg:var(--wp--preset--color--bg); --surface:var(--wp--preset--color--surface); --surface-alt:var(--wp--preset--color--surface-alt);
  --line:var(--wp--preset--color--line); --field-line:#7E8E9D; --ink:var(--wp--preset--color--ink); --ink-muted:var(--wp--preset--color--ink-muted);
  --brand:var(--wp--preset--color--brand); --brand-bright:var(--wp--preset--color--brand-bright); --navy:var(--wp--preset--color--navy);
  --cta:var(--wp--preset--color--amber); --cta-ink:var(--wp--preset--color--navy);
  --accent:var(--wp--preset--color--accent); --accent-ink:var(--wp--preset--color--accent-ink); --chip:var(--wp--preset--color--chip);
  --on-dark:var(--wp--preset--color--on-dark); --on-dark-muted:var(--wp--preset--color--on-dark-muted);
  --on-brand:#FFFFFF; --on-brand-muted:#EEF6FB; --on-brand-muted-2:#E3F0F8; --accent-on-dark:#F6B940; --accent-on-brand:#FFF1D6;
  --shadow-rgb:14,34,52;
  --cond:var(--wp--preset--font-family--barlow-condensed); --body:var(--wp--preset--font-family--barlow);
}
html{-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:clip}
img{max-width:100%;height:auto}
a{text-underline-offset:2px}
.wp-site-blocks>*,.wp-block-post-content>.dv-sec,.wp-block-post-content>.dv-hero{margin-block-start:0}
.wp-block-post-content>*:first-child{margin-block-start:0}

/* ---- shared pieces ---- */
.dv-wrap{max-width:1180px;margin-inline:auto;padding-inline:16px;box-sizing:border-box}
.dv-sec{padding-block:52px;margin:0}
.dv-sec.dv-alt{background:var(--surface-alt)}
.dv-eyebrow{font:600 14px/1.2 var(--body)!important;color:var(--accent-ink);letter-spacing:.02em;margin:0 0 8px!important}
.dv-display{font-family:var(--cond);font-weight:700;line-height:1.02;margin:0;font-size:44px}
.dv-display em{font-style:normal;color:var(--brand-bright)}
.dv-sh{margin-bottom:24px;max-width:40em}
.dv-sh>*{margin-block:0}
.dv-sh h2{margin-top:0}
.dv-sh p:not(.dv-eyebrow){color:var(--ink-muted);margin-top:10px}
.dv-stars,.dv-sec mark.has-accent-color{color:var(--accent)!important;background:none!important;letter-spacing:2px}
.wp-block-button__link{min-height:52px;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;text-decoration:none}
.dv-ctas{display:grid;gap:10px;margin:0}
.dv-ctas .wp-block-button,.dv-ctas .wp-block-button__link{width:100%}
.dv-grid>*,.dv-needs>*,.dv-ways>*,.dv-team>*,.dv-inds>*,.dv-reviews>*,.dv-logos>*,.dv-shots>*,.dv-foot-cols>*{margin:0}
.dv-split>*{margin-top:0}

/* ---- header ---- */
.dv-header{background:var(--bg);box-shadow:0 1px 0 var(--line)}
/* the header stays on screen: WordPress wraps it in a template-part box exactly its height, so that box is what sticks */
.wp-block-template-part:has(>.dv-header){position:sticky;top:0;z-index:20}
.admin-bar .wp-block-template-part:has(>.dv-header){top:var(--wp-admin--admin-bar--height,0px)}
@media (max-width:600px){ .admin-bar .wp-block-template-part:has(>.dv-header){top:0} }
/* /api/ (the API reference pasted from cloudapi): its contents list and its own scroll box sit below the pinned header.
   The doc's sticky title lives inside that box, so nothing of the doc rises over the header. Header heights 64 / 76 / 84 px. */
:root{--dv-hd-h:64px}
@media (min-width:768px){:root{--dv-hd-h:76px}}
@media (min-width:1024px){:root{--dv-hd-h:84px}}
@media (min-width:901px){ body .dividia-api-doc .sidebar{top:calc(var(--dv-hd-h) + 1em);max-height:calc(100vh - var(--dv-hd-h) - 3em)} }   /* the doc stacks its contents list (static) at 900px and below */
body .dividia-api-doc .contentheight{height:calc(100vh - var(--dv-hd-h) - 2em)}
html{scroll-padding-top:76px}   /* a jump to #section lands below the pinned header (64 / 76 / 84 px tall) */
@media (min-width:768px){ html{scroll-padding-top:88px} }
@media (min-width:1024px){ html{scroll-padding-top:96px} }
.admin-bar .dv-header{top:var(--wp-admin--admin-bar--height,0)}
.dv-hd{display:flex;align-items:center;justify-content:space-between;height:64px;gap:10px}
.dv-hd>*{margin:0!important}
.dv-logo{flex:none;margin-right:auto!important}
.dv-logo img{height:30px;width:auto;display:block}
.dv-hd-right{display:flex;align-items:center;gap:6px;order:2;flex:none}
.dv-hd-right>*{margin:0!important}
.dv-hd .wp-block-navigation{order:3}
.dv-call a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border-radius:999px;background:var(--chip);font-weight:700;text-decoration:none;font-size:16px;color:var(--ink);white-space:nowrap}
.dv-call a::before{content:"";width:18px;height:18px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z'/%3E%3C/svg%3E") center/contain no-repeat}
.dv-hdr-cta{display:none!important}
.dv-hd .wp-block-navigation__responsive-container-open{width:44px;height:44px;place-items:center}
@media (max-width:599px){.dv-hd .wp-block-navigation__responsive-container-open{display:grid}}
.dv-hd .wp-block-navigation__responsive-container-open svg{width:26px;height:26px}
.dv-hd .wp-block-navigation__responsive-container.is-menu-open{padding:16px 16px 24px;background:var(--bg)!important;color:var(--ink)!important}
.dv-hd .is-menu-open .wp-block-navigation__responsive-container-content{padding-top:56px!important;gap:0!important;align-items:stretch!important}
.dv-hd .is-menu-open .wp-block-navigation__container{gap:0!important;align-items:stretch!important;width:100%}
.dv-hd .is-menu-open .wp-block-navigation-item{width:100%;align-items:stretch!important}
.dv-hd .is-menu-open .wp-block-navigation-item__content{display:flex;align-items:center;min-height:48px;border-bottom:1px solid var(--line);font-weight:600;font-size:18px;padding:0!important}
.dv-hd .is-menu-open .wp-block-navigation__submenu-container{padding:0 0 0 14px!important}
.dv-hd .is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-weight:500;font-size:17px}
.dv-hd .wp-block-navigation__responsive-container-close{width:44px;height:44px;display:grid;place-items:center;top:10px;right:10px}
/* the assessment link shows only inside the phone/tablet menu (the header button covers desktop) */
.dv-hd .is-menu-open .dv-nav-cta .wp-block-navigation-item__content{margin-top:16px;justify-content:center;border:0;border-radius:999px;background:var(--cta);color:var(--cta-ink);min-height:52px}
@media (min-width:1024px){.dv-hd .dv-nav-cta{display:none!important}}
/* core switches the menu to a bar at 600px; this header needs the bar only from 1024px */
@media (min-width:600px) and (max-width:1023px){
  .dv-hd .wp-block-navigation__responsive-container-open:not(.always-shown){display:grid}
  .dv-hd .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open){display:none}
  .dv-hd .wp-block-navigation__responsive-container-close{display:grid}
}

/* ---- hero (C1 Roots) ---- */
.dv-hero{position:relative;background:var(--bg);margin:0;padding-bottom:28px}
.dv-hero>*{margin:0}
.dv-hero-ph{position:relative;overflow:hidden;margin:0}
.dv-hero-ph img{width:100%;height:380px;object-fit:cover;object-position:62% 60%;display:block}
.dv-hero-ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(var(--shadow-rgb),.15));pointer-events:none}
.dv-hero-card{position:relative;margin:-90px 16px 0!important;background:var(--bg);border-radius:14px;padding:22px 20px 24px;box-shadow:0 10px 30px rgba(var(--shadow-rgb),.12)}
.dv-hero-card>*{margin:0}
.dv-hero-card .dv-display{color:var(--ink);text-wrap:balance}
.dv-hero-card p.dv-lead{margin:12px 0 20px;color:var(--ink-muted)}
.dv-rating{display:flex;align-items:center;gap:10px;margin-top:18px!important;padding-top:16px;border-top:1px solid var(--line);font-size:15px;color:var(--ink-muted)}
.dv-rating strong{font:700 28px/1 var(--cond);color:var(--ink)}
.dv-hero-act>*{margin:0}
/* wider screens: the button and the rating share one line (one button, room beside it) */
@media (min-width:768px){
  .dv-hero-act{display:flex;align-items:center;gap:24px}
  .dv-hero-act .dv-rating{margin-top:0!important;padding:0 0 0 24px;border-top:0;border-left:1px solid var(--line)}
}

/* ---- needs ---- */
.dv-needs{display:grid;gap:12px}
.dv-need{position:relative;display:grid;grid-template-columns:1fr auto;align-items:center;align-content:start;column-gap:12px;min-height:72px;padding:14px 18px;background:var(--surface);border-radius:12px;border:1px solid var(--line);box-sizing:border-box}
.dv-need>*{margin:0;grid-column:1}
.dv-need::after{content:"\2192";grid-column:2;grid-row:1/span 2;width:36px;height:36px;border-radius:50%;background:var(--chip);display:grid;place-items:center;color:var(--brand);font-weight:700}
.dv-need h3 a{color:inherit;text-decoration:none}
.dv-need h3 a::after,.dv-ind a::after{content:"";position:absolute;inset:0;border-radius:inherit}
.dv-need p{color:var(--ink-muted);font-size:15px;margin-top:2px!important;line-height:1.35}
.dv-need:hover,.dv-ind:hover{border-color:var(--brand)}
.dv-need:focus-within,.dv-ind:focus-within{outline:2px solid var(--navy);outline-offset:2px}
.dv-unsure{margin-top:16px!important;background:var(--surface-alt);border-radius:14px;padding:18px 20px;display:grid;gap:12px}
.dv-unsure>*{margin:0}
.dv-unsure .dv-unsure-t{font:700 24px/1.1 var(--cond);margin:0;color:var(--ink)}
.dv-unsure p{color:var(--ink-muted);margin:0}
.dv-unsure .wp-block-buttons{display:flex;flex-wrap:wrap;gap:10px}
.dv-unsure .wp-block-button{flex:1 1 200px}
.dv-unsure .wp-block-button__link{width:100%;white-space:nowrap}
.dv-alt .dv-unsure{background:var(--surface);border:1px solid var(--line)}
.dv-homes{margin:14px 0 0!important;color:var(--ink-muted)}
.dv-homes a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:none}

/* ---- own system or partner ---- */
.dv-ways{display:grid;gap:14px}
.dv-way{border-radius:14px;padding:22px 20px;background:var(--surface);border:1px solid var(--line)}
.dv-way>*{margin:0}
.dv-way.dv-own{background:var(--brand);color:var(--on-brand);border-color:var(--brand)}
.dv-tag{display:inline-block;font:600 13px/1 var(--body)!important;padding:6px 10px;border-radius:999px;background:var(--chip);color:var(--ink);margin-bottom:10px!important}
.dv-own .dv-tag{background:#fff;color:var(--ink)}
.dv-way ul{margin:12px 0 0;padding-left:20px}
.dv-way li{margin:4px 0}
.dv-way .dv-go a{display:inline-flex;align-items:center;min-height:44px;margin-top:6px;color:var(--on-brand);font-weight:700}
.dv-ways-note{margin-top:16px!important;font-weight:600}

/* ---- team ---- */
.dv-team{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.dv-person>*{margin:0}
.dv-person figure{aspect-ratio:1;border-radius:14px;overflow:hidden;background:var(--line);margin:0 0 10px!important}
.dv-person figure img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05);display:block}
.dv-person p{font-size:15px;color:var(--ink-muted);line-height:1.55}
.dv-person p strong{display:block;font-size:17px;color:var(--ink);font-weight:700}

/* ---- dark band (ScaleWatcher) ---- */
.dv-sec.dv-dark{background:var(--navy);color:var(--on-dark)}
.dv-dark h2{color:var(--on-dark)}
.dv-dark .dv-sh p:not(.dv-eyebrow){color:var(--on-dark-muted)}
.dv-dark .dv-eyebrow{color:var(--accent-on-dark)}
.dv-dark .wp-block-buttons{margin-top:18px}
.dv-dark .wp-block-button__link{background:var(--surface);color:var(--ink);border-color:var(--on-brand)}
.dv-shots{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dv-shots figure{margin:0}
.dv-shots img{border-radius:10px;aspect-ratio:16/10;object-fit:cover;width:100%;display:block}
.dv-shots figure:first-child{grid-column:1/-1}
.dv-shots figure:first-child img{aspect-ratio:16/8}

/* ---- industries ---- */
.dv-inds{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.dv-ind{position:relative;display:flex;align-items:center;min-height:52px;padding:8px 14px;border-radius:10px;background:var(--surface);border:1px solid var(--line);font-weight:600;line-height:1.2;box-sizing:border-box}
.dv-ind a{color:var(--ink);text-decoration:none}

/* ---- reviews + logos ---- */
.dv-reviews{display:grid;gap:14px}
.dv-review{background:var(--surface);border-radius:14px;padding:20px;border:1px solid var(--line)}
.dv-review>*{margin:0}
.dv-review .dv-quote{margin:8px 0 12px;font-size:19px;line-height:1.45}
.dv-review .dv-cite{color:var(--ink-muted);font-size:15px}
.dv-logos{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:0!important}
/* reviews: the "read all" link sits with the heading (right side on wider screens); the logos are labeled */
.dv-headrow>*{margin:0!important}
.dv-headrow .dv-sh{margin-bottom:0}
.dv-headrow{margin-bottom:22px!important}
.dv-logos-t{margin-top:32px!important;margin-bottom:10px!important}
.dv-clbl.dv-logos-t{font-size:16px!important}
@media (min-width:768px){ .dv-headrow{display:flex;align-items:flex-end;justify-content:space-between;gap:24px} }
.dv-logos figure{height:80px;display:grid!important;place-items:center;padding:10px;background:var(--surface);border-radius:10px;margin:0;box-sizing:border-box}
.dv-logos img{max-height:50px;width:auto;max-width:100%;filter:grayscale(1);opacity:.8;mix-blend-mode:multiply}

/* ---- call to action band ---- */
.dv-sec.dv-brand{background:var(--brand);color:var(--on-brand)}
.dv-brand h2{color:var(--on-brand)}
.dv-brand .dv-sh p:not(.dv-eyebrow){color:var(--on-brand-muted)}
.dv-brand .dv-eyebrow{color:var(--accent-on-brand)}
.dv-reach{display:grid;gap:4px;margin-top:20px!important}
.dv-reach br{display:none}
.dv-reach a{display:flex;align-items:center;min-height:44px;color:var(--on-brand);font-weight:700;font-size:20px;text-decoration:none}
.dv-box{background:var(--bg);color:var(--ink);border-radius:14px;padding:20px}
.dv-box>*{margin:0}

/* WPForms inside the box: match the mock's fields (two columns from 1024px, checkbox chips) */
.dv-box .wpforms-field-container{display:grid;gap:12px}
.dv-box .wpforms-field{padding:0!important;margin:0!important}
.dv-box .wpforms-field-label{margin:0 0 4px!important}
.dv-box .wpforms-field-checkbox{grid-column:1/-1}
.dv-box .wpforms-field-checkbox fieldset{border:0;padding:0;margin:0}
.dv-box .wpforms-field-checkbox ul{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:6px 0 0!important;padding:0!important;list-style:none}
.dv-box .wpforms-field-checkbox li{display:flex!important;align-items:center!important;gap:8px;min-height:44px;padding:0 14px!important;margin:0!important;border:1px solid var(--field-line)!important;border-radius:999px!important;background:var(--surface)!important;box-sizing:border-box}
.dv-box .wpforms-field-checkbox li label{font-weight:500!important;font-size:16px!important;margin:0!important;cursor:pointer}
.dv-box .wpforms-field-checkbox input{position:relative!important;-webkit-appearance:checkbox!important;appearance:auto!important;float:none!important;width:18px!important;height:18px!important;margin:0!important;accent-color:var(--brand);flex:none}
.dv-box .wpforms-field-checkbox li label{position:static!important;padding:0!important;display:inline!important;line-height:1.2!important}
.dv-box .wpforms-field-checkbox input::before,.dv-box .wpforms-field-checkbox input::after,.dv-box .wpforms-field-checkbox li label::before,.dv-box .wpforms-field-checkbox li label::after{content:none!important;display:none!important}
.dv-box .wpforms-submit-container{padding:12px 0 0!important;margin:0!important}
.dv-box .wpforms-required-label{color:var(--accent-ink)!important}
.dv-box .wpforms-container{margin:0!important}
.dv-box .wpforms-field-label{font-weight:600!important;font-size:15px!important;color:var(--ink)!important}
.dv-box input[type=text],.dv-box input[type=email],.dv-box input[type=tel],.dv-box textarea,.dv-box select{font:inherit!important;min-height:50px!important;padding:10px 14px!important;border:1px solid var(--field-line)!important;border-radius:10px!important;background:var(--surface)!important;max-width:100%!important}
.dv-box button[type=submit]{min-height:52px!important;padding:0 24px!important;border-radius:999px!important;background:var(--cta)!important;color:var(--cta-ink)!important;border:2px solid var(--cta)!important;font:600 17px/1 var(--body)!important}

/* ---- footer ---- */
.dv-footer{background:var(--navy);color:var(--on-dark);padding:34px 0 26px;font-size:15px;margin:0}
.dv-footer>*{margin-block:0}
.dv-nap a{color:inherit;text-decoration:none}
.dv-social{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:6px!important}
.dv-social a{display:inline-flex;align-items:center;min-height:44px;color:var(--on-dark);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.dv-foot-cols{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.dv-foot-cols .dv-foot-t{font:700 19px/1 var(--cond);margin:0 0 8px;color:var(--on-dark)}
.dv-foot-cols ul{list-style:none;margin:0;padding:0}
.dv-foot-cols li{margin:0}
.dv-foot-cols a{display:block;padding:5px 0;text-decoration:none;color:var(--on-dark-muted)}
.dv-foot-cols a:hover{color:var(--on-dark);text-decoration:underline}
@media (max-width:1023px){ .dv-foot-cols a{padding:10px 0} }
.dv-nap{margin-top:24px!important;padding-top:16px;border-top:1px solid #24425F;color:var(--on-dark-muted)}
.dv-nap>*{margin:0}
.dv-nap figure img{height:26px;width:auto;margin-bottom:10px;display:block}

/* ---- plain pages ---- */
.dv-page{padding-block:40px 52px}

@media (max-width:420px){ .dv-call .dv-lbl{display:none} }
@media (max-width:420px){ .dv-call a{font-size:0;gap:0;width:44px;padding:0;justify-content:center} }
@media (min-width:768px){
  .dv-wrap{padding-inline:32px}
  h2.wp-block-heading{font-size:48px}
  .dv-hero-ph img{height:520px}
  .dv-hero-card{max-width:560px;margin:-200px 0 0 32px!important}
  .dv-display{font-size:60px}
  .dv-ctas{grid-template-columns:auto auto;justify-content:start}
  .dv-ctas .wp-block-button,.dv-ctas .wp-block-button__link{width:auto}
  .dv-needs{grid-template-columns:1fr 1fr}
  .dv-ways{grid-template-columns:1fr 1fr}
  .dv-unsure{grid-template-columns:1fr auto;align-items:center}
  .dv-team{grid-template-columns:repeat(3,1fr)}
  .dv-reviews{grid-template-columns:repeat(3,1fr)}
  .dv-logos{grid-template-columns:repeat(6,1fr)}
  .dv-foot-cols{grid-template-columns:repeat(4,1fr)}
}
@media (min-width:1024px){
  .dv-hd{height:76px}
  .dv-hd .wp-block-navigation{order:1;flex:1 1 auto;justify-content:center;min-width:0;padding-inline:16px}
  .dv-logo{margin-right:0!important}
  .dv-hd .wp-block-navigation__container{gap:2px!important;flex-wrap:nowrap!important}
  .dv-hd .wp-block-navigation-item{white-space:nowrap}
  .dv-hd .wp-block-navigation-item__content{display:flex;align-items:center;min-height:44px;padding:0 12px!important;text-decoration:none;font-weight:600;font-size:17px;border-radius:999px}
  .dv-hd .wp-block-navigation-item>.wp-block-navigation-item__content:hover{background:var(--surface-alt)}
  .dv-hd .wp-block-navigation__submenu-container{border-radius:12px!important;border:1px solid var(--line)!important;padding:8px!important;box-shadow:0 10px 30px rgba(var(--shadow-rgb),.12);min-width:240px!important}
  .dv-hd .wp-block-navigation__submenu-container .wp-block-navigation-item__content{border-radius:8px;font-weight:500}
  .dv-hdr-cta{display:block!important}
  .dv-hdr-cta .wp-block-button__link{min-height:44px;padding:0 18px;font-size:15px;white-space:nowrap}
  .dv-hero-ph img{height:540px}   /* card (~420) + ~60 of photo above and below (David 11-09: less height, cropped to fill) */
  .dv-hero-card{position:absolute!important;left:max(32px,calc((100vw - 1180px)/2 + 32px));top:50%;transform:translateY(-50%);margin:0!important;max-width:540px}   /* centered: equal photo above and below (David 11-09) */
  .dv-needs{grid-template-columns:repeat(3,1fr)}
  .dv-split{display:grid;grid-template-columns:5fr 7fr;gap:48px;align-items:start}
  .dv-dark .dv-split,.dv-brand .dv-split{align-items:center}
  .dv-box .wpforms-field-container{grid-template-columns:1fr 1fr}
  .dv-team{grid-template-columns:repeat(6,1fr)}
  .dv-ind{padding-inline:12px;font-size:17px}
  .dv-hero{padding-bottom:0}
  .dv-hero+.dv-sec{padding-top:56px}
  .dv-sec.dv-ph-plain:has(.dv-seg){padding-bottom:24px}
  .dv-creds{grid-template-columns:1fr 1fr;column-gap:40px}
  .dv-sec.dv-ph:has(+.dv-statband){padding-bottom:40px}   /* About: the stats band sits close to the page head, and the story right after it */
  .dv-statband+.dv-sec{padding-top:48px}
}

/* ---- media slot: a placeholder image waiting for David's photo or video (see MEDIA-NEEDS.md).
   Must not reach live: the release checklist greps the pages for dv-slot. ---- */
.dv-slot{position:relative;margin:0}
.dv-slot img{width:100%;aspect-ratio:var(--slot-ratio,16/10);object-fit:cover;border-radius:12px;outline:2px dashed var(--field-line);outline-offset:-8px;display:block}
.dv-slot figcaption{position:absolute;left:16px;right:16px;bottom:14px;margin:0;padding:8px 10px;border-radius:8px;background:rgba(11,42,74,.88);color:#fff;font:600 13px/1.35 var(--body);text-align:left}
.dv-slot.is-portrait img{--slot-ratio:4/5}
.dv-slot.is-square img{--slot-ratio:1}
.dv-slot.is-wide img{--slot-ratio:16/9}
@media (min-width:1024px) and (max-width:1279px){
  .dv-hd .wp-block-navigation{padding-inline:8px}
  .dv-hd .wp-block-navigation-item__content{padding:0 8px!important;font-size:16px}
}
@media (min-width:1024px) and (max-width:1179px){
  .dv-call a{font-size:0;gap:0;width:44px;padding:0;justify-content:center}
}

/* =====================================================================================================
   Inner pages (Phase 1, reworked after David's review 11-03): plain headings, few boxes, one strong navy moment
   per page. Phone first; breakpoints 768 / 1024 as on the homepage.
   ===================================================================================================== */
/* section rhythm + headings: section headings sit well below the page title */
h2.wp-block-heading{font-size:32px;line-height:1.08}
.dv-sh{margin-bottom:22px}
.dv-wrap.dv-narrow>*{max-width:820px}

/* page head */
.dv-sec.dv-ph{padding-block:32px 44px;background:var(--bg)}
.dv-ph-txt>*{margin-block:0}
.dv-ph h1{font-size:38px;line-height:1.04;margin:0;color:var(--ink)}
.dv-ph .dv-lead{margin:14px 0 22px!important;font-size:19px;line-height:1.5;color:var(--ink-muted);max-width:34em}
.dv-ph .dv-split>figure,.dv-ph .dv-slot{margin-top:28px!important}
.dv-screen img{border-radius:12px;box-shadow:0 12px 36px rgba(var(--shadow-rgb),.18);display:block;width:100%}
.dv-store img{border-radius:14px;display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 18%}
.dv-photo img{border-radius:14px;display:block;width:100%;aspect-ratio:4/3;object-fit:cover}

/* two options: full width, two wide panels, a readable "Best for" line */
.dv-ways{display:grid;gap:14px}
.dv-way{padding:24px 22px}
.dv-way h3{font-size:26px;margin-top:2px!important}
.dv-fits{margin-top:16px!important;padding-top:14px;border-top:1px solid var(--line);font-size:16px;line-height:1.45;color:var(--ink)}
.dv-fits strong{font-weight:700}
.dv-own .dv-fits{border-color:rgba(255,255,255,.3);color:var(--on-brand)}

/* the navy moment: words beside a real image (also holds the alarm steps) */
.dv-sec.dv-band{background:var(--navy);color:var(--on-dark)}
.dv-band h2{color:var(--on-dark)}
.dv-band .dv-sh p:not(.dv-eyebrow){color:var(--on-dark-muted)}
.dv-band .dv-eyebrow{color:var(--accent-on-dark)}
.dv-band .dv-split>figure{margin-top:26px!important}
.dv-band .wp-block-buttons{margin-top:20px}
.dv-band .wp-block-button__link{background:var(--cta);color:var(--cta-ink);border-color:var(--cta)}
.dv-band .is-style-outline .wp-block-button__link,.dv-brand .is-style-outline .wp-block-button__link{background:transparent;color:#fff;border-color:#fff}
.dv-band .dv-screen img,.dv-band .dv-photo img{box-shadow:0 16px 40px rgba(0,0,0,.35)}
/* GateWatcher: the office screen with the guard's phone over its corner (what the guard logs, the office sees) */
.dv-duo{position:relative;margin-top:26px!important;padding-bottom:12%}
.dv-duo>figure{margin:0!important}
.dv-duo .dv-phone{position:absolute;right:4%;bottom:0;width:27%}
.dv-duo .dv-phone img{display:block;width:100%;filter:drop-shadow(0 14px 28px rgba(0,0,0,.5))}

/* plain feature list: hairlines, no boxes */
.dv-flist{display:grid;gap:0;border-top:1px solid var(--line)}
.dv-flist>*{margin:0}
.dv-fl{padding:16px 0;border-bottom:1px solid var(--line)}
.dv-fl>*{margin:0}
.dv-fl h3{font:600 19px/1.3 var(--body);color:var(--ink)}
.dv-fl p{margin-top:4px!important;color:var(--ink-muted);line-height:1.5}
.dv-fl a{font-weight:600;text-decoration:none;white-space:nowrap}
.dv-ms-txt>*{margin:0}
.dv-ms-txt .dv-sh{margin-bottom:14px}
.dv-ms .dv-split>figure{margin-bottom:26px!important}

/* product rows: name, one line, arrow; the whole row is the link */
.dv-links{display:grid;border-top:1px solid var(--line)}
.dv-links>*{margin:0}
.dv-link{position:relative;padding:14px 48px 14px 0;border-bottom:1px solid var(--line);min-height:44px}
.dv-link>*{margin:0}
.dv-link h3{font:600 19px/1.3 var(--body)}
.dv-link h3 a{color:var(--ink);text-decoration:none}
.dv-link h3 a::after{content:"";position:absolute;inset:0}
.dv-link::after{content:"\2192";position:absolute;right:4px;top:50%;transform:translateY(-50%);color:var(--brand);font-weight:700;font-size:20px;transition:transform .15s}
.dv-link:hover::after{transform:translate(4px,-50%)}
.dv-link:hover h3 a{color:var(--brand)}
.dv-link:focus-within{outline:2px solid var(--navy);outline-offset:2px}
.dv-link p{color:var(--ink-muted);font-size:15px;margin-top:2px!important}

/* numbered steps: no boxes, a rule above each */
.dv-steps{list-style:none;counter-reset:dvstep;margin:0;padding:0;display:grid;gap:22px}
.dv-steps li{counter-increment:dvstep;margin:0;padding-top:14px;border-top:2px solid var(--line);color:var(--ink-muted);line-height:1.5}
.dv-steps li::before{content:counter(dvstep);display:block;font:700 40px/1 var(--cond);color:var(--brand);margin-bottom:8px}
.dv-steps li strong{display:block;color:var(--ink);font-size:19px;margin-bottom:2px}
.dv-band .dv-steps li{border-color:rgba(255,255,255,.22);color:var(--on-dark-muted)}
.dv-band .dv-steps li::before{color:var(--accent-on-dark)}
.dv-band .dv-steps li strong{color:var(--on-dark)}

/* questions + a side card */
.dv-faq{display:grid;gap:0 40px}
.dv-faq>*{margin:0}
.dv-qa{border-top:1px solid var(--line);padding:18px 0 22px}
.dv-qa>*{margin:0}
.dv-qa h3{font:600 19px/1.3 var(--body);color:var(--ink)}
.dv-qa p{margin-top:8px!important;color:var(--ink-muted);line-height:1.55}
@media (min-width:768px){ .dv-faq{grid-template-columns:1fr 1fr} }
.dv-alt 
/* compare table (Solutions): a table from 600px; on phones each row is a small card */
.dv-table{margin:0}
.dv-table table{width:100%;border-collapse:collapse;background:var(--surface);border-radius:14px;overflow:hidden;border:1px solid var(--line)}
.dv-table thead{border-bottom:0}
.dv-table th,.dv-table td{border-left:0;border-right:0;border-top:0}
.dv-table th{text-align:left;font-weight:600;font-size:15px;color:var(--ink-muted);padding:14px 18px;border-bottom:1px solid var(--line);background:var(--surface-alt)}
.dv-table td{padding:16px 18px;border-bottom:1px solid var(--line);vertical-align:top;line-height:1.4}
.dv-table td:empty::before{content:"\2014";color:var(--ink-muted)}
.dv-table tr:last-child td{border-bottom:0}
.dv-table td:first-child a{font-weight:700;font-size:18px;text-decoration:none}
.dv-table td:first-child br{display:none}
.dv-goal{display:block;margin-top:2px;color:var(--ink-muted);font-size:15px}
.dv-table th:first-child{width:36%}
@media (max-width:599px){
  .dv-table table,.dv-table tbody,.dv-table tr,.dv-table td{display:block;width:auto}
  .dv-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .dv-table table{border:0;background:none;border-radius:0}
  .dv-table tbody{display:grid;gap:10px}
  .dv-table tr{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 16px}
  .dv-table td{border:0;padding:3px 0;font-size:16px}
  .dv-table td:empty{display:none}
  .dv-table td:first-child{padding-bottom:8px}
  .dv-table td:first-child a{display:inline-flex;align-items:center;min-height:44px;font-size:19px}
  .dv-table td:nth-child(2)::before{content:"Made by Dividia: ";font-weight:600;color:var(--ink)}
  .dv-table td:nth-child(3)::before{content:"Authorized reseller: ";font-weight:600;color:var(--ink)}
}

/* about: story, stats on navy, credentials */
.dv-story{font-size:20px;line-height:1.6;margin:0;color:var(--ink)}
.dv-sec.dv-statband{background:var(--navy);color:var(--on-dark);padding-block:24px}
.dv-stats{display:grid;grid-template-columns:1fr 1fr;gap:24px 16px;margin:0}
.dv-stats>*{margin:0;color:var(--on-dark-muted);font-size:15px;line-height:1.35}
.dv-stats strong{display:block;font:700 40px/1 var(--cond);color:var(--on-dark);margin-bottom:4px}
.dv-creds{display:grid;gap:0;border-top:1px solid var(--line)}
.dv-creds>*{margin:0;padding:14px 0;border-bottom:1px solid var(--line);color:var(--ink-muted)}
.dv-creds strong{display:block;color:var(--ink);font-size:18px}
.dv-creds span{display:block}

/* closing strip (hubs) */
.dv-sec.dv-cta{padding-block:44px}
.dv-cta .dv-wrap{display:grid;gap:20px;align-items:center}
.dv-cta .dv-wrap>*{margin:0}
.dv-cta-txt>*{margin:0}
.dv-cta-txt p{margin-top:8px!important;font-size:18px;line-height:1.5;text-wrap:pretty}
.dv-brand .dv-cta-txt p{color:var(--on-brand-muted)}
.dv-cta-plain .dv-cta-txt p{color:var(--ink-muted)}

/* contact: tabs, panels, cards */
.dv-seg{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px!important}
.dv-seg>*{margin:0}
.dv-tab a{display:block;height:100%;box-sizing:border-box;padding:14px 16px;border:2px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink-muted);text-decoration:none;font-size:15px;line-height:1.35}
.dv-tab a br{display:none}
.dv-tab a strong{display:block;font:700 24px/1.1 var(--cond);color:var(--ink);margin-bottom:2px}
.dv-tab a[aria-selected=true]{border-color:var(--brand);background:var(--chip)}
.dv-tab a:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.dv-sec.dv-panel{padding-block:8px 52px}
.dv-panel[hidden]{display:none!important}
.dv-ph-plain:has(.dv-seg){padding-bottom:24px}
.dv-pcols{display:grid;gap:16px}
.dv-pcols>*{margin:0}
.dv-box.dv-formcol{border:1px solid var(--line)}
.dv-formcol h2{font-size:30px;margin:0 0 14px}
.dv-note{margin:12px 0 0!important;font-size:15px;color:var(--ink-muted)}
.dv-side{display:grid;gap:12px;align-content:start}
.dv-side>*{margin:0}
.dv-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px 18px}
.dv-card>*{margin:0}
.dv-card p{color:var(--ink-muted);line-height:1.45}
.dv-card p strong{color:var(--ink)}
.dv-clbl{font:600 14px/1.2 var(--body)!important;color:var(--accent-ink)!important;margin-bottom:6px!important}
.dv-big a{display:inline-flex;align-items:center;min-height:48px;font:700 32px/1 var(--cond);color:var(--ink);text-decoration:none}
.dv-clink a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:none}
.dv-card.dv-urgent{background:var(--brand);border-color:var(--brand)}
.dv-urgent p,.dv-urgent .dv-big a{color:var(--on-brand)!important}
.dv-urgent .dv-clbl{color:var(--accent-on-brand)!important}
.dv-urgent .wp-block-buttons{margin-top:14px}
.dv-cols3{display:grid;gap:18px}
.dv-cols3>*{margin:0}
.dv-cols3>*>*{margin:0}
.dv-cols3 p{color:var(--ink-muted);line-height:1.45}
.dv-cols3 p strong{color:var(--ink)}
.dv-sec.dv-visit{padding-block:36px}

/* WPForms: radio choices as chips, long fields across both columns */
.dv-box .wpforms-field-radio{grid-column:1/-1}
.dv-box .wpforms-field-radio fieldset{border:0;padding:0;margin:0}
.dv-box .wpforms-field-radio ul{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:6px 0 0!important;padding:0!important;list-style:none}
.dv-box .wpforms-field-radio li{display:flex!important;align-items:center!important;gap:8px;min-height:44px;padding:0 14px!important;margin:0!important;border:1px solid var(--field-line)!important;border-radius:999px!important;background:var(--surface)!important;box-sizing:border-box}
.dv-box .wpforms-field-radio input{position:relative!important;-webkit-appearance:radio!important;appearance:auto!important;float:none!important;width:18px!important;height:18px!important;margin:0!important;accent-color:var(--brand);flex:none}
.dv-box .wpforms-field-radio li label{position:static!important;padding:0!important;display:inline!important;line-height:1.2!important;font-weight:500!important;font-size:16px!important;margin:0!important;cursor:pointer}
.dv-box .wpforms-field-radio input::before,.dv-box .wpforms-field-radio input::after,.dv-box .wpforms-field-radio li label::before,.dv-box .wpforms-field-radio li label::after{content:none!important;display:none!important}
.dv-box .wpforms-field-textarea,.dv-box .wpforms-field-select{grid-column:1/-1}
.dv-box textarea{min-height:120px!important}
.dv-box select{width:100%!important}

/* "Not sure" box on a tinted section */
.dv-alt .dv-unsure{background:var(--surface);border:1px solid var(--line);margin-top:24px!important}
.dv-sec.dv-tablesec{padding-top:0}
.dv-band .dv-slot{margin-top:26px}

@media (min-width:768px){
  h2.wp-block-heading{font-size:40px}
  .dv-sec{padding-block:72px}
  .dv-ph h1{font-size:50px}
  .dv-ways{grid-template-columns:1fr 1fr;gap:18px}
  .dv-way{padding:30px 30px 28px}
  .dv-steps{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px}
  .dv-links{grid-template-columns:1fr 1fr;column-gap:40px}
  .dv-flist{grid-template-columns:1fr 1fr;column-gap:40px}
  .dv-ms .dv-flist{grid-template-columns:1fr}
  .dv-stats{grid-template-columns:repeat(4,1fr)}
  .dv-stats>*+*{border-left:1px solid rgba(255,255,255,.18);padding-left:22px}
  .dv-creds strong,.dv-creds span{display:inline}   /* one line per item: Title · descriptor · descriptor */
  .dv-creds span{white-space:nowrap}
  .dv-creds span::before{content:" \00b7  ";white-space:normal;color:var(--ink-muted)}
  .dv-cols3{grid-template-columns:repeat(3,1fr)}
  .dv-seg{max-width:640px}
  .dv-unsure .wp-block-buttons{flex-wrap:nowrap}
  .dv-unsure .wp-block-button{flex:0 0 auto}
  .dv-unsure .wp-block-button__link{padding-inline:26px}
}
@media (min-width:1024px){
  .dv-sec.dv-ph{padding-block:56px 72px}
  .dv-ph h1{font-size:56px}
  .dv-ph .dv-split{grid-template-columns:6fr 6fr;align-items:center}
  .dv-ph .dv-split>figure,.dv-ph .dv-slot{margin-top:0!important}
  .dv-split-even{grid-template-columns:1fr 1fr!important;align-items:start!important}
  .dv-ms .dv-split>figure{margin-bottom:0!important}
  .dv-band .dv-split{grid-template-columns:5fr 7fr;align-items:center}
  .dv-band .dv-split>figure{margin-top:0!important}
  .dv-band .dv-duo{margin-top:0!important}
  .dv-duo .dv-phone{right:-3%;width:25%}
  .dv-band .dv-steps{margin-top:8px}
    .dv-flist:has(>:nth-child(3):last-child){grid-template-columns:repeat(3,1fr)}
  .dv-band .dv-slot{margin-top:0}
    .dv-pcols{grid-template-columns:7fr 5fr;gap:24px;align-items:start}
  .dv-sup .dv-urgent{grid-column:2;grid-row:1}
  .dv-sup .dv-formcol{grid-column:1;grid-row:1/span 2}
  .dv-sup .dv-side{grid-column:2;grid-row:2}
  .dv-sup{grid-template-rows:auto 1fr;row-gap:12px}   /* the urgent card's row fits it; Support's cards sit 12px apart like Sales' */
  /* header: the Solutions arrow belongs to Solutions; the phone number is a plain link beside the button */
  .dv-hd .wp-block-navigation-item.has-child>.wp-block-navigation-item__content{padding-right:2px!important}
  .dv-hd .wp-block-navigation__submenu-icon{margin:0 12px 0 0!important}
  .dv-call a{background:none;padding:0 4px 0 10px}
}

/* header scale (David 11-03: logo and header words were too small) */
.dv-logo img{height:34px!important}
@media (min-width:768px){ .dv-logo img{height:38px!important} }
@media (min-width:1024px){
  .dv-hd{height:84px}
  .dv-logo img{height:40px!important}
  .dv-hd .wp-block-navigation-item__content{font-size:18px}
  .dv-hdr-cta .wp-block-button__link{font-size:16px;min-height:46px;padding:0 20px}
}
@media (min-width:1024px) and (max-width:1279px){
  .dv-hd .wp-block-navigation-item__content{font-size:17px}
}
@media (min-width:1180px){ .dv-call a{font-size:17px} }
@media (min-width:1180px){ .dv-inds{grid-template-columns:repeat(5,1fr)} }   /* 'Aggregates & Ready-Mix' needs 185px: 5 across only from 1180, 2 across below */

/* home-security strip: a house icon so it reads as its own path (David 11-03) */
.dv-homes{display:flex!important;align-items:center;gap:14px;margin-top:18px!important;padding:12px 18px 12px 12px;background:var(--surface);border:1px solid var(--line);border-radius:14px;color:var(--ink-muted);line-height:1.4}
.dv-homes::before{content:"";flex:none;width:48px;height:48px;border-radius:12px;background:var(--chip) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230873A6' stroke-width='2' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M3 10.5 12 3l9 7.5V20a1 1 0 0 1-1 1h-5v-6H9v6H4a1 1 0 0 1-1-1z'/%3E%3C/svg%3E") center/26px no-repeat}
.dv-homes strong{color:var(--ink)}
.dv-homes a{white-space:nowrap}
/* Google rating links (hero, reviews, About figures) */
.dv-rating a{display:inline-flex;align-items:center;gap:10px;min-height:44px;color:inherit;text-decoration:none}
.dv-rating a:hover{text-decoration:underline}
.dv-more{margin-top:18px!important}
.dv-more a{display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:none}
.dv-stats a{color:inherit;text-decoration:none;display:block}
.dv-stats a:hover{text-decoration:underline}

/* home-security strip, take 2: icon at the side, the sentence flows and wraps normally */
.dv-homes{display:block!important;position:relative;padding:14px 18px 14px 78px;min-height:48px}
.dv-homes::before{position:absolute;left:14px;top:50%;transform:translateY(-50%)}
.dv-homes a{white-space:normal;display:inline;min-height:0}
/* "Not sure" section (merged with industries): the "not on the list" line under the chips */
#ind .dv-sh .wp-block-buttons{margin-top:18px}
#ind .dv-more{color:var(--ink-muted)}
#ind .dv-more strong{color:var(--ink)}
/* Sales / Support switch inside the homepage contact band */
.dv-tabbox .dv-seg{margin:0 0 18px!important;max-width:none}
.dv-tabpanel>*{margin:0}
.dv-tabpanel[hidden]{display:none!important}
.dv-brand .dv-reach{color:var(--on-brand-muted)}

/* footer social links: icon pills, easier to notice (David 11-03); marks are the networks' own glyphs (Simple Icons) */
.dv-social{display:flex;flex-wrap:wrap;gap:10px!important;margin-top:16px!important}
.dv-social a{display:inline-flex!important;align-items:center;gap:10px;min-height:44px;padding:0 18px 0 14px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.2);color:var(--on-dark)!important;font-weight:600;text-decoration:none!important;transition:background .15s}
.dv-social a:hover{background:rgba(255,255,255,.18)}
.dv-social a:focus-visible{outline:2px solid var(--accent-on-dark);outline-offset:2px}
.dv-social a::before{content:"";flex:none;width:20px;height:20px;background:currentColor;-webkit-mask:var(--ico) center/contain no-repeat;mask:var(--ico) center/contain no-repeat}
.dv-social a[href*="facebook"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z'/%3E%3C/svg%3E")}
.dv-social a[href*="linkedin"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 1 1 0-4.125 2.062 2.062 0 0 1 0 4.125zM7.119 20.452H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z'/%3E%3C/svg%3E")}
.dv-social a[href*="youtube"]{--ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z'/%3E%3C/svg%3E")}

/* spacing fixes (11-03 review): strip text centred on its icon; contact band text starts at the top of the form; hours under the number */
.dv-homes{min-height:76px;box-sizing:border-box}
@media (min-width:1024px){ .dv-homes{padding-block:25px} }
#contact.dv-brand .dv-split{align-items:start}
#contact .dv-sh{padding-top:8px}
.dv-reach{gap:0}
.dv-brand .dv-reach{color:var(--on-brand-muted);font-size:16px}

/* ---- "Made by Dividia" options (11-03) ---- */
/* B: product rows on navy + two overlapping app screens */
.dv-links-dark{border-color:rgba(255,255,255,.2)}
.dv-links-dark .dv-link{border-color:rgba(255,255,255,.2)}
.dv-links-dark .dv-link h3 a{color:var(--on-dark)}
.dv-links-dark .dv-link p{color:var(--on-dark-muted)}
.dv-links-dark .dv-link::after{color:var(--accent-on-dark)}
.dv-band .dv-more a{color:var(--on-dark)}
/* app screens: the NVR large, ScaleWatcher and GateWatcher side by side, each named under it */
.dv-apps{display:grid;gap:18px;margin-top:28px!important}
.dv-apps>*,.dv-app-row>*{margin:0!important}
.dv-app-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.dv-shot img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:left top;border-radius:10px;box-shadow:0 14px 34px rgba(0,0,0,.4)}
.dv-apps>.dv-shot img{aspect-ratio:auto}
.dv-shot figcaption{margin:9px 0 0!important;text-align:left;font-size:14px;font-weight:600;color:var(--on-dark-muted)}
/* the brand strip */
.dv-sec.dv-res{padding-block:30px;background:var(--surface-alt)}
.dv-res .dv-wrap{display:grid;gap:16px;align-items:center}
.dv-res .dv-wrap>*{margin:0}
.dv-res-head>*{margin:0}
.dv-res-t{font:700 22px/1.1 var(--cond)!important;color:var(--ink)}
.dv-res-head p:not(.dv-res-t){color:var(--ink-muted);font-size:15px;margin-top:4px!important}
.dv-res-logos{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
.dv-res-logos>*{margin:0!important}
.dv-res-logos figure,.dv-wordmark{height:76px;display:grid!important;place-items:center;background:#fff;border-radius:10px;padding:10px 14px;box-sizing:border-box;border:1px solid var(--line)}
.dv-res-logos img{max-height:46px;width:auto;max-width:100%;mix-blend-mode:multiply}
.dv-res-logos figure:first-child img{max-height:58px}
.dv-wordmark{line-height:1.05;text-align:center;color:var(--ink-muted);font-size:13px}
.dv-wordmark strong{display:block;font:700 21px/1 var(--body);color:#1d3557;letter-spacing:.01em}
@media (min-width:600px){ .dv-res-logos{grid-template-columns:repeat(5,1fr)} }
@media (min-width:1024px){
  .dv-res .dv-wrap{grid-template-columns:auto 1fr;gap:40px}
  .dv-apps{margin-top:0!important}
}
.dv-links-dark{grid-template-columns:1fr!important}
.dv-res-logos figure,.dv-wordmark{height:84px}
.dv-res-logos figure:first-child img{max-height:66px}

/* ---- Solutions tiles: phones = image left, words right; tablets 2 across; desktop 4 across ---- */
.dv-sec.dv-svcsec{padding-top:0}
.dv-ph-plain:has(+.dv-svcsec){padding-bottom:28px}
.dv-svcs{display:grid;gap:12px}
.dv-svcs>*{margin:0}
.dv-svc{position:relative;display:grid;grid-template-columns:112px 1fr;column-gap:14px;align-content:start;background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;transition:border-color .15s,transform .15s}
.dv-svc>*{margin:0;grid-column:2}
.dv-svc>.dv-svc-media{grid-column:1;grid-row:1/span 3;margin:0;height:100%;min-height:112px;background:#fff;overflow:hidden}
.dv-svc>figure.dv-svc-media img{width:100%;height:100%;object-fit:cover;object-position:left top;display:block}
.dv-svc-logos{display:flex!important;flex-direction:column;gap:8px;justify-content:center;align-items:center;padding:10px;box-sizing:border-box;border-right:1px solid var(--line)}
.dv-svc-logos>*{margin:0!important}
.dv-svc-logos figure{display:flex;justify-content:center;align-items:center;width:100%}
.dv-svc-logos img{display:block;max-width:84px;max-height:40px;width:auto;height:auto;object-fit:contain}
.dv-svc h3{font:700 22px/1.1 var(--cond);margin-top:14px!important;padding-right:14px}
.dv-svc h3 a{color:var(--ink);text-decoration:none}
.dv-svc h3 a::after{content:"";position:absolute;inset:0}
.dv-svc p{color:var(--ink-muted);font-size:15px;line-height:1.4;margin-top:4px!important;padding-right:14px}
.dv-svc>p:last-child{padding-bottom:14px}
.dv-svc p.dv-svc-own{position:relative;margin-top:8px!important;padding-left:18px!important;color:var(--brand);font:700 12px/1.2 var(--body);letter-spacing:.04em;text-transform:uppercase}
@media (min-width:768px){.dv-svc p.dv-svc-own{padding-left:36px!important}}
/* the tag's check mark: a small brand circle before MADE BY DIVIDIA (tag sits under the line, never on the image) */
.dv-svc p.dv-svc-own::before{content:"";position:absolute;left:0;top:0;width:13px;height:13px;border-radius:50%;background:var(--brand) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3 6.2 5 8.2 9 3.8' fill='none' stroke='white' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat}
@media (min-width:768px){.dv-svc p.dv-svc-own::before{left:18px}}
.dv-svc:hover{border-color:var(--brand)}
.dv-svc:focus-within{outline:2px solid var(--navy);outline-offset:2px}
@media (min-width:768px){
  .dv-svcs{grid-template-columns:1fr 1fr;gap:16px}
  .dv-svc{display:flex;flex-direction:column}
  .dv-svc>.dv-svc-media{height:auto;aspect-ratio:16/10;min-height:0;border-bottom:1px solid var(--line)}
  .dv-svc-logos{flex-direction:row;gap:20px;border-right:0;padding:18px}
  .dv-svc-logos figure{flex:0 1 44%}
  .dv-svc-logos figure:only-child{flex-basis:62%}
  .dv-svc-logos img{width:100%;max-width:100%;max-height:72px}
  .dv-svc h3,.dv-svc p{padding-inline:18px}
  .dv-svc h3{font-size:24px;margin-top:16px!important}
  .dv-svc>p:last-child{padding-bottom:18px}
  .dv-svc:hover{transform:translateY(-2px)}
}
@media (min-width:1024px){ .dv-cta .dv-wrap{grid-template-columns:1fr auto} }   /* tablets: words, then buttons below */
@media (min-width:1024px){ .dv-svcs{grid-template-columns:repeat(4,1fr)} .dv-ph-plain:has(+.dv-svcsec){padding-bottom:36px} }

/* ---- Solutions grouping (David 11-09): Security systems | Add-ons and industry systems ---- */
@media (min-width:1024px){ .dv-svcs.dv-svcs-3{grid-template-columns:repeat(3,1fr)} }
.dv-svcsec .dv-homes{margin-top:20px!important}
/* group labels inside the Solutions dropdown and the phone menu: small muted headings that link to the group on /solutions/ */
.dv-hd .dv-nav-group>.wp-block-navigation-item__content{font:700 12px/1.2 var(--body)!important;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted)!important;padding-top:10px!important;padding-bottom:4px!important}
.dv-hd .dv-nav-group:not(:first-child){border-top:1px solid var(--line);margin-top:6px!important;padding-top:4px}
/* a placeholder inside a Solutions tile: no dashed frame inset, the tile is the frame; caption small */
.dv-svc .dv-slot img{border-radius:0;outline-offset:-6px}
.dv-svc .dv-slot figcaption{font-size:11px;left:8px;right:8px;bottom:8px;padding:5px 7px}
/* a fact David must supply (gen_pages need()): visible on staging, release blocks on dv-todo like dv-slot */
.dv-todo{margin:20px 0 0!important;padding:12px 16px;border:2px dashed var(--field-line);border-radius:12px;background:var(--chip);color:var(--ink);font-weight:600;font-size:15px}
.dv-specs td:first-child{font-weight:700;color:var(--ink);white-space:nowrap;width:1%;padding-right:24px}

/* ---- Announcement bar (functions.php draws it; content in inc/announcement.php) ----
   Above the header. States: open (the feature) / slim (one line), toggled by the arrow. No close. */
.dv-ev{background:linear-gradient(100deg,#0B2A4A 0%,#0F3C66 100%);color:#F1F5F9;position:relative;font-family:var(--body,Barlow,system-ui,sans-serif)}
.dv-ev,.dv-ev *{box-sizing:border-box}
.dv-ev a{color:inherit}
.dv-ev-in{max-width:1116px;margin:0 auto;padding:0 16px}
@media (min-width:1148px){.dv-ev-in{padding:0}}
.dv-ev-ctl{position:absolute;top:2px;right:6px;display:flex;z-index:100000}   /* above a crowded WordPress toolbar's second row (logged-in only) */
.dv-ev-ctl button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:99px;background:transparent;color:#fff;cursor:pointer}
.dv-ev-ctl button:hover{background:rgba(255,255,255,.12)}
.dv-ev-ctl button:focus-visible{outline:2px solid #F2A516;outline-offset:-3px}
.dv-ev-ctl svg{width:20px;height:20px;stroke:currentColor;stroke-width:2.2;fill:none;stroke-linecap:round;stroke-linejoin:round}
.dv-ev-go{display:inline-flex;align-items:center;background:#F2A516;color:#142230!important;text-decoration:none;font-weight:600;font-size:17px;border-radius:99px;padding:12px 24px;white-space:nowrap}
.dv-ev-go:hover{background:#ffb935}
.dv-ev-lk{font-weight:600;font-size:17px;text-underline-offset:4px}
.dv-ev .dv-sh{display:none}
.dv-ev .dv-nw{white-space:nowrap}

/* open */
.dv-ev-open{display:none}
.dv-ev[data-state=open] .dv-ev-open{display:block}
.dv-ev[data-state=open] .dv-ev-slim{display:none}
.dv-ev-open .dv-ev-in{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:40px;padding-block:24px 26px}
.dv-ev-eb{margin:0 0 4px;font-weight:600;font-size:14px;line-height:1.3;letter-spacing:.06em;text-transform:uppercase;color:#F2A516}
.dv-ev-h{margin:0 0 6px;font-family:var(--wp--preset--font-family--barlow-condensed,"Barlow Condensed",sans-serif);font-weight:700;font-size:40px;line-height:1.05;color:#fff;text-wrap:balance}
.dv-ev-s{margin:0 0 16px;font-size:19px;line-height:1.4}
.dv-ev-acts{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.dv-ev-logos{display:flex;flex-direction:column;gap:12px;padding-right:40px}
.dv-ev-chip{display:flex;align-items:center;justify-content:center;height:72px;padding:0 20px;background:#fff;border-radius:10px}
.dv-ev-chip img{display:block;width:auto;height:54px}
.dv-ev-chip.dv-cp{padding:0;overflow:hidden;background:#0D4F8B}
.dv-ev-chip.dv-cp img{height:72px}

/* slim */
.dv-ev-slim .dv-ev-in{display:flex;align-items:center;justify-content:center;gap:6px 14px;flex-wrap:wrap;min-height:48px;padding-block:8px;padding-right:56px;padding-left:56px;font-size:17px;line-height:1.35;text-align:center}
.dv-ev-slim strong{color:#F2A516}

@media (min-width:901px) and (max-width:1179px){
  .dv-ev-chip{height:60px}.dv-ev-chip img{height:44px}.dv-ev-chip.dv-cp img{height:60px}.dv-ev-s{font-size:18px}
}
@media (max-width:900px){
  .dv-ev .dv-lg{display:none}.dv-ev .dv-sh{display:inline}
  .dv-ev-open .dv-ev-in{grid-template-columns:minmax(0,1fr);gap:16px;padding-block:16px 20px}
  .dv-ev-eb{font-size:13px;padding-right:40px}
  .dv-ev-h{font-size:30px}.dv-ev-s{font-size:17px;margin-bottom:14px}
  .dv-ev-acts{gap:16px}.dv-ev-go{font-size:16px;padding:11px 18px}.dv-ev-lk{font-size:16px}
  .dv-ev-logos{flex-direction:row;flex-wrap:wrap;gap:10px;padding:0}
  .dv-ev-chip{height:42px;padding:0 10px}.dv-ev-chip img{height:26px}.dv-ev-chip.dv-cp img{height:42px}
  .dv-ev-slim .dv-ev-in{justify-content:flex-start;text-align:left;font-size:15px;padding-left:16px;padding-right:56px}
}
@media print{.dv-ev{display:none}}
.dv-cp-badge{margin:22px 0 0!important}
.dv-cp-badge a{display:inline-block;border-radius:6px}
.dv-cp-badge img{height:48px;width:auto;display:block;border-radius:6px}
.dv-award{margin:10px 0 0!important;font-size:14px;color:var(--on-brand-muted,#c8d3df)}
.dv-award a{color:#fff;font-weight:600}
.dv-award::before{content:"\2605  ";color:var(--wp--preset--color--amber)}
/* a quote from a named person (gen_pages quote()) */
.dv-quote{margin:0;padding:0 0 0 22px;border-left:4px solid var(--wp--preset--color--amber)}
.dv-quote p{font:600 24px/1.35 var(--body);color:var(--ink);margin:0}
.dv-quote cite{display:block;margin-top:12px;font-style:normal;font-size:15px;color:var(--ink-muted)}
.dv-quote+.dv-quote{margin-top:40px}
@media (max-width:767px){.dv-quote p{font-size:20px}}
.dv-band-quote{margin:18px 0 0!important;max-width:440px;font-size:16px;line-height:1.45;color:#fff}
.dv-band-quote span{display:block;margin-top:4px;font-size:13px;color:var(--on-brand-muted,#c8d3df)}
/* a named client case line on an industry page (industry(case=...)) */
.dv-case{margin:22px 0 0!important;padding:14px 18px;border-left:4px solid var(--brand);background:var(--surface);border-radius:0 12px 12px 0;color:var(--ink);font-size:16px;line-height:1.5}
