.elementor-kit-8{--e-global-color-primary:#121212;--e-global-color-secondary:#5A5D5F;--e-global-color-text:#121212;--e-global-color-accent:#000000;--e-global-color-bgalt:#F1F1EF;--e-global-color-surface:#FFFFFF;--e-global-color-line:#E0E0DF;--e-global-color-linestrong:#BDBDBB;--e-global-color-deep:#121212;--e-global-color-deep2:#000000;--e-global-color-ondeepink:#FFFFFF;--e-global-color-ondeepsoft:#CFCFCC;--e-global-color-ondeeplink:#DBDBD8;--e-global-color-ondeepfaint:#8F8F8C;--e-global-typography-primary-font-family:"Archivo";--e-global-typography-primary-font-weight:700;--e-global-typography-primary-letter-spacing:-0.01em;--e-global-typography-secondary-font-family:"Archivo";--e-global-typography-secondary-font-weight:800;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"IBM Plex Mono";--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:0.14em;--e-global-typography-eyebrow-font-family:"IBM Plex Mono";--e-global-typography-eyebrow-font-size:12.5px;--e-global-typography-eyebrow-font-weight:700;--e-global-typography-eyebrow-text-transform:uppercase;--e-global-typography-eyebrow-letter-spacing:0.14em;--e-global-typography-quote-font-family:"Archivo";--e-global-typography-quote-font-weight:400;--e-global-typography-quote-font-style:italic;color:#121212;font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:1.55em;}.elementor-kit-8 e-page-transition{background-color:#FFBC7D;}.elementor-kit-8 a{color:#121212;}.elementor-kit-8 a:hover{color:#000000;}.elementor-kit-8 h1{color:#121212;font-family:"Archivo", Sans-serif;font-size:64px;font-weight:700;line-height:1.03em;letter-spacing:-0.01em;}.elementor-kit-8 h2{color:#121212;font-family:"Archivo", Sans-serif;font-size:42px;font-weight:700;line-height:1.1em;letter-spacing:-0.01em;}.elementor-kit-8 h3{color:#121212;font-family:"Archivo", Sans-serif;font-size:19px;font-weight:700;line-height:1.3em;letter-spacing:-0.01em;}.elementor-kit-8 h4{color:#121212;font-family:"Archivo", Sans-serif;font-size:17px;font-weight:700;line-height:1.3em;letter-spacing:-0.01em;}.elementor-kit-8 h5{color:#121212;font-family:"Archivo", Sans-serif;font-size:15px;font-weight:700;line-height:1.3em;letter-spacing:-0.01em;}.elementor-kit-8 h6{color:#121212;font-family:"Archivo", Sans-serif;font-size:13px;font-weight:700;line-height:1.3em;letter-spacing:-0.01em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-8 h1{font-size:44px;}.elementor-kit-8 h2{font-size:34px;}.elementor-kit-8 h3{font-size:18px;}.elementor-kit-8 h4{font-size:16px;}.elementor-kit-8 h5{font-size:15px;}.elementor-kit-8 h6{font-size:13px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-8 h1{font-size:38px;}.elementor-kit-8 h2{font-size:28px;}.elementor-kit-8 h3{font-size:18px;}.elementor-kit-8 h4{font-size:16px;}.elementor-kit-8 h5{font-size:15px;}.elementor-kit-8 h6{font-size:13px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ===== Octopus Movers — design-system layer =====
   Only what Elementor's native controls cannot express:
   pseudo-elements, clip-path, object-fit/aspect-ratio, sticky glass, hover transforms.
   Everything else (color, spacing, type, borders) stays editable in the Elementor panel. */

:root{
  --om-ink:#121212; --om-ink-soft:#5A5D5F; --om-bg:#FFFFFF; --om-bg-rgb:255,255,255;
  --om-bg-alt:#F1F1EF; --om-line:rgba(0,0,0,.12); --om-line-strong:rgba(0,0,0,.26);
  --om-accent:#121212; --om-accent-dark:#000000; --om-accent-ink:#FFFFFF;
  --om-on-deep-soft:#CFCFCC; --om-on-deep-line:rgba(255,255,255,.14);
  --om-on-deep-line-strong:rgba(255,255,255,.4); --om-on-deep-wash:rgba(255,255,255,.08);
  --om-shadow-card:0 1px 3px rgba(0,0,0,.07), 0 10px 26px -14px rgba(0,0,0,.24);
  --om-r-sm:4px; --om-r-md:9px;
}
body{overflow-x:clip}

/* ---- eyebrow: leading rule ---- */
.om-eyebrow .elementor-heading-title::before{
  content:"";display:inline-block;width:22px;height:2px;background:currentColor;
  margin-right:.6em;vertical-align:middle;
}

/* ---- buttons ---- */
.om-btn .elementor-button{
  display:inline-flex;align-items:center;gap:10px;white-space:nowrap;
  transition:background .2s ease,border-color .2s ease,transform .18s ease,color .2s ease;
}
.om-btn .elementor-button:hover{transform:translateY(-2px)}
.om-btn .elementor-button:active{transform:translateY(0)}
/* signature shipping-tag notch */
.om-btn-tag .elementor-button{
  clip-path:polygon(10px 0,100% 0,100% 100%,10px 100%,0 50%);
  padding-left:26px;
}
.om-btn-ghost .elementor-button{padding:0;background:transparent}
.om-btn-ghost .elementor-button:hover{transform:none}
.om-btn-ghost .elementor-button svg{transition:transform .15s ease}
.om-btn-ghost .elementor-button:hover svg{transform:translateX(3px)}

/* ---- cards: hover lift ---- */
.om-card{transition:transform .22s ease,box-shadow .22s ease,border-color .18s ease}
.om-card:hover{transform:translateY(-4px);box-shadow:var(--om-shadow-card);border-color:var(--om-line-strong)}
.om-tier-popular{transform:translateY(-8px)}
.om-tier-popular:hover{transform:translateY(-12px)}
@media(max-width:900px){.om-tier-popular{transform:none}}

/* ---- media: cover-fill inside fixed ratios ---- */
.om-ratio img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}
.om-r-4-5   img{aspect-ratio:4/5}
.om-r-4-84  img{aspect-ratio:4/8.4}
.om-r-1-1   img{aspect-ratio:1/1}
.om-r-2-1   img{aspect-ratio:2/1}
.om-r-5-4   img{aspect-ratio:5/4}
.om-r-16-10 img{aspect-ratio:16/10}
.om-r-4-18  img{aspect-ratio:4/1.8}
.om-zoom img{transition:transform .3s ease}
.om-zoom:hover img{transform:scale(1.015)}

