/* iSecurify theme components. Colours, type and buttons come from theme.json; this file lays out the section patterns. */
:root{
  --ink:var(--wp--preset--color--ink);--ink-muted:var(--wp--preset--color--ink-muted);--ink-subtle:var(--wp--preset--color--ink-subtle);
  --primary:var(--wp--preset--color--primary);--primary-hover:var(--wp--preset--color--primary-hover);--primary-deep:var(--wp--preset--color--primary-deep);
  --primary-tint:var(--wp--preset--color--primary-tint);--primary-tint-strong:var(--wp--preset--color--primary-tint-strong);
  --accent:var(--wp--preset--color--accent);--accent-ink:var(--wp--preset--color--accent-ink);--accent-tint:var(--wp--preset--color--accent-tint);
  --line:var(--wp--preset--color--line);--line-strong:var(--wp--preset--color--line-strong);
  --surface:var(--wp--preset--color--surface);--surface-alt:var(--wp--preset--color--surface-alt);--surface-sunken:var(--wp--preset--color--surface-sunken);
  --r-sm:6px;--r-md:10px;--r-lg:16px;--r-pill:999px;
  --sh-sm:0 1px 2px rgba(29,20,29,.06);--sh-md:0 10px 28px rgba(29,20,29,.10);--sh-lg:0 24px 56px rgba(29,20,29,.14);
  --gutter:24px;--sec:96px;
  --icon-check:url("../icons/check.svg");--icon-arrow:url("../icons/arrow.svg");--icon-chevron:url("../icons/chevron.svg");
}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
:where(.wp-site-blocks) :focus-visible{outline:2px solid var(--primary);outline-offset:2px}
.wp-block-image{margin:0}
.wp-block-image img{display:block}

/* ---------- layout ---------- */
.is-wrap{width:100%;max-width:calc(1200px + 2 * var(--gutter));margin-inline:auto;padding-inline:var(--gutter)}
.is-wrap--narrow{max-width:calc(820px + 2 * var(--gutter))}
.is-sec{padding-block:var(--sec)}
.is-sec--alt{background:var(--surface-alt)}
.is-sec--tint{background:var(--primary-tint)}
.is-sec--tight{padding-block:48px}
.is-head{max-width:720px;margin-bottom:48px}
.is-head > * + *{margin-top:16px}
.is-head > .is-eyebrow + *{margin-top:0}
.is-head--center{margin-inline:auto;text-align:center}
.is-grid{display:grid;gap:24px}
.is-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.is-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.is-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.is-grid--5{grid-template-columns:repeat(5,minmax(0,1fr))}
.is-grid--tight{gap:12px}
.is-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:center}
.is-split--top{align-items:start}
.is-split__col > * + *{margin-top:16px}
.is-split__col > .is-eyebrow + *{margin-top:0}
.is-wrap > .is-head + *,.is-wrap > * + .is-note{margin-top:0}
.is-wrap > * + *{margin-top:24px}
.is-wrap > .is-head + *{margin-top:0}

