/* Blue Digital: sections shared by the home page and inner pages (flip cards, Score gauge, plan cards,
   drift rows, phone and site mock-ups, ticks). Loads on every page after site.css, before the page stylesheet. */
.bd-gauge{background:var(--card);border-radius:var(--r-img);box-shadow:var(--shadow);padding:36px 32px 32px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center;position:relative}
.bd-gauge svg{width:min(260px,100%);height:auto;overflow:visible}
.bd-gauge__track{stroke:var(--line)}
.bd-gauge__fill{stroke:var(--brand-2)}
.bd-gauge__num{font:400 64px/1 var(--font);fill:var(--ink)}
.bd-gauge__num--pct{font-size:48px}
.bd-gauge__of{font:400 15px/1 var(--font);fill:var(--muted)}
.bd-gauge__label{font-size:18px;color:var(--ink)}
.bd-gauge__meta{font-size:14px;color:var(--muted)}
.bd-textlink{color:var(--link);text-decoration:underline;text-underline-offset:4px;transition:color .2s ease}
.bd-textlink:hover{color:var(--brand-2)}
/* On navy (the More services lead, the starter bundle band): white, the band kicker red on hover. */
.bd-section--navy .bd-textlink,.bd-bundle .bd-textlink{color:#fff}
.bd-section--navy .bd-textlink:hover,.bd-bundle .bd-textlink:hover{color:var(--brand-2)}
.bd-plan{position:relative;border-radius:var(--r-lg);padding:32px;border:1px solid var(--line);background:var(--card);display:flex;flex-direction:column;gap:14px;transition:border-color .3s ease,box-shadow .4s ease,background-color .3s ease}
.bd-plan:hover,.bd-plan:focus-within{border-color:var(--brand-2);box-shadow:var(--shadow-h)}
.bd-plan--dark{background:var(--brand-1);border-color:var(--brand-1);color:var(--on-band-soft)}
/* Dark card hover: a red edge alone disappears on navy, so the surface lightens and the edge is a 2px ring */
.bd-plan--dark:hover,.bd-plan--dark:focus-within{background:var(--spark);border-color:var(--brand-2);box-shadow:0 0 0 1px var(--brand-2),0 24px 48px -16px rgba(1,43,101,.6)}
.bd-plan--dark h3,.bd-plan--dark .bd-plan__price{color:#fff}
.bd-plan__name{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--kicker)}
.bd-plan--dark .bd-plan__name{color:var(--brand-2)}
.bd-plan h3{font-size:24px}
.bd-plan__price{font-size:44px;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}
.bd-plan__price small{font-size:16px;color:var(--muted)}
.bd-plan--dark .bd-plan__price small{color:var(--on-band-soft)}
.bd-plan__meta{font-size:14px;color:var(--muted)}
.bd-plan--dark .bd-plan__meta{color:var(--on-band-soft)}
.bd-ticks{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:15px}
.bd-ticks li{display:grid;grid-template-columns:20px 1fr;gap:10px;line-height:1.5}
.bd-ticks li::before{content:"";width:8px;height:8px;border-radius:2px;background:var(--brand-2);margin-top:8px}
.bd-plans__note{grid-column:1/-1;font-size:14px;color:var(--muted);text-align:center}
.bd-drift{margin-top:84px;display:flex;flex-direction:column;gap:22px}
.bd-drift__head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}
.bd-drift__row{overflow:hidden;margin-inline:calc(50% - 50vw)}
.bd-drift__track{display:flex;gap:22px;width:max-content;padding-inline:24px;will-change:transform;list-style:none;margin:0}
.bd-site{position:relative;width:clamp(260px,26vw,380px);aspect-ratio:3/2;border-radius:var(--r-card);overflow:hidden;box-shadow:var(--shadow);display:block;color:#fff;text-decoration:none;background:#0A1630}
.bd-site img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-zoom) var(--ease),filter var(--t-hover-colour) ease}
.bd-site__cap{position:absolute;left:0;right:0;bottom:0;padding:16px 18px;background:linear-gradient(transparent,rgba(1,24,58,.92));display:flex;align-items:flex-end;justify-content:space-between;gap:10px;transform:translateY(100%);transition:transform var(--t-hover) var(--ease)}
.bd-site__cap strong{font-weight:400;font-size:17px;display:block}
.bd-site__cap span{font-size:13px;opacity:.85}
.bd-site__go{width:40px;height:40px;border-radius:50%;background:var(--brand-2);display:grid;place-items:center;flex:none}
.bd-site:hover img,.bd-site:focus-visible img{transform:scale(1.08)}
.bd-site:hover .bd-site__cap,.bd-site:focus-visible .bd-site__cap{transform:none}
.bd-web__extras{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:64px}
.bd-callout{position:relative;overflow:hidden;border-radius:var(--r-lg);padding:28px 30px;display:flex;gap:18px;align-items:flex-start;background:var(--surface-tint);transition:transform var(--t-hover) var(--ease),box-shadow var(--t-hover) ease}
.bd-callout:hover{transform:translateY(-6px);box-shadow:var(--shadow-h)}
.bd-callout--red{background:#FDECEC}
.bd-u14.bd-web__extras .bd-callout--red{background:#fff}   /* Small business special: white like its neighbour, red icon kept */
.bd-callout__ic{width:52px;height:52px;border-radius:14px;background:var(--brand-1);color:#fff;display:grid;place-items:center;flex:none}
.bd-callout--red .bd-callout__ic{background:var(--brand-2)}
.bd-callout__ic .bd-icon{width:26px;height:26px}
.bd-callout h3{font-size:19px;margin-bottom:6px}
.bd-callout p{font-size:15px}
.bd-phone{position:relative;width:min(320px,86%);aspect-ratio:9/18.5;border-radius:44px;background:#0A1630;padding:12px;box-shadow:0 40px 70px -24px rgba(10,22,48,.5)}
.bd-phone::before{content:"";position:absolute;top:18px;left:50%;width:84px;height:22px;border-radius:12px;background:#0A1630;transform:translateX(-50%);z-index:3}
.bd-phone__screen{position:relative;height:100%;border-radius:34px;overflow:hidden;background:#fff}
.bd-smplans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;margin-top:64px}
.bd-smplans .bd-plan{padding:28px}
.bd-plan__ribbon{position:absolute;top:-13px;left:28px;background:var(--brand-2);color:#fff;font-size:12px;letter-spacing:.12em;text-transform:uppercase;border-radius:var(--r-pill);padding:5px 12px}
.bd-smplans .bd-plan__price{font-size:38px}
/* Social media ad campaign management band (/social-media-solutions/) */
.bd-smads__note{margin:0;font-size:14px;font-style:italic;font-synthesis:style;color:var(--on-band-soft)}
.bd-smads__actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:10px}
.bd-recipe__grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin-top:32px}
.bd-flip{perspective:1000px;height:270px;outline-offset:4px;border-radius:var(--r-card)}
.bd-flip__in{position:relative;height:100%;transition:transform var(--t-zoom) var(--ease);transform-style:preserve-3d}
.bd-flip:hover .bd-flip__in,.bd-flip:focus-within .bd-flip__in,.bd-flip.is-flipped .bd-flip__in{transform:rotateY(180deg)}
.bd-flip__face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:var(--r-card);padding:18px;display:flex;flex-direction:column}
.bd-flip__front{background:var(--card);box-shadow:var(--shadow);justify-content:space-between}
.bd-flip__front .bd-icon{width:34px;height:34px;color:var(--brand-1)}
.bd-flip__front h3{font-size:17px}
.bd-flip__front span{font-size:13px;color:var(--muted)}
.bd-flip__front .bd-flip__count{font-size:56px;color:var(--brand-2);line-height:1;color:var(--brand-2);transition:transform var(--t-hover) var(--ease)}
.bd-flip__top{display:flex;align-items:flex-start;justify-content:space-between}
.bd-flip__back{transform:rotateY(180deg);background:var(--brand-1);color:#fff;gap:6px}
.bd-flip__back h3{color:#fff;font-size:15px;margin-bottom:4px}
.bd-flip__back ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px;line-height:1.3}
.bd-flip__back li::before{content:"";display:inline-block;width:6px;height:6px;border-radius:2px;background:var(--brand-2);margin-right:8px;vertical-align:middle}
.bd-bundle{margin-top:64px;border-radius:var(--r-lg);background:var(--brand-1);color:var(--on-band-soft);padding:32px 36px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px 32px;position:relative;overflow:hidden}
/* A small red square fully inside the top-right corner; it spins while the banner is hovered (2026-10-22, Hunter). */
.bd-bundle{padding-right:112px}
.bd-bundle::after{content:"";position:absolute;right:30px;top:30px;width:52px;height:52px;border-radius:14px;background:var(--brand-2);opacity:.9;transform:rotate(18deg)}
.bd-bundle:hover::after{animation:bd-bundle-spin 1.6s linear infinite}
@keyframes bd-bundle-spin{from{transform:rotate(18deg)}to{transform:rotate(378deg)}}
.bd-bundle > *{position:relative;z-index:1}
.bd-bundle h3{color:#fff;font-size:24px;margin:4px 0 6px}
.bd-bundle .bd-kicker{color:var(--brand-2)}
/* ---------- responsive and reduced motion for the sections above ---------- */
@media (max-width:1180px){
  .bd-recipe__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .bd-flip{height:240px}
}
@media (max-width:980px){
  .bd-faq-grid{grid-template-columns:1fr}
  .bd-smplans{grid-template-columns:1fr}
  .bd-web__extras{grid-template-columns:1fr}
  .bd-drift__row{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .bd-drift__row::-webkit-scrollbar{display:none}
  .bd-drift__track{transform:none!important}
  .bd-site{scroll-snap-align:center}
}
@media (max-width:767px){
  .bd-cards,.bd-posts,.bd-inds{grid-template-columns:1fr}
  .bd-recipe__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .bd-flip{height:260px}
  .bd-bundle{padding:26px}
  .bd-bundle::after{right:20px;top:20px;width:34px;height:34px;border-radius:9px}
  .bd-bundle > div:first-child{padding-right:44px}
}
@media (prefers-reduced-motion:reduce){
  .bd-bundle:hover::after{animation:none}
  .bd-flip__in{transform:none!important}
  .bd-flip__back{transform:none;opacity:0;transition:opacity .25s!important}
  .bd-flip:hover .bd-flip__back,.bd-flip:focus-within .bd-flip__back,.bd-flip.is-flipped .bd-flip__back{opacity:1}
  .bd-card:hover,.bd-card:focus-within,.bd-post:hover,.bd-callout:hover,.bd-review-card:hover{transform:none}
}