/* ---- photo hero: grayscale bed + directional wash ---- */
/* luminosity blend against a grey ground desaturates the background image */
.om-photo-hero{position:relative;overflow:hidden;background-blend-mode:luminosity;background-color:#9a9a9a}
.om-photo-hero > .e-con-inner{position:relative;z-index:1}
.om-hero-bg{position:absolute;inset:0;z-index:0;pointer-events:none}
.om-hero-bg img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.om-hero-bg::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(100deg,rgba(var(--om-bg-rgb),.97) 0%,rgba(var(--om-bg-rgb),.93) 34%,
             rgba(var(--om-bg-rgb),.55) 64%,rgba(var(--om-bg-rgb),.22) 100%);
}
.om-photo-hero > .e-con-inner,.om-photo-hero > .e-con{position:relative;z-index:1}

/* ---- vertical rules between borderless columns ---- */
.om-col-rules > .e-con:not(:first-child),
.om-col-rules > .elementor-element:not(:first-child){border-left:1px solid var(--om-line)}
@media(max-width:900px){
  .om-col-rules > .e-con:not(:first-child),
  .om-col-rules > .elementor-element:not(:first-child){
    border-left:0;border-top:1px solid var(--om-line);
  }
}
/* ribbon cells */
.om-ribbon-row > .e-con:not(:first-child){border-left:1px solid var(--om-on-deep-line)}
@media(max-width:900px){
  .om-ribbon-row > .e-con:nth-child(odd){border-left:0}
  .om-ribbon-row > .e-con:nth-child(-n+2){border-bottom:1px solid var(--om-on-deep-line)}
}
@media(max-width:560px){
  .om-ribbon-row > .e-con{border-left:0 !important;border-top:1px solid var(--om-on-deep-line)}
  .om-ribbon-row > .e-con:first-child{border-top:0}
  .om-ribbon-row > .e-con:nth-child(-n+2){border-bottom:0}
}