/* ---------- type ---------- */
.is-display{font-size:var(--wp--preset--font-size--display)!important;line-height:1.1!important;letter-spacing:-.025em;text-wrap:balance}
.is-h1{font-size:var(--wp--preset--font-size--huge);line-height:1.18;letter-spacing:-.02em;text-wrap:balance}
.is-h2{font-size:var(--wp--preset--font-size--xx-large);line-height:1.24;letter-spacing:-.015em;text-wrap:balance}
.is-h3{font-size:20px;line-height:28px;letter-spacing:-.005em}
.is-h4{font-size:16px;line-height:24px}
.is-lead{font-size:var(--wp--preset--font-size--large);line-height:1.6;font-weight:500;color:var(--ink-muted)}
.is-body,.is-card__text,.is-small{color:var(--ink-muted)}
.is-small,.is-card__text{font-size:14px;line-height:22px}
.is-muted{color:var(--ink-subtle)}
.is-eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:13px;line-height:18px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}
.is-eyebrow::before{content:"";flex:none;width:20px;height:3px;border-radius:2px;background:var(--accent)}
.is-eyebrow--plain::before{display:none}
.is-eyebrow--center{justify-content:center}
mark.has-inline-color{background:none}
mark.is-tbd,.is-tbd{display:inline;padding:1px 6px;border:1px dashed currentColor;border-radius:4px;background:var(--accent-tint);color:var(--accent-ink);font-weight:600;font-size:.92em;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.is-crumb{margin-bottom:24px;font-size:14px;line-height:20px;font-weight:600;color:var(--ink-subtle)}
.is-crumb a{color:var(--ink-subtle);text-decoration:none}
.is-crumb a:hover{color:var(--primary)}
.is-crumb__sep{margin:0 6px;color:var(--line-strong)}
.is-note{display:block;margin-top:32px!important;padding:14px 16px 14px 44px;border:1px dashed var(--accent-ink);border-radius:var(--r-sm);background:var(--accent-tint) url("../icons/info.svg") no-repeat 14px 14px/20px;font-size:14px;line-height:22px;color:var(--accent-ink)}
.is-slot{display:grid;place-items:center;min-height:64px;margin:0;padding:8px 12px;border:1.5px dashed var(--line-strong);border-radius:var(--r-sm);background:var(--surface);font-size:13px;line-height:18px;font-weight:700;color:var(--accent-ink);text-align:center}

/* ---------- buttons and links ---------- */
.wp-block-buttons{gap:12px}
.is-split__col > .wp-block-buttons,.is-hero__text > .wp-block-buttons{margin-top:32px}
.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;white-space:nowrap}
.is-arrow .wp-block-button__link::after,.is-more a::after{content:"";width:18px;height:18px;flex:none;background:currentColor;-webkit-mask:var(--icon-arrow) center/contain no-repeat;mask:var(--icon-arrow) center/contain no-repeat;transition:transform .15s}
.is-arrow .wp-block-button__link:hover::after,.is-more a:hover::after{transform:translateX(3px)}
.wp-block-button.is-style-outline .wp-block-button__link{background:transparent;color:var(--primary);border:1.5px solid var(--primary);padding:13px 22px}
.wp-block-button.is-style-outline .wp-block-button__link:hover{background:var(--primary-tint);color:var(--primary)}
.wp-block-button.is-style-light .wp-block-button__link{background:var(--surface);color:var(--primary);border-color:var(--surface)}
.wp-block-button.is-style-light .wp-block-button__link:hover{background:var(--primary-tint)}
.is-more{margin-top:auto!important;padding-top:20px}
.is-more a{display:inline-flex;align-items:center;gap:6px;font-size:15px;line-height:20px;font-weight:700;color:var(--primary);text-decoration:none}
.is-more--inline{margin-top:20px!important;padding-top:0}
.is-card:has(> .is-more:not(.is-more--inline) a){position:relative;transition:box-shadow .2s,border-color .2s,transform .2s}
.is-card > .is-more:not(.is-more--inline) a::before{content:"";position:absolute;inset:0;border-radius:inherit}
.is-card:has(> .is-more:not(.is-more--inline) a):hover{border-color:var(--primary-tint-strong);box-shadow:var(--sh-md);transform:translateY(-2px)}

/* ---------- header ---------- */
header.wp-block-template-part{position:sticky;top:0;z-index:50}
.admin-bar header.wp-block-template-part{top:32px}
.is-header{background:var(--surface);border-bottom:1px solid var(--line);transition:box-shadow .2s}
.is-header.is-scrolled{box-shadow:var(--sh-sm)}
.is-header__in{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}
.is-header__in > *{margin:0!important}
.is-header .wp-block-site-logo img{width:151px;height:auto}
.is-header .wp-block-navigation{font-size:15px;font-weight:600}
.is-header .wp-block-navigation .wp-block-navigation-item__content{padding:10px 9px;color:var(--ink);text-decoration:none}
.is-header .wp-block-navigation .wp-block-navigation-item__content:hover,.is-header .wp-block-navigation .current-menu-item > .wp-block-navigation-item__content,.is-header .wp-block-navigation .current-menu-ancestor > .wp-block-navigation-item__content{color:var(--primary)}
.is-header .wp-block-navigation__container{gap:0}
.is-header .wp-block-navigation .wp-block-navigation__submenu-icon{width:12px;height:12px;margin-left:2px}
.is-header .wp-block-navigation .wp-block-navigation__submenu-container{min-width:300px!important;padding:12px;border:1px solid var(--line)!important;border-radius:var(--r-md);background:var(--surface);box-shadow:var(--sh-md);top:calc(100% + 6px)}
.is-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:10px 12px;border-radius:var(--r-sm);font-weight:600}
.is-header .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover{background:var(--primary-tint)}
/* Compliance: two labelled groups side by side */
.is-header .wp-block-navigation .is-mega > .wp-block-navigation__submenu-container{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-width:560px!important;left:50%;transform:translateX(-50%)}
.is-header .wp-block-navigation .is-mega .is-mega > .wp-block-navigation__submenu-container,.is-header .wp-block-navigation .is-mega > .wp-block-navigation__submenu-container > .has-child > .wp-block-navigation__submenu-container{position:static;visibility:visible;opacity:1;width:auto;height:auto;min-width:0!important;padding:0;border:0!important;box-shadow:none;transform:none;display:block}
.is-header .wp-block-navigation .is-mega > .wp-block-navigation__submenu-container > .has-child > .wp-block-navigation-item__content{padding:8px 12px 4px;font-size:12px;line-height:16px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-subtle);pointer-events:none}
.is-header .wp-block-navigation .is-mega > .wp-block-navigation__submenu-container > .has-child > .wp-block-navigation__submenu-icon{display:none}
.is-header .wp-block-buttons .wp-block-button__link{padding:9px 16px}
.is-header .wp-block-navigation .is-mega > .wp-block-navigation__submenu-container > .has-child{flex-direction:column;align-items:stretch}
.wp-block-navigation__responsive-container.is-menu-open{padding:24px!important;background:var(--surface)!important}
.is-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{align-items:flex-start!important;padding-top:48px}
.is-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:stretch!important;width:100%;gap:4px}
.is-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{flex-direction:column;align-items:flex-start!important;width:100%}
.is-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{padding:10px 0!important}
.is-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container,
.is-header .wp-block-navigation__responsive-container.is-menu-open .is-mega > .wp-block-navigation__submenu-container{display:block!important;position:static!important;transform:none!important;left:auto!important;min-width:0!important;width:100%!important;padding:0 0 8px 14px!important;margin:0!important;border:0!important;border-left:2px solid var(--primary-tint)!important;border-radius:0;box-shadow:none!important;background:transparent!important}
.is-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{padding:8px 0!important;text-align:left}
.is-header .wp-block-navigation__responsive-container.is-menu-open .is-mega > .wp-block-navigation__submenu-container > .has-child > .wp-block-navigation-item__content{padding:12px 0 2px!important}
.is-header .wp-block-navigation__responsive-container.is-menu-open .is-mega > .wp-block-navigation__submenu-container > .has-child > .wp-block-navigation__submenu-container{border-left:0!important;padding:0 0 4px!important}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{font-size:17px;font-weight:700}
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content{font-size:15px;font-weight:600;color:var(--ink-muted)}

