
/* Independent native interaction styles. Loaded after the source design snapshot. */
.breakdance-dropdown-floater[aria-hidden="true"] { pointer-events: none; }
.breakdance-dropdown--open .breakdance-dropdown-floater { pointer-events: auto; }
.breakdance-menu--open .breakdance-menu-list { visibility: visible; }
.bde-advanced-tabs-content[hidden], .bde-tabs__panel[hidden] { display: none !important; }
.js-comparison-container { position: relative; overflow: hidden; touch-action: pan-y; cursor: ew-resize; }
.js-comparison-container .images { position: relative; overflow: hidden; min-height: 270px; }
.js-comparison-container .js-image-before,
.js-comparison-container .js-image-after { position: absolute; inset: 0; background-repeat: no-repeat; background-position: center; background-size: cover; }
.js-comparison-container .dragger { position: absolute; z-index: 4; top: 0; bottom: 0; transform: translateX(-50%); }
.js-comparison-container .dragger::before { content: ""; position: absolute; height: 100%; width: 2px; background: #fff; left: 50%; box-shadow: 0 0 8px #0007; }
.js-comparison-container:focus-visible { outline: 3px solid #ECCD82; outline-offset: 3px; }
.bde-faq__item--active .bde-faq__icon--inactive { display: none; }
.bde-faq__item:not(.bde-faq__item--active) .bde-faq__icon--active { display: none; }
@media(prefers-reduced-motion:reduce) {
  .bde-header-builder { transition: none !important; }
  .bde-animated-heading__wrapper { animation: none !important; }
}


/* Port of the original entrance settings: 500ms, 100px/deg,
   trigger as the element approaches the lower viewport (120px margin). */
[data-prunus-reveal] { visibility: visible !important; }
html.prunus-motion-active [data-prunus-reveal]:not(.prunus-revealed) {
  opacity: 0;
  visibility: hidden !important;
}
html.prunus-motion-active [data-prunus-reveal] {
  transition: transform .5s ease-out, opacity .5s ease-out,
    visibility 0s linear .5s;
  will-change: transform, opacity;
}
html.prunus-motion-active [data-prunus-reveal].prunus-revealed {
  opacity: 1;
  visibility: visible !important;
  transform: none !important;
  transition: transform .5s ease-out, opacity .5s ease-out;
  will-change: auto;
}
html.prunus-motion-active [data-prunus-reveal="slideLeft"]:not(.prunus-revealed) {transform:translate3d(-100px,0,0)}
html.prunus-motion-active [data-prunus-reveal="slideRight"]:not(.prunus-revealed) {transform:translate3d(100px,0,0)}
html.prunus-motion-active [data-prunus-reveal="slideUp"]:not(.prunus-revealed) {transform:translate3d(0,100px,0)}
html.prunus-motion-active [data-prunus-reveal="slideDown"]:not(.prunus-revealed) {transform:translate3d(0,-100px,0)}
html.prunus-motion-active [data-prunus-reveal="flipUp"]:not(.prunus-revealed) {transform:perspective(2500px) rotateX(-100deg)}
html.prunus-motion-active [data-prunus-reveal="flipDown"]:not(.prunus-revealed) {transform:perspective(2500px) rotateX(100deg)}
html.prunus-motion-active [data-prunus-reveal="flipLeft"]:not(.prunus-revealed) {transform:perspective(2500px) rotateY(-100deg)}
html.prunus-motion-active [data-prunus-reveal="flipRight"]:not(.prunus-revealed) {transform:perspective(2500px) rotateY(100deg)}
html.prunus-motion-active [data-prunus-reveal="zoomIn"]:not(.prunus-revealed) {transform:scale(.6)}
html.prunus-motion-active [data-prunus-reveal="zoomOut"]:not(.prunus-revealed) {transform:scale(1.2)}
.prunus-animated-phrase{display:inline-block;transform-origin:50% 0;animation:prunus-flip-phrase 4s ease-in-out infinite}
@keyframes prunus-flip-phrase{0%,44%,100%{transform:rotateX(0)}49%{transform:rotateX(9deg)}54%{transform:rotateX(0)}}
@media(min-width:1120px){.prunus-sticky{position:sticky;top:30vh}}
@media(prefers-reduced-motion:reduce){
  html.prunus-motion-active [data-prunus-reveal]{opacity:1!important;visibility:visible!important;transform:none!important;transition:none!important}
  .prunus-animated-phrase{animation:none!important}
}

/* Client portal access is understated and placed with the existing footer links. */
.bde-div-26-113 .prunus-footer-login{
  display:inline-block;color:#526458;text-decoration:underline;text-underline-offset:4px;
  font-family:"Space Grotesk",sans-serif;font-weight:500;font-size:14px;
}
.bde-div-26-113 .prunus-footer-login:hover{color:#2E2E2E}
.bde-div-26-113 .prunus-footer-login:focus-visible{outline:2px solid #2E2E2E;outline-offset:4px}
@media(max-width:1023px){.bde-div-26-113 .prunus-footer-login{font-size:15px}}

/* Independent no-autoplay-until-click video embed */
lite-youtube{position:relative;display:block;aspect-ratio:16/9;background-size:cover;background-position:center;cursor:pointer}
lite-youtube:focus-visible{outline:3px solid #ECCD82;outline-offset:3px}
lite-youtube.prunus-video-playing{background-image:none!important}
lite-youtube.prunus-video-playing iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
lite-youtube.prunus-video-playing::before,
lite-youtube.prunus-video-playing::after{display:none!important}


/* No additional top-level menu items: protect the original logo and spacing. */
.bde-image-27-105{flex-shrink:0}
.breakdance-dropdown-links > .prunus-added-dropdown-item .breakdance-dropdown-link:focus-visible{
  outline:2px solid #2E2E2E;outline-offset:3px;
}


/* Original mobile offcanvas stacking: independent of the removed builder JS. */
@media(max-width:1119px){
  .bde-header-builder-27-100{z-index:1000;isolation:isolate}
  .bde-menu-27-139{position:relative;z-index:1001}
  .bde-menu-27-139 .breakdance-menu--offcanvas.breakdance-responsive-menu--open .breakdance-menu-list{
    z-index:1005;
    visibility:visible;
    pointer-events:auto;
    opacity:1;
  }
  .bde-menu-27-139 .breakdance-dropdown-floater[aria-hidden="true"]{
    pointer-events:none;display:none;
  }
  /* Expanded submenus flow under their own label; absolute positioning
     would cover the next menu's toggle and steal mobile taps. */
  .bde-menu-27-139 .breakdance-dropdown-floater{
    position:static!important;top:auto!important;left:auto!important;
    right:auto!important;min-width:0!important;width:100%!important;
    transform:none!important;transition:none!important;
  }
  .bde-menu-27-139 .breakdance-dropdown-floater[aria-hidden="false"]{
    pointer-events:auto;display:block;visibility:visible;opacity:1;
  }
}


/* White brush highlight behind "Websites built"; no surviving gold.
   Force both the original annotation and the separately animated phrase
   to white even when an older per-page stylesheet loads later. */
.bde-dual-heading-35-625 .dual-heading--secondary.js-annotate{
  position:relative;
  background-color:transparent!important;
  background-image:linear-gradient(96deg,#fff 0%,#fff 100%)!important;
  background-repeat:no-repeat!important;
  background-position:0 78%!important;
  background-size:0% 80%;
  -webkit-box-decoration-break:clone;box-decoration-break:clone;
  transition:background-size 2.25s cubic-bezier(.17,.55,.36,1);
}
.bde-dual-heading-35-625 .dual-heading--secondary.js-annotate.pm-highlight-drawn{background-size:100% 80%}
.bde-animated-heading-35-469 .bde-animated-heading__word,
.bde-animated-heading-35-469 .bde-animated-heading__wrapper .bde-animated-heading__word{
  background-color:#fff!important;
  background-image:none!important;
}
@media(prefers-reduced-motion:reduce){
  .bde-dual-heading-35-625 .dual-heading--secondary.js-annotate{background-size:100% 80%;transition:none}
}
/* Sticky scroll-up navigation, matching the approved header's dimensions. */
.bde-header-builder.pm-scroll-header{
  position:fixed!important;top:0!important;left:0!important;right:0!important;
  width:100%!important;z-index:1000!important;
  transition:transform .28s cubic-bezier(.2,.7,.2,1),background-color .24s ease!important;
  will-change:transform;transform:translateY(0)
}
.bde-header-builder.pm-scroll-header.pm-header-hidden{transform:translateY(-110%)!important}
.bde-header-builder.pm-scroll-header.pm-header-scrolled:not(.bde-header-builder--overlay){
  box-shadow:0 7px 26px rgba(33,58,48,.1)
}
.bde-header-builder.pm-scroll-header:focus-within{transform:translateY(0)!important}
html.prunus-menu-open .bde-header-builder.pm-scroll-header{transform:translateY(0)!important}
@media(prefers-reduced-motion:reduce){
  .bde-header-builder.pm-scroll-header{transition:none!important;will-change:auto}
}


/* Responsive original hero artwork. Reuse committed resized originals;
   the 1.5 MB full resolution background must not be a mobile prerequisite. */
.bde-section-35-253{
  background-image:url("/assets/prunus-images/background-1536.webp")!important;
}
@media(max-width:1199px){
  .bde-section-35-253{
    background-image:url("/assets/prunus-images/background-1024.webp")!important;
  }
}
@media(max-width:767px){
  .bde-section-35-253{
    background-image:url("/assets/prunus-images/background-768.webp")!important;
  }
}


/* Accessible keyboard navigation. Only visible on keyboard focus. */
.pm-skip-link {
  position:fixed; z-index:2147483000; top:10px; left:12px;
  background:#2e2e2e; color:#fff !important;
  border:2px solid #fff; border-radius:4px;
  font:600 16px/1.4 "Space Grotesk",Arial,sans-serif;
  padding:11px 18px; text-decoration:none;
  transform:translateY(-180%); transition:transform .16s ease;
}
.pm-skip-link:focus,.pm-skip-link:focus-visible {
  transform:translateY(0); outline:3px solid #ECCD82; outline-offset:3px;
}
:where(a[href],button,[role="button"],[role="tab"],input,textarea,select,[tabindex="0"]):focus-visible {
  outline:3px solid #2E2E2E !important;
  outline-offset:3px;
}
:where(.pm-site-footer,.pm-editorial) :where(a[href],button):focus-visible {
  outline-color:#ECCD82 !important;
}
#main-content:focus { outline:none; }
@media(prefers-reduced-motion:reduce) {
  .pm-skip-link { transition:none; }
}

/* Hide accessible skip link until it receives keyboard focus, including on editorial pages. */
.pm-skip-link:not(:focus):not(:focus-visible) {
 position:absolute!important;width:1px!important;height:1px!important;
 padding:0!important;margin:-1px!important;border:0!important;
 overflow:hidden!important;white-space:nowrap!important;
 clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;
 transform:none!important;
}
.pm-skip-link:focus,.pm-skip-link:focus-visible {
 position:fixed!important;top:12px!important;left:12px!important;
 z-index:2147483000!important;display:inline-block!important;
 width:auto!important;height:auto!important;padding:11px 18px!important;margin:0!important;
 overflow:visible!important;white-space:normal!important;
 clip:auto!important;clip-path:none!important;transform:none!important;
 background:#2e2e2e!important;color:#fff!important;border:2px solid #fff!important;
}
/* Short, consistent price invitation on existing service pages. */
.pm-growth-promo{background:#e9efe6;color:#2e2e2e;padding:48px clamp(18px,5vw,70px)}
.pm-growth-promo__inner{max-width:1120px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:32px}
.pm-growth-promo__inner>div{max-width:760px}
.pm-growth-promo__inner p{font:700 12px/1.4 "Space Grotesk",sans-serif;letter-spacing:.13em;text-transform:uppercase;color:#536a59;margin:0 0 13px}
.pm-growth-promo__inner h2{font:600 clamp(1.8rem,3vw,2.7rem)/1.15 "Playfair Display",Georgia,serif;margin:0 0 12px;color:#2d4a35}
.pm-growth-promo__body{font:400 18px/1.5 "Alegreya Sans",Arial,sans-serif}
.pm-growth-promo__inner>a{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;border-radius:5px;background:#31523a;color:#fff!important;padding:13px 19px;font:650 14px/1.3 "Space Grotesk",sans-serif;text-decoration:none}
.pm-growth-promo__inner>a:hover{background:#223d2a}
@media(max-width:740px){.pm-growth-promo__inner{align-items:flex-start;flex-direction:column;gap:24px}.pm-growth-promo{padding:34px 19px}}


/* One shared four-dropdown navigation. Pricing is a clear, separate first
   action in every menu, rather than a second column or buried service link. */
header .breakdance-dropdown-links > .prunus-pricing-dropdown-item {
  display:block!important;
  margin:10px 10px 13px!important;
  padding:0!important;
  background:#fff!important;
  border:1px solid #2e2e2e!important;
  border-radius:6px!important;
  box-shadow:0 2px 7px rgba(32,46,33,.08);
  overflow:hidden;
}
header .breakdance-dropdown-links > .prunus-pricing-dropdown-item .breakdance-dropdown-link {
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  min-height:46px!important;
  padding:11px 17px!important;
  margin:0!important;
  background:#fff!important;
  color:#1d1d1d!important;
  text-decoration:none!important;
  font:700 14px/1.4 "Space Grotesk",Arial,sans-serif!important;
}
header .prunus-pricing-dropdown-item .breakdance-dropdown-link__label,
header .prunus-pricing-dropdown-item .breakdance-dropdown-link__text {
  color:#1d1d1d!important;
  font-weight:700!important;
}
header .prunus-pricing-dropdown-item .breakdance-dropdown-link:hover,
header .prunus-pricing-dropdown-item .breakdance-dropdown-link:focus-visible {
  background:#f2f6f0!important;
  color:#111!important;
}
header .prunus-pricing-dropdown-item .breakdance-dropdown-link:focus-visible {
  outline:3px solid #2e2e2e!important;
  outline-offset:-4px!important;
}
/* Four consistent one-column menus: no exported two-column variants. */
header .breakdance-dropdown-columns {
  grid-template-columns:minmax(0,1fr)!important;
}
header .breakdance-dropdown-columns > .breakdance-dropdown-column {
  width:100%!important;max-width:100%!important;min-width:0!important;
}
/* An understated, clearly visible homepage pricing invitation below hero. */
.pm-home-pricing {
  background:#e9efe6;
  color:#2e2e2e;
  border-top:1px solid #d8e1d3;
  border-bottom:1px solid #d8e1d3;
  padding:23px clamp(18px,4.2vw,70px);
}
.pm-home-pricing__inner {
  width:min(100%,1150px);margin:0 auto;display:flex;
  align-items:center;justify-content:space-between;gap:22px;
}
.pm-home-pricing__eyebrow {
  font:700 11px/1.4 "Space Grotesk",Arial,sans-serif!important;
  letter-spacing:.13em;text-transform:uppercase;color:#55725c;
  margin:0 0 5px!important;
}
.pm-home-pricing__headline {
  font:600 clamp(19px,2.5vw,26px)/1.25 "Playfair Display",Georgia,serif!important;
  color:#2e2e2e;margin:0 0 5px!important;
}
.pm-home-pricing__detail {
  font:400 15px/1.5 "Space Grotesk",Arial,sans-serif!important;
  color:#485b4d;margin:0!important;
}
.pm-home-pricing__inner>a {
  flex-shrink:0;display:inline-flex;align-items:center;gap:9px;
  background:#fff!important;border:1px solid #34543c!important;
  color:#182e1f!important;text-decoration:none!important;
  padding:12px 17px;border-radius:5px;
  font:700 13px/1.35 "Space Grotesk",Arial,sans-serif;
}
.pm-home-pricing__inner>a:hover {background:#f8fbf5!important}
.pm-home-pricing__inner>a:focus-visible {outline:3px solid #2e2e2e!important;outline-offset:3px}
@media (max-width:740px) {
  .pm-home-pricing__inner{align-items:flex-start;flex-direction:column;gap:14px}
  .pm-home-pricing__inner>a{min-height:44px}
  header .breakdance-dropdown-links > .prunus-pricing-dropdown-item {margin:8px 4px 12px!important}
}