/* ---- dashed tear edge (packing-tape motif) ---- */
.om-tear{border-bottom:1px dashed var(--om-line-strong)}
.om-tear-top{border-top:1px dashed var(--om-line-strong)}
.om-dashed{border:1px dashed var(--om-line-strong)}

/* ---- glass surfaces ---- */
.om-glass{
  background:rgba(var(--om-bg-rgb),.70);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
  backdrop-filter:blur(18px) saturate(160%);
}

/* ---- sticky glass header ---- */
.om-header{
  position:sticky;top:0;z-index:100;
  background:rgba(var(--om-bg-rgb),0);
  -webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px);
  border-bottom:1px solid transparent;
  transition:background .45s cubic-bezier(.22,.61,.36,1),backdrop-filter .45s cubic-bezier(.22,.61,.36,1),
             border-color .45s ease,box-shadow .45s ease;
}
.om-header.om-glassed{
  background:rgba(var(--om-bg-rgb),.66);
  -webkit-backdrop-filter:blur(18px) saturate(160%);backdrop-filter:blur(18px) saturate(160%);
  border-bottom-color:var(--om-line);
  box-shadow:0 8px 30px -18px rgba(0,0,0,.35);
}
.om-brand-word{font-family:Archivo,sans-serif;font-weight:900;font-size:19px;line-height:1;letter-spacing:-.01em}
.om-brand-word small{
  display:block;font-family:'IBM Plex Mono',monospace;font-weight:400;font-size:9.5px;
  letter-spacing:.14em;color:var(--om-ink-soft);margin-top:4px;text-transform:uppercase;
}
.om-brand img{border-radius:50%;object-fit:cover}

/* ---- callout: accent bar quote ---- */
.om-callout{border-left:3px solid var(--om-accent);padding-left:18px}
.om-callout p{font-family:Archivo,sans-serif;font-style:italic;line-height:1.5;margin:0}