/* ---------- hero ---------- */
.is-hero{padding:72px 0 var(--sec)}
.is-hero--page{padding:56px 0 80px;background:var(--surface-alt);border-bottom:1px solid var(--line)}
.is-hero--simple{padding-bottom:56px}
.is-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:64px;align-items:center}
.is-hero__text > * + *{margin-top:20px}
.is-hero__text > .is-eyebrow + *{margin-top:0}
.is-hero--simple .is-wrap > * + *{margin-top:16px}
.is-hero--simple .is-wrap > .is-crumb + *{margin-top:0}

/* ---------- image placeholders and photos ---------- */
.is-ph{position:relative;border-radius:var(--r-lg);overflow:hidden}
.is-ph img{width:100%;border-radius:var(--r-lg)}
.is-ph figcaption{position:absolute;left:24px;bottom:24px;max-width:calc(100% - 48px);margin:0;padding:8px 12px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);font-size:13px;line-height:18px;font-weight:600;color:var(--ink-muted);text-align:left}
.is-photo,.is-portrait{overflow:hidden;border-radius:var(--r-lg)}
.is-photo img,.is-portrait img{width:100%;height:100%;object-fit:cover}
.is-photo figcaption{position:absolute;top:16px;right:16px;margin:0;padding:6px 12px;border-radius:var(--r-pill);background:rgba(29,20,29,.78);font-size:12px;line-height:18px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#fff}
.is-photo{position:relative}

/* ---------- cards ---------- */
.is-card{display:flex;flex-direction:column;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}
.is-card > * + *{margin-top:8px}
.is-card > .is-icon + *{margin-top:20px}
.is-card--tint{background:var(--primary-tint);border-color:var(--primary-tint-strong)}
.is-card--feature{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}
.is-card--media{padding:0;overflow:hidden}
.is-card--media > .wp-block-image img{border-radius:0}
.is-card--media .is-ph{border-radius:0}
.is-card__body{padding:24px;display:flex;flex-direction:column;flex:1}
.is-card__body > * + *{margin-top:8px}
.is-card__body > .is-icon + *{margin-top:14px}
.is-icon{display:grid!important;place-items:center;width:48px;height:48px;border-radius:var(--r-sm);background:var(--primary-tint)}
.is-icon img{width:24px!important;height:24px!important}
.is-group .is-linklist{margin-top:16px}
.is-linklist{list-style:none;padding:0;margin:0}
.is-linklist li{position:relative;padding:16px 28px 16px 0;border-top:1px solid var(--line);font-size:13px;line-height:18px;color:var(--ink-muted)}
.is-linklist li::after{content:"";position:absolute;right:0;top:50%;width:18px;height:18px;margin-top:-9px;background:var(--primary);-webkit-mask:var(--icon-arrow) center/contain no-repeat;mask:var(--icon-arrow) center/contain no-repeat}
.is-linklist a{color:var(--ink);text-decoration:none;font-size:15px;line-height:20px}
.is-linklist a::before{content:"";position:absolute;inset:0}
.is-linklist li:hover a{color:var(--primary)}
.is-chips{display:flex;flex-wrap:wrap;gap:10px 12px;margin:0}
.is-chip{display:inline-flex;align-items:center;padding:6px 14px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);font-size:13px;line-height:18px;font-weight:600;color:var(--ink-muted)}
.is-strip{display:flex;flex-wrap:wrap;align-items:center;gap:12px 20px;margin-bottom:32px}
.is-strip__label{margin:0;font-size:13px;line-height:18px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-subtle)}
.is-tag{align-self:flex-start;display:inline-block;width:auto;margin:0;padding:2px 10px;border-radius:var(--r-pill);background:var(--primary-tint);font-size:12px;line-height:18px;font-weight:700;color:var(--primary)}
.is-pill{display:inline-flex;align-items:center;gap:6px;padding:2px 10px;border-radius:var(--r-pill);background:var(--primary-tint);font-size:12px;line-height:18px;font-weight:700;color:var(--primary)}
.is-pill::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--primary)}
.is-pill.is-closed{background:var(--surface-sunken);color:var(--ink-muted)}
.is-pill.is-closed::before{background:var(--line-strong)}

/* ---------- lists ---------- */
.is-check{list-style:none;padding:0;margin:0}
.is-check li{position:relative;padding:8px 0 8px 34px;color:var(--ink-muted)}
.is-check li::before{content:"";position:absolute;left:0;top:10px;width:22px;height:22px;background:var(--primary);-webkit-mask:var(--icon-check) center/contain no-repeat;mask:var(--icon-check) center/contain no-repeat}
.is-check li strong{color:var(--ink)}
.is-reqs{list-style:none;padding:0;margin:8px 0 0}
.is-reqs li{padding:6px 0;color:var(--ink-muted)}
.is-reqs strong{display:inline-block;min-width:26px;color:var(--primary)}
.is-features > * + *{margin-top:20px}
.is-feature{display:flex;gap:16px;align-items:flex-start}
.is-feature .is-icon{flex:none;width:44px;height:44px}
.is-feature__body > * + *{margin-top:4px}

/* ---------- steps, flow, tiles, bars, compare, timeline ---------- */
.is-steps--row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.is-steps--row .is-step{position:relative;padding-top:32px}
.is-steps--row .is-step::before{content:"";position:absolute;top:5px;left:0;right:-24px;height:2px;background:var(--primary-tint-strong)}
.is-steps--row .is-step:last-child::before{right:0}
.is-steps--row .is-step::after{content:"";position:absolute;top:0;left:0;width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px var(--surface)}
.is-sec--alt .is-steps--row .is-step::after{box-shadow:0 0 0 4px var(--surface-alt)}
.is-steps__n{margin:0 0 8px;font-size:13px;line-height:18px;font-weight:700;letter-spacing:.08em;color:var(--primary)}
.is-steps__text{margin-top:8px;font-size:14px;line-height:22px;color:var(--ink-muted)}
.is-steps--list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 64px}
.is-steps--list .is-step{position:relative;padding:24px 0 24px 60px;border-top:1px solid var(--line)}
.is-steps--list .is-steps__n{position:absolute;left:0;top:24px;display:grid;place-items:center;width:44px;height:44px;margin:0;border-radius:50%;background:var(--primary-tint);letter-spacing:0;font-size:14px}
.is-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
.is-flow__item{position:relative;padding:24px}
.is-flow__item + .is-flow__item::before{content:"";position:absolute;top:50%;left:-26px;width:20px;height:2px;background:var(--accent)}
.is-flow .is-icon{width:40px;height:40px}
.is-tile{padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}
.is-tile__n{margin:0 0 6px;font-size:13px;line-height:18px;font-weight:700;letter-spacing:.08em;color:var(--primary)}
.is-tile__t{margin:0;font-size:14px;line-height:20px;font-weight:700;color:var(--ink)}
.is-tile .is-card__text{margin-top:4px}
.is-bar__n{margin:0;font-size:40px;line-height:44px;font-weight:700;letter-spacing:-.02em;color:var(--primary)}
.is-bar__track{height:6px;margin:14px 0!important;border-radius:var(--r-pill);background:var(--surface-sunken);overflow:hidden;font-size:0;line-height:0}
.is-bar__track span{display:block;height:100%;background:var(--primary);border-radius:inherit}
.is-compare{display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr)}
.is-compare__plus{display:grid;place-items:center;margin:0;font-size:28px;font-weight:700;color:var(--accent-ink)}
.is-tier .wp-block-buttons{margin-top:auto!important;padding-top:20px}
.is-tier .is-check{margin:16px 0 0!important;padding-top:12px;border-top:1px solid var(--line)}
.is-tier .is-check li{font-size:14px;line-height:22px;padding-top:6px;padding-bottom:6px}
.is-tier .is-check li::before{top:7px}
.is-time{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.is-time--4{grid-template-columns:repeat(4,minmax(0,1fr))}
.is-time__item{position:relative;padding-top:32px}
.is-time__item > * + *{margin-top:6px}
.is-time__item::before{content:"";position:absolute;top:7px;left:0;right:-24px;height:2px;background:var(--primary-tint-strong)}
.is-time__item:last-child::before{right:0}
.is-time__item::after{content:"";position:absolute;top:0;left:0;width:16px;height:16px;border:3px solid var(--primary);border-radius:50%;background:var(--surface);box-sizing:border-box}
.is-time__item.is-done::after{background:var(--primary)}
.is-time__date{margin:0;font-size:22px;line-height:30px;font-weight:700;color:var(--ink)}

/* ---------- FAQ (details blocks) ---------- */
.is-acc{max-width:820px;border-top:1px solid var(--line)}
.is-acc .wp-block-details{margin:0;padding:0;border-bottom:1px solid var(--line)}
.is-acc summary{position:relative;padding:22px 48px 22px 0;font-size:17px;line-height:26px;font-weight:700;color:var(--ink);cursor:pointer;list-style:none}
.is-acc summary::-webkit-details-marker{display:none}
.is-acc summary::after{content:"";position:absolute;right:0;top:25px;width:22px;height:22px;background:var(--primary);-webkit-mask:var(--icon-chevron) center/contain no-repeat;mask:var(--icon-chevron) center/contain no-repeat;transition:transform .2s}
.is-acc details[open] summary::after{transform:rotate(180deg)}
.is-acc summary:hover{color:var(--primary)}
.is-acc details > :not(summary){padding:0 48px 24px 0;margin:0;color:var(--ink-muted)}

/* ---------- call to action ---------- */
.is-cta{padding:64px;border-radius:var(--r-lg);background-color:var(--primary-deep);background-image:radial-gradient(rgba(255,255,255,.09) 1.2px,transparent 1.4px);background-size:16px 16px;text-align:center}
.is-cta h2{color:#fff}
.is-cta h2 mark{color:var(--accent)!important}
.is-cta p{max-width:600px;margin:16px auto 0;color:#dccadc;text-wrap:balance}
.is-cta .wp-block-buttons{justify-content:center;margin-top:32px}
.is-cta .is-cta__mail a{font-weight:700;color:#fff;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px;text-decoration-thickness:2px}
.is-cta :focus-visible{outline-color:var(--accent)}

/* ---------- customer logo bar (moves left to right) ---------- */
.is-logos{padding:32px 0;background:var(--surface-alt);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.is-logos--inline{margin-top:48px!important;padding:32px 0 0;background:none;border-bottom:0}
.is-logos .is-wrap > * + *,.is-logos--inline > * + *{margin-top:16px}
.is-logos__head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.is-marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.is-marquee .wp-block-query{display:block}
.is-marquee__track{display:flex;width:max-content;animation:is-marquee 40s linear infinite}
.is-marquee__set,.is-marquee .wp-block-post-template{display:flex!important;flex:none;gap:24px!important;margin:0!important;padding:0 24px 0 0!important;list-style:none}
.is-marquee .wp-block-post{margin:0!important;width:176px}
.is-logo-item{display:grid;place-items:center;width:176px;height:64px;margin:0!important;padding:8px 16px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}
.is-logo-item img{max-width:100%;max-height:40px;width:auto!important;height:auto!important;object-fit:contain;filter:grayscale(1);opacity:.8}
.is-marquee:hover .is-marquee__track,.is-marquee:focus-within .is-marquee__track,.is-logos.is-paused .is-marquee__track{animation-play-state:paused}
@keyframes is-marquee{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.is-logos__btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);font:700 13px/18px inherit;font-family:inherit;color:var(--ink-muted);cursor:pointer}
.is-logos__btn:hover{border-color:var(--primary);color:var(--primary)}
@media (prefers-reduced-motion:reduce){.is-marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}.is-marquee__track{animation:none}.is-marquee__set[aria-hidden]{display:none!important}.is-logos__btn{display:none}}

/* ---------- testimonials (query loop of Testimonials) ---------- */
.is-quotes{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none}
.is-quotes > li{margin:0!important;display:flex}
.is-quote{width:100%}
.is-quote .is-icon--quote{background:none;width:32px;height:32px;place-items:start}
.is-quote .is-icon--quote img{width:32px!important;height:32px!important}
.is-quote__text{margin-top:12px!important;color:var(--ink);font-size:16px;line-height:26px}
.is-quote__text > *{margin:0}
.is-quote__by{margin-top:auto!important;padding-top:16px;border-top:1px solid var(--line);margin-block-start:20px}
.is-quote__by > *{margin:0}
.is-quote__name{font-size:15px;line-height:22px;font-weight:700}
.is-quote__role{font-size:14px;line-height:22px;color:var(--ink-muted)}
.is-quote--single{max-width:820px;margin-top:48px!important}

/* ---------- media, video, gallery ---------- */
.is-video{margin:0;border-radius:var(--r-lg);overflow:hidden;background:var(--primary-deep);position:relative}
.is-video video{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.is-video figcaption{position:absolute;top:16px;left:16px;margin:0;padding:6px 12px;border:1px dashed var(--accent-ink);border-radius:var(--r-sm);background:var(--accent-tint);font-size:13px;line-height:18px;font-weight:700;color:var(--accent-ink)}
.is-gallery{margin-top:32px!important;gap:12px!important}
.is-gallery .wp-block-image{border-radius:var(--r-md);overflow:hidden}
.is-gallery.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{font-size:13px;font-weight:600;background:linear-gradient(0deg,rgba(29,20,29,.78),rgba(29,20,29,0));padding:24px 12px 10px}

/* ---------- leadership, trust centre ---------- */
.is-stat{display:grid;justify-items:center;gap:8px;padding:64px 32px;border:1px solid var(--primary-tint-strong);border-radius:var(--r-lg);background:var(--primary-tint) radial-gradient(var(--primary-tint-strong) 1.2px,transparent 1.4px) 0 0/16px 16px;text-align:center}
.is-stat .is-icon{width:72px;height:72px;border-radius:50%;background:var(--surface);margin-bottom:12px}
.is-stat .is-icon img{width:32px!important;height:32px!important}
.is-stat__v{margin:0;font-size:64px;line-height:68px;font-weight:700;letter-spacing:-.03em;color:var(--primary)}
.is-stat__l{margin:0;font-size:13px;line-height:18px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.is-fact{flex-direction:row;align-items:center;gap:16px;padding:24px}
.is-fact > * + *{margin-top:0}
.is-fact .is-icon{flex:none;width:44px;height:44px}
.is-media{position:relative;padding-bottom:28px}
.is-photo.wp-block-image img{aspect-ratio:4/5}
.is-float{position:absolute;left:-28px;bottom:0;width:280px;padding:18px 20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--sh-lg)}
.is-float > *{margin:0}
.is-float__t{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink)}
.is-float__kv{display:flex;justify-content:space-between;gap:12px;margin-top:10px!important;padding-bottom:8px;border-bottom:6px solid var(--primary);font-size:13px;line-height:18px;font-weight:600;color:var(--ink-muted)}
.is-float__kv strong{color:var(--ink)}
.is-float__foot{margin-top:14px!important;font-size:12px;line-height:16px;font-weight:700;color:var(--ink-subtle)}
.is-person .is-portrait img{aspect-ratio:4/5;object-position:center top}
.is-role{margin:0;font-size:14px;line-height:22px;font-weight:700;color:var(--primary)}
.is-house{display:grid;justify-items:center;gap:12px;margin:64px 0 24px!important;text-align:center}
.is-house > *{margin:0}
.is-house__logo img{height:64px;width:auto}
.is-brand__top{display:flex;align-items:center;gap:12px;margin:0 0 16px!important;font-size:13px;color:var(--primary)}
.is-brand__logo img{height:44px;width:auto}
.is-pull{margin:0;font-size:26px;line-height:38px;font-weight:600;letter-spacing:-.01em;color:var(--ink);text-align:center;text-wrap:balance}
.is-sec--tint .is-wrap > .is-eyebrow{margin-top:20px}
.is-featured{padding:48px 32px}
.is-visit__head{margin:0 0 12px;font-size:13px;line-height:18px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--primary)}
.is-address{font-size:16px;line-height:26px;font-weight:600;color:var(--ink)}
.is-visit__mail a{font-size:18px;font-weight:700}
.is-visit__row{padding:12px 0;border-top:1px solid var(--line)}
.is-visit__row:first-of-type{border-top:0;padding-top:0}
.is-visit__k{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:0;color:var(--ink)}
.is-marks{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:16px;padding:48px 24px}
.is-mark__item{display:grid;justify-items:center;gap:12px}
.is-mark img{width:100%;max-width:132px;height:auto;border-radius:50%}
.is-mark__cap{margin:0;font-size:15px;line-height:20px;text-align:center;color:var(--primary);font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.is-mark__cap strong{font-size:15px;letter-spacing:0;text-transform:none;color:var(--ink)}
.is-cert{display:grid!important;grid-template-columns:148px minmax(0,1fr) 300px;gap:48px;align-items:start;margin-top:24px!important}
.is-cert > * + *{margin-top:0}
.is-cert__mark{display:grid;justify-items:center;gap:12px}
.is-cert__mark .is-mark img{max-width:132px}
.is-cert__body > * + *{margin-top:12px}
.is-cert__means{padding:16px;border-radius:var(--r-sm);background:var(--primary-tint);color:var(--ink-muted)}
.is-cert__means strong{color:var(--ink)}
.is-cert__facts{padding-left:32px;border-left:1px solid var(--line)}
.is-facts{list-style:none;margin:12px 0 0;padding:0}
.is-facts li{padding:10px 0;border-top:1px solid var(--line);font-size:15px;line-height:22px;font-weight:600;color:var(--ink)}
.is-facts li strong{font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-subtle)}
.is-logo-slot{display:grid;place-items:center;align-content:center;gap:4px;min-height:88px;padding:16px;border:1.5px dashed var(--line-strong);border-radius:var(--r-sm);background:var(--surface)}
.is-logo-slot > *{margin:0;text-align:center}
.is-logo-slot strong{font-size:22px;line-height:28px;color:var(--ink)}
.is-slot__note{font-size:11px;line-height:16px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent-ink)}
.is-card .is-logo-slot{margin-bottom:12px;background:var(--surface-alt)}

/* ---------- contact ---------- */
.is-contact{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:64px;align-items:start}
.is-contact__side > * + *{margin-top:16px}
.is-contact__row{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid var(--line)}
.is-contact__row .is-icon{flex:none;width:40px;height:40px}
.is-contact__row p{margin:0}
.is-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px;padding:32px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}
.is-field{display:flex;flex-direction:column;gap:6px}
.is-field--full{grid-column:1/-1}
.is-field label{font-size:14px;line-height:20px;font-weight:700;color:var(--ink)}
.is-field label i{font-style:normal;font-weight:500;color:var(--ink-subtle)}
.is-input{width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);font:500 16px/24px inherit;font-family:inherit;color:var(--ink);box-sizing:border-box}
textarea.is-input{min-height:132px;resize:vertical}
.is-input:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}
.is-consent{display:flex!important;flex-direction:row!important;gap:12px;align-items:flex-start;font-weight:500!important;color:var(--ink-muted)!important}
.is-consent input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--primary)}
.is-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.is-form__msg{grid-column:1/-1;margin:0;padding:14px 16px;border-radius:var(--r-sm);font-size:14px;line-height:22px;font-weight:600}
.is-form__msg--ok{border:1px solid var(--wp--preset--color--success);color:var(--wp--preset--color--success)}
.is-form__msg--err{border:1px solid var(--wp--preset--color--danger);color:var(--wp--preset--color--danger)}
.is-form button{justify-self:start;cursor:pointer}

/* ---------- blog and case studies ---------- */
.is-post-grid .wp-block-post-template{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none}
.is-post-grid .wp-block-post{margin:0!important;display:flex}
.is-post-card{width:100%;padding:0!important;overflow:hidden}
.is-post-card .wp-block-post-featured-image{margin:0}
.is-post-card .wp-block-post-featured-image img{aspect-ratio:16/9;object-fit:cover;width:100%;height:auto}
.is-post-card .wp-block-post-title{font-size:20px;line-height:28px;margin:0}
.is-post-card .wp-block-post-title a{color:var(--ink);text-decoration:none}
.is-post-card .wp-block-post-title a::before{content:"";position:absolute;inset:0}
.is-post-card{position:relative;transition:box-shadow .2s,transform .2s}
.is-post-card:hover{box-shadow:var(--sh-md);transform:translateY(-2px)}
.is-post-card .wp-block-post-excerpt{font-size:14px;line-height:22px;color:var(--ink-muted);margin:0}
.is-post-card .wp-block-post-excerpt__more-text{display:none}
.is-post-meta{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:auto!important;padding-top:12px;font-size:13px;line-height:20px;font-weight:600;color:var(--ink-subtle)}
.is-post-meta > *{margin:0}
.wp-block-post-terms.is-tags a,.is-tags a{display:inline-block;padding:2px 10px;border-radius:var(--r-pill);background:var(--primary-tint);font-size:12px;line-height:18px;font-weight:700;color:var(--primary);text-decoration:none}
.is-cats{margin:0}
.is-cats .wp-block-categories,.wp-block-categories.is-cats{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}
.is-cats li a{display:inline-flex;padding:6px 14px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);font-size:13px;font-weight:600;color:var(--ink-muted);text-decoration:none}
.is-cats li a:hover,.is-cats li.current-cat a{border-color:var(--primary);background:var(--primary);color:#fff}
.is-filter-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px!important}
.is-article{max-width:780px;margin-inline:auto}
.is-article > * + *{margin-top:16px}
.is-article h2,.is-article h3{margin-top:40px!important}
.is-article .is-lead{color:var(--ink)}
.is-article .wp-block-post-featured-image img{border-radius:var(--r-lg);aspect-ratio:16/8;object-fit:cover}
.is-related{flex-direction:row!important;align-items:center;justify-content:space-between;gap:24px;margin-top:48px!important}
.is-related > * + *{margin-top:0}
.is-related .wp-block-group > * + *{margin-top:4px}
.is-case-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;margin-top:24px!important}
.is-case-facts > p{margin:0;padding:10px 0;border-top:1px solid var(--line);font-size:15px;line-height:22px;font-weight:600}
.is-case-facts strong{display:block;font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-subtle)}
.wp-block-query-pagination{margin-top:48px!important;gap:8px;font-weight:700}
.is-case-body > * + *{margin-top:72px!important}
.is-case-block > * + *{margin-top:12px}
.is-case-block > :last-child{margin-top:32px}
@media (max-width:640px){.is-case-body > * + *{margin-top:48px!important}}
.is-prose{max-width:720px}
.is-prose > * + *{margin-top:16px}

/* ---------- footer ---------- */
.is-footer{padding:64px 0 0;background:var(--surface-alt);border-top:1px solid var(--line)}
.is-footer__grid{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(5,minmax(0,1fr));gap:48px 24px}
.is-footer .wp-block-site-logo img{width:151px;height:auto}
.is-footer__brand > * + *{margin-top:16px}
.is-footer__brand p{max-width:300px;font-size:14px;line-height:22px;color:var(--ink-muted)}
.is-footer h2{margin:0 0 12px;font-size:13px;line-height:18px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.is-footer ul{list-style:none;margin:0;padding:0}
.is-footer li{padding:5px 0;font-size:14px;line-height:22px}
.is-footer li a{color:var(--ink-muted);text-decoration:none}
.is-footer li a:hover{color:var(--primary)}
.is-footer__col + .is-footer__col,.is-footer__stack > * + h2{margin-top:24px}
.is-footer__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;margin-top:48px;padding:24px 0;border-top:1px solid var(--line);font-size:14px;line-height:22px;color:var(--ink-subtle)}
.is-footer__bar > *{margin:0}
.is-footer__bar a{color:var(--ink-muted);text-decoration:none;font-weight:600;margin-left:20px}
.is-footer__bar a:first-child{margin-left:0}
.is-footer__contact{font-size:14px;line-height:22px;color:var(--ink-muted)}
.is-footer__contact a{font-weight:700}

/* ---------- responsive ---------- */
@media (max-width:1240px){
  .is-header__in{min-height:64px}
  .is-header .wp-block-site-logo img{width:128px}
  .is-header .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}
  .is-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
  .is-header .wp-block-buttons{display:none}
}
@media (max-width:960px){
  :root{--sec:64px}
  .is-hero,.is-hero--page{padding:40px 0 64px}
  .is-hero__grid,.is-split,.is-contact{grid-template-columns:minmax(0,1fr);gap:48px}
  .is-grid--3,.is-grid--4,.is-grid--5,.is-steps--row,.is-quotes,.is-post-grid .wp-block-post-template,.is-flow,.is-time--4{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .is-steps--row .is-step:nth-child(2n)::before,.is-time--4 .is-time__item:nth-child(2n)::before{right:0}
  .is-steps--list{grid-template-columns:minmax(0,1fr)}
  .is-flow__item + .is-flow__item::before{display:none}
  .is-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .is-footer__brand{grid-column:1/-1}
  .is-compare{grid-template-columns:minmax(0,1fr)}
  .is-cert{grid-template-columns:minmax(0,1fr)!important;gap:24px}
  .is-cert__mark{justify-items:start}
  .is-cert__facts{padding:24px 0 0;border-left:0;border-top:1px solid var(--line)}
  .is-float{left:16px}
}
@media (max-width:640px){
  :root{--gutter:16px}
  .is-grid--2,.is-grid--3,.is-grid--4,.is-steps--row,.is-flow,.is-time,.is-time--4,.is-post-grid .wp-block-post-template,.is-form{grid-template-columns:minmax(0,1fr)!important}
  .is-grid--5{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}
  .is-quotes{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gutter) * -1)!important;padding:0 var(--gutter) 8px!important}
  .is-quotes > li{flex:0 0 86%;scroll-snap-align:center}
  .is-steps--row .is-step::before,.is-time__item::before{display:none}
  .is-time__item{padding:0 0 0 32px}
  .is-time__item::after{top:6px}
  .is-card,.is-form{padding:24px}
  .is-card--media,.is-post-card{padding:0!important}
  .is-cta{padding:48px 24px}
  .is-head{margin-bottom:32px}
  .is-field--full{grid-column:auto}
  .wp-block-buttons > .wp-block-button{flex:1 1 100%}
  .wp-block-buttons > .wp-block-button .wp-block-button__link{width:100%}
  .is-header .wp-block-buttons > .wp-block-button{flex:none}
  .is-float{position:relative;left:0;width:auto;margin:-36px 16px 0}
  .is-media{padding-bottom:0}
  .is-marks{padding:32px 16px}
  .is-pull{font-size:21px;line-height:32px}
  .is-stat__v{font-size:52px;line-height:56px}
  .is-related{flex-direction:column!important;align-items:flex-start}
  .is-footer__bar{flex-direction:column;align-items:flex-start}
  .is-footer__bar a{margin-left:0;margin-right:16px}
  .is-logo-item,.is-marquee .wp-block-post{width:148px}
  .is-ph figcaption{left:12px;bottom:12px;max-width:calc(100% - 24px)}
}