/* ---- compare table ---- */
.om-compare table{width:100%;border-collapse:collapse;min-width:640px;background:#fff}
.om-compare th,.om-compare td{
  padding:16px 20px;text-align:left;border-bottom:1px solid var(--om-line);
  font-size:14.5px;color:var(--om-ink-soft);vertical-align:top;
}
.om-compare th{background:var(--om-bg-alt);font-family:Archivo,sans-serif;font-weight:700;color:var(--om-ink);font-size:15px}
.om-compare td:first-child,.om-compare th:first-child{
  font-family:'IBM Plex Mono',monospace;font-size:12px;letter-spacing:.04em;
  text-transform:uppercase;white-space:nowrap;
}
.om-compare tbody tr:last-child td,.om-compare tbody tr:last-child th{border-bottom:none}
.om-scroll-x{overflow-x:auto}

/* ---- FAQ accordion ---- */
.om-faq .e-n-accordion-item{border-bottom:1px solid var(--om-line)}
.om-faq .e-n-accordion-item:first-child{border-top:1px solid var(--om-line)}
.om-faq summary{padding:20px 4px}
.om-faq .om-faq-a p{color:var(--om-ink-soft);font-size:15px;max-width:640px}

/* ---- sticky sidebars ---- */
.om-sticky{position:sticky;top:100px}
@media(max-width:900px){.om-sticky{position:static}}

/* ---- mobile sticky CTA bar ---- */
.om-mobile-cta{display:none !important}
@media(max-width:640px){
  .om-mobile-cta{
    display:flex !important;position:fixed;left:0;right:0;bottom:0;z-index:60;width:100%;
    border-top:1px solid var(--om-line-strong);box-shadow:0 -6px 20px rgba(0,0,0,.12);
    padding-bottom:env(safe-area-inset-bottom,0);
  }
  .om-mobile-cta .elementor-button{width:100%;justify-content:center;border-radius:0}
  body{padding-bottom:56px}
}

/* ---- reveal on scroll ---- */
.om-reveal{opacity:0;transform:translateY(26px) scale(.985);filter:blur(10px);
  transition:opacity .8s cubic-bezier(.22,.61,.36,1),transform .8s cubic-bezier(.22,.61,.36,1),filter .8s cubic-bezier(.22,.61,.36,1)}
.om-reveal.om-in{opacity:1;transform:none;filter:none}
@media (prefers-reduced-motion:reduce){
  .om-reveal{opacity:1;transform:none;filter:none;transition:none}
  .om-header{transition:none}
}

/* ---- forms (Elementor Pro Form styled as a shipping label) ---- */
.om-quote-form .elementor-field-group > label{
  font-size:12.5px;font-weight:700;margin-bottom:6px;letter-spacing:.02em;color:var(--om-ink);
}
.om-quote-form .elementor-field-textual{
  padding:11px 13px;border:1.5px solid var(--om-line-strong);border-radius:var(--om-r-sm);
  background:var(--om-bg);color:var(--om-ink);font-size:14.5px;
}
.om-quote-form .elementor-field-textual:focus{border-color:var(--om-accent);outline:none}
.om-quote-form .elementor-button{
  width:100%;justify-content:center;
  clip-path:polygon(10px 0,100% 0,100% 100%,10px 100%,0 50%);padding-left:26px;
}

/* ---- misc ---- */
.om-chip{border-radius:100px}
.om-hidden-desktop{display:none}
@media(max-width:900px){.om-hidden-desktop{display:block}}


/* ---- header: keep the nav on one line, give it room ---- */
.om-header .e-n-menu-heading{flex-wrap:nowrap}
.om-header .e-n-menu{width:auto}
.om-header .om-header-phone .elementor-button{background:transparent;padding:0}
.om-header .om-brand-row{text-decoration:none}
@media(max-width:900px){
  .om-header .om-brand-word{font-size:17px}
}

/* ---- back to top ---- */
.om-back-to-top{
  position:fixed !important;right:22px;bottom:22px;z-index:90;width:auto !important;
}
.om-back-to-top .elementor-button{
  width:46px;height:46px;padding:0 !important;border-radius:50% !important;
  display:flex;align-items:center;justify-content:center;
  box-shadow:0 10px 26px -10px rgba(0,0,0,.4);clip-path:none !important;
}
.om-back-to-top .elementor-button-text{display:none}
@media(max-width:640px){.om-back-to-top{bottom:72px}}

/* ---- footer link lists: no bullet icons ---- */
.om-footer-links .elementor-icon-list-icon{display:none}
.om-footer-links .elementor-icon-list-text{padding-inline-start:0 !important}

/* ---- mega panel links ---- */
.om-header .elementor-icon-list-item > a{padding:9px 8px;border-radius:4px}
.om-header .elementor-icon-list-item > a:hover{background:var(--om-bg-alt)}

/* ---- tentacle: signature hand-drawn underline ---- */
.om-tentacle{
  height:14px !important;width:120px;margin-top:10px;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 20' fill='none' stroke='%23121212' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M2 10c14-12 24 12 38 2s24-14 38-2 24 12 38 2 24-14 38-2 24 12 42 0'/%3E%3C/svg%3E") no-repeat left center/contain;
}
.om-tentacle-light{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 20' fill='none' stroke='%23ffffff' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M2 10c14-12 24 12 38 2s24-14 38-2 24 12 38 2 24-14 38-2 24 12 42 0'/%3E%3C/svg%3E");
}
.om-tentacle-center{background-position:center center;margin-inline:auto}

/* ---- pricing tier badge ---- */
.om-tier{position:relative}
.om-tier-badge{
  position:absolute;top:-13px;left:26px;background:#121212;color:#fff;
  padding:5px 12px;border-radius:100px;margin:0 !important;
}
.om-tier .elementor-icon-list-icon{align-self:flex-start;margin-top:3px}

/* ---- media wrappers keep rounded corners ---- */
.om-media{overflow:hidden}
.om-media img{border-radius:0}

/* ---- icon grid card hover ---- */
.om-icon-card:hover{border-color:#121212 !important;transform:translateY(-2px)}

/* ---- breadcrumb ---- */
.om-breadcrumb a:hover{color:#121212;text-decoration:underline !important}

/* ---- Elementor Pro Form: shipping-label styling ---- */
.om-quote-form .elementor-form-fields-wrapper{margin-inline:-6px}
.om-quote-form .elementor-field-group{padding-inline:6px;margin-bottom:14px}
.om-quote-form .elementor-field-group.elementor-field-type-submit{margin-top:6px}
.om-quote-form select.elementor-field-textual{
  appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%235A5D5F' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:16px;
  padding-right:36px;
}
.om-form-tag{
  display:flex;justify-content:space-between;gap:12px;
  padding-bottom:14px;margin-bottom:18px;
  border-bottom:1px dashed var(--om-line-strong);
}
.om-form-tag span{
  font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.12em;
  text-transform:uppercase;color:var(--om-ink-soft);
}

/* ---- before / after pair ---- */
.om-ba-before{border-right:1px dashed var(--om-line-strong)}
.om-compare table td.rec,.om-compare table th.rec{background:var(--om-bg-alt)}

/* ---- FAQ filter + jump list ---- */
.om-faq-filter-btn .elementor-button{transition:background .15s ease,color .15s ease,border-color .15s ease}
.om-faq-filter-btn .elementor-button:hover{border-color:#000;transform:none}
.om-faq-row[hidden]{display:none !important}
.om-cat-heading[data-empty="true"]{display:none}
.om-cat-heading{scroll-margin-top:100px}
.om-jump-list .elementor-icon-list-item{
  border-bottom:1px solid var(--om-line);padding:11px 4px;
  display:flex;justify-content:space-between;
}
.om-jump-list .elementor-icon-list-item > a{
  display:flex;align-items:center;justify-content:space-between;width:100%;
  flex-direction:row-reverse;
}
.om-jump-list .elementor-icon-list-text{padding-inline-start:0 !important}
/* single-item FAQ rows read as one continuous list */
.om-faq-row + .om-faq-row .om-faq .e-n-accordion-item:first-child{border-top:0}

/* ---- newsletter row ---- */
.om-newsletter .elementor-field-group{margin-bottom:0}

/* ---- header at small widths: phone collapses to its icon (matches the source design) ---- */
@media (max-width:900px){
  .om-header .om-header-phone .elementor-button-text{display:none}
  .om-header .om-header-phone .elementor-button-icon{margin:0 !important}
  .om-header .e-con-inner{gap:12px}
}
@media (max-width:520px){
  .om-header .om-brand-word small{display:none}
  .om-header .om-brand-word{font-size:15px}
  .om-header .om-brand img{width:36px}
  .om-header .om-btn-primary .elementor-button{padding:10px 14px 10px 20px;font-size:13.5px}
  .om-header .e-con-inner{gap:8px;padding-inline:14px}
}
/* long words never force a horizontal scrollbar */
.e-con, .elementor-widget-text-editor, .elementor-widget-heading{min-width:0}

/* ---- FAQ accordion: hairline list, no card chrome ---- */
.om-faq .e-n-accordion-item,
.om-faq details.e-n-accordion-item{
  background:transparent !important;border-radius:0 !important;
  border:0 !important;border-bottom:1px solid var(--om-line) !important;
}
.om-faq .e-n-accordion-item:first-child{border-top:1px solid var(--om-line) !important}
.om-faq summary,
.om-faq .e-n-accordion-item-title{
  background:transparent !important;padding:20px 4px !important;
  border-radius:0 !important;
}
.om-faq .e-n-accordion-item-title-text{font-weight:700}
.om-faq .e-n-accordion-item-title-icon{color:#000}
/* consecutive single-item rows read as one continuous list */
.om-faq-row + .om-faq-row .om-faq .e-n-accordion-item:first-child{border-top:0 !important}
/* chevron sits at the far right of the row */
.om-faq summary.e-n-accordion-item-title{
  display:flex !important;justify-content:space-between !important;
  align-items:center;gap:16px;width:100%;
}
.om-faq .e-n-accordion-item-title-header{flex:1 1 auto;min-width:0}
.om-faq .e-n-accordion-item-title-icon{flex:0 0 auto;margin-inline-start:auto}/* End custom CSS */