/*
 * CasillerosUS visual compatibility layer.
 * Loaded after Elementor kit/post CSS to prevent global-site settings from
 * replacing the theme's typography, spacing, colors and component geometry.
 */
body.wp-theme-casilleros-us-premium{
  background:#fff!important;
  color:var(--cs-ink)!important;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
body.wp-theme-casilleros-us-premium .elementor-location-header,
body.wp-theme-casilleros-us-premium .elementor-location-footer{display:none!important}
body.wp-theme-casilleros-us-premium .cs-header,
body.wp-theme-casilleros-us-premium .cs-footer{font-family:inherit!important}
body.wp-theme-casilleros-us-premium .cs-logo{
  display:block!important;
  width:218px!important;
  max-width:218px!important;
  height:auto!important;
  flex:0 0 218px!important;
  overflow:visible!important;
}
body.wp-theme-casilleros-us-premium .cs-logo .custom-logo-link{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  margin:0!important;
}
body.wp-theme-casilleros-us-premium .cs-logo>img,
body.wp-theme-casilleros-us-premium .cs-logo .custom-logo{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  height:auto!important;
  max-height:72px!important;
  object-fit:contain!important;
}
body.wp-theme-casilleros-us-premium .cs-site-main{overflow:hidden!important}
body.wp-theme-casilleros-us-premium .cs-site-main .elementor-heading-title,
body.wp-theme-casilleros-us-premium .cs-site-main .elementor-button,
body.wp-theme-casilleros-us-premium .cs-site-main .elementor-widget-text-editor,
body.wp-theme-casilleros-us-premium .cs-site-main .elementor-widget-html{
  font-family:inherit!important;
}
body.wp-theme-casilleros-us-premium .cs-site-main .elementor-button{
  text-shadow:none!important;
  box-shadow:none;
}

/* Elementor container normalization */
body.wp-theme-casilleros-us-premium .cs-e-section.e-con{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
}
body.wp-theme-casilleros-us-premium .cs-e-section>.cs-e-inner.e-con{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
}
body.wp-theme-casilleros-us-premium .cs-e-section>.cs-e-inner.e-con>.e-con-inner{
  width:min(1180px,calc(100% - 48px))!important;
  max-width:1180px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding:0!important;
}
body.wp-theme-casilleros-us-premium .cs-e-inner .cs-e-inner.e-con,
body.wp-theme-casilleros-us-premium .cs-e-actions.e-con,
body.wp-theme-casilleros-us-premium .cs-e-service-cards.e-con{
  padding:0!important;
}
body.wp-theme-casilleros-us-premium .cs-e-inner .cs-e-inner.e-con>.e-con-inner,
body.wp-theme-casilleros-us-premium .cs-e-actions.e-con>.e-con-inner,
body.wp-theme-casilleros-us-premium .cs-e-service-cards.e-con>.e-con-inner{
  padding:0!important;
}

/* Typography and color authority */
body.wp-theme-casilleros-us-premium .cs-e-section .elementor-heading-title{
  color:var(--cs-navy)!important;
  font-family:inherit!important;
  font-weight:780!important;
  line-height:1.08!important;
  letter-spacing:-.045em!important;
  text-transform:none!important;
}
body.wp-theme-casilleros-us-premium .cs-e-section h2.elementor-heading-title{
  font-size:clamp(34px,4vw,52px)!important;
}
body.wp-theme-casilleros-us-premium .cs-e-section p{
  color:var(--cs-muted)!important;
  line-height:1.75!important;
}
body.wp-theme-casilleros-us-premium .cs-e-section .cs-eyebrow{
  color:#52617a!important;
  font-size:11px!important;
  font-weight:850!important;
  line-height:1.4!important;
  letter-spacing:.16em!important;
  margin:0 0 20px!important;
}

/* Hero */
body.wp-theme-casilleros-us-premium .cs-e-hero.e-con{
  min-height:690px!important;
  padding:76px 0!important;
  background:linear-gradient(135deg,#04132f 0%,#071d48 58%,#09336b 100%)!important;
  color:#fff!important;
  overflow:hidden!important;
}
body.wp-theme-casilleros-us-premium .cs-e-hero.e-con:after{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-170px;
  top:-180px;
  border-radius:50%;
  background:rgba(0,166,232,.14);
  pointer-events:none;
}
body.wp-theme-casilleros-us-premium .cs-e-two-col.e-con>.e-con-inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:50px!important;
}
body.wp-theme-casilleros-us-premium .cs-e-hero-copy.e-con{
  width:56%!important;
  padding:0!important;
  z-index:2;
}
body.wp-theme-casilleros-us-premium .cs-e-hero-art.e-con{
  width:44%!important;
  min-height:520px!important;
  padding:0!important;
  z-index:2;
}
body.wp-theme-casilleros-us-premium .cs-e-hero-copy>.e-con-inner,
body.wp-theme-casilleros-us-premium .cs-e-hero-art>.e-con-inner{
  padding:0!important;
}
body.wp-theme-casilleros-us-premium .cs-e-hero .elementor-heading-title{
  color:#fff!important;
  font-size:clamp(46px,5.4vw,76px)!important;
  line-height:1.02!important;
  letter-spacing:-.052em!important;
}
body.wp-theme-casilleros-us-premium .cs-e-hero .elementor-heading-title span{color:var(--cs-cyan)!important}
body.wp-theme-casilleros-us-premium .cs-e-hero .cs-eyebrow{color:#a8ddf7!important}
body.wp-theme-casilleros-us-premium .cs-e-hero-copy>.e-con-inner>.elementor-widget-text-editor:nth-of-type(3) p,
body.wp-theme-casilleros-us-premium .cs-e-hero-copy>.e-con-inner>.elementor-element:nth-child(3) p{
  color:#c4d1e7!important;
  font-size:18px!important;
  max-width:650px!important;
}
body.wp-theme-casilleros-us-premium .cs-e-actions.e-con{
  width:auto!important;
  margin-top:20px!important;
}
body.wp-theme-casilleros-us-premium .cs-e-actions.e-con>.e-con-inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  gap:12px!important;
}
body.wp-theme-casilleros-us-premium .cs-e-actions .elementor-button,
body.wp-theme-casilleros-us-premium .cs-e-final .elementor-button,
body.wp-theme-casilleros-us-premium .cs-e-policy .elementor-button,
body.wp-theme-casilleros-us-premium .cs-e-responsibility .elementor-button{
  border-radius:999px!important;
  padding:16px 23px!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1!important;
}
body.wp-theme-casilleros-us-premium .cs-e-primary .elementor-button{
  background:linear-gradient(135deg,var(--cs-blue),#1bbdf7)!important;
  color:#031730!important;
  box-shadow:0 12px 28px rgba(0,166,232,.24)!important;
}
body.wp-theme-casilleros-us-premium .cs-e-secondary .elementor-button{
  background:rgba(255,255,255,.05)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.25)!important;
}
body.wp-theme-casilleros-us-premium .cs-e-actions>.elementor-widget-button:first-child .elementor-button,
body.wp-theme-casilleros-us-premium .cs-e-actions>.e-con-inner>.elementor-widget-button:first-child .elementor-button{
  background:linear-gradient(135deg,var(--cs-blue),#1bbdf7)!important;
  color:#031730!important;
  border:0!important;
  box-shadow:0 12px 28px rgba(0,166,232,.24)!important;
}
body.wp-theme-casilleros-us-premium .cs-e-actions>.elementor-widget-button:nth-child(2) .elementor-button,
body.wp-theme-casilleros-us-premium .cs-e-actions>.e-con-inner>.elementor-widget-button:nth-child(2) .elementor-button{
  background:rgba(255,255,255,.05)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.25)!important;
  box-shadow:none!important;
}
body.wp-theme-casilleros-us-premium .cs-assurance{color:#a9bad5!important}

/* Hero logistics graphic */
.cs-hero-visual{position:relative;min-height:520px;display:flex;align-items:center;justify-content:center;isolation:isolate}
.cs-hero-visual img{position:relative;z-index:2;display:block;width:min(560px,100%);height:auto;filter:drop-shadow(0 30px 38px rgba(0,0,0,.35));transform:translate(14px,28px)}
.cs-hero-halo{position:absolute;z-index:0;width:470px;height:470px;border-radius:50%;border:1px solid rgba(66,216,255,.18);box-shadow:inset 0 0 80px rgba(0,166,232,.08)}
.cs-route-line{position:absolute;z-index:1;border:1px dashed rgba(66,216,255,.28);border-radius:50%;pointer-events:none}
.cs-route-line-a{width:560px;height:300px;transform:rotate(-17deg);animation:csOrbitA 16s linear infinite}
.cs-route-line-b{width:410px;height:520px;transform:rotate(45deg);animation:csOrbitB 20s linear infinite reverse}
.cs-floating-card{position:absolute;z-index:4;padding:14px 17px;border:1px solid rgba(255,255,255,.16);background:rgba(5,23,57,.76);backdrop-filter:blur(14px);box-shadow:0 16px 44px rgba(0,0,0,.22);border-radius:16px;color:#fff}
.cs-floating-card small{display:block;color:#7690b9;font-size:9px;font-weight:800;letter-spacing:.14em;margin-bottom:4px}
.cs-floating-card strong{display:block;color:#fff;font-size:13px;line-height:1.25}
.cs-floating-card-top{right:0;top:82px;padding-left:34px}
.cs-floating-card-top i{position:absolute;left:15px;top:20px;width:9px;height:9px;border-radius:50%;background:#3ce2aa;box-shadow:0 0 0 5px rgba(60,226,170,.12)}
.cs-floating-card-bottom{left:-6px;bottom:62px;display:flex;align-items:center;gap:12px}
.cs-floating-card-bottom b{width:38px;height:38px;border-radius:10px;background:rgba(0,166,232,.16);display:grid;place-items:center;color:var(--cs-cyan);font-size:20px}
@keyframes csOrbitA{to{transform:rotate(343deg)}}
@keyframes csOrbitB{to{transform:rotate(405deg)}}

/* Section backgrounds and Elementor spacing */
body.wp-theme-casilleros-us-premium .cs-e-how.e-con,
body.wp-theme-casilleros-us-premium .cs-e-pricing.e-con,
body.wp-theme-casilleros-us-premium .cs-e-faq.e-con,
body.wp-theme-casilleros-us-premium .cs-e-policy-intro.e-con,
body.wp-theme-casilleros-us-premium .cs-e-policy.e-con,
body.wp-theme-casilleros-us-premium .cs-e-policy-restricted.e-con,
body.wp-theme-casilleros-us-premium .cs-e-responsibility.e-con{padding:110px 0!important}
body.wp-theme-casilleros-us-premium .cs-e-trust.e-con{padding:0!important;background:#fff!important}
body.wp-theme-casilleros-us-premium .cs-e-services.e-con{
  padding:110px 0!important;
  background:var(--cs-navy)!important;
  color:#fff!important;
}
body.wp-theme-casilleros-us-premium .cs-e-services .elementor-heading-title{color:#fff!important}
body.wp-theme-casilleros-us-premium .cs-e-pricing.e-con{background:var(--cs-mist)!important}
body.wp-theme-casilleros-us-premium .cs-e-coverage.e-con{
  padding:110px 0!important;
  background:linear-gradient(145deg,#06204f,#061633)!important;
  color:#fff!important;
}
body.wp-theme-casilleros-us-premium .cs-e-coverage .elementor-heading-title{color:#fff!important}
body.wp-theme-casilleros-us-premium .cs-e-coverage p{color:#a7b7d1!important}
body.wp-theme-casilleros-us-premium .cs-e-final.e-con{
  padding:70px 0!important;
  background:linear-gradient(120deg,var(--cs-blue),#0389db)!important;
}
body.wp-theme-casilleros-us-premium .cs-e-final .elementor-heading-title{color:#fff!important}
body.wp-theme-casilleros-us-premium .cs-e-final .elementor-button{background:#fff!important;color:var(--cs-navy)!important}

/* Service cards: Elementor containers place layout on .e-con-inner */
body.wp-theme-casilleros-us-premium .cs-e-service-cards.e-con{width:100%!important;margin-top:48px!important}
body.wp-theme-casilleros-us-premium .cs-e-service-cards.e-con>.e-con-inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:stretch!important;
  gap:24px!important;
}
body.wp-theme-casilleros-us-premium .cs-e-service-card.e-con{
  width:calc(50% - 12px)!important;
  padding:0!important;
  background:#fff!important;
  border:0!important;
  border-radius:24px!important;
  overflow:hidden!important;
  box-shadow:0 24px 70px rgba(0,0,0,.18)!important;
}
body.wp-theme-casilleros-us-premium .cs-e-service-card.e-con>.e-con-inner{padding:0!important}
body.wp-theme-casilleros-us-premium .cs-e-service-card .elementor-heading-title{color:var(--cs-navy)!important}
body.wp-theme-casilleros-us-premium .cs-e-service-card li{color:#34425a!important;font-family:inherit!important}
body.wp-theme-casilleros-us-premium .cs-e-service-card .elementor-button{background:var(--cs-navy)!important;color:#fff!important;border-radius:999px!important}
body.wp-theme-casilleros-us-premium .cs-price-grid p{font-size:12px!important;line-height:1.6!important}
body.wp-theme-casilleros-us-premium .cs-e-final-inner.e-con>.e-con-inner{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:40px!important;
}

/* Policy pages */
body.wp-theme-casilleros-us-premium .cs-e-page-hero.e-con{
  padding:96px 0!important;
  background:linear-gradient(135deg,#04132f,#0a2d67)!important;
  color:#fff!important;
  overflow:hidden!important;
}
body.wp-theme-casilleros-us-premium .cs-e-page-hero .elementor-heading-title{color:#fff!important;font-size:clamp(42px,5vw,68px)!important}
body.wp-theme-casilleros-us-premium .cs-e-page-hero p{color:#bccbe1!important}
body.wp-theme-casilleros-us-premium .cs-e-policy-restricted.e-con{background:var(--cs-mist)!important}
body.wp-theme-casilleros-us-premium .cs-e-procedure.e-con{padding:110px 0!important;background:var(--cs-navy)!important;color:#fff!important}
body.wp-theme-casilleros-us-premium .cs-e-procedure .elementor-heading-title{color:#fff!important}
body.wp-theme-casilleros-us-premium .cs-e-responsibility .elementor-button{background:var(--cs-navy)!important;color:#fff!important}

/* Scroll motion is progressive enhancement: content remains visible if JS fails. */
.cs-motion-target{opacity:0;transform:translateY(22px);transition:opacity .72s cubic-bezier(.2,.75,.25,1),transform .72s cubic-bezier(.2,.75,.25,1);transition-delay:var(--cs-delay,0ms)}
.cs-motion-target.cs-motion-left{transform:translateX(-24px)}
.cs-motion-target.cs-motion-right{transform:translateX(24px)}
.cs-motion-target.is-visible{opacity:1;transform:none}

@media(max-width:900px){
  body.wp-theme-casilleros-us-premium .cs-e-two-col.e-con>.e-con-inner,
  body.wp-theme-casilleros-us-premium .cs-e-service-cards.e-con>.e-con-inner{flex-direction:column!important}
  body.wp-theme-casilleros-us-premium .cs-e-hero-copy.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-hero-art.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-service-card.e-con{width:100%!important}
  body.wp-theme-casilleros-us-premium .cs-e-final-inner.e-con>.e-con-inner{flex-direction:column!important;align-items:flex-start!important}
}
@media(max-width:600px){
  body.wp-theme-casilleros-us-premium .cs-e-section>.cs-e-inner.e-con>.e-con-inner{width:min(100% - 32px,1180px)!important}
  body.wp-theme-casilleros-us-premium .cs-e-hero.e-con{min-height:auto!important;padding:62px 0 45px!important}
  body.wp-theme-casilleros-us-premium .cs-e-hero .elementor-heading-title{font-size:46px!important}
  body.wp-theme-casilleros-us-premium .cs-e-actions.e-con>.e-con-inner{flex-direction:column!important;align-items:stretch!important}
  body.wp-theme-casilleros-us-premium .cs-e-actions .elementor-element,
  body.wp-theme-casilleros-us-premium .cs-e-actions .elementor-button{width:100%!important}
  body.wp-theme-casilleros-us-premium .cs-e-hero-art.e-con,.cs-hero-visual{min-height:350px!important}
  .cs-hero-visual img{width:360px;transform:translate(0,18px)}
  .cs-hero-halo{width:330px;height:330px}
  .cs-route-line-a{width:380px}.cs-route-line-b{width:250px;height:350px}
  .cs-floating-card-top{right:-4px;top:42px}.cs-floating-card-bottom{left:-2px;bottom:24px}
  body.wp-theme-casilleros-us-premium .cs-e-how.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-pricing.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-faq.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-policy-intro.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-policy.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-policy-restricted.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-responsibility.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-services.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-coverage.e-con,
  body.wp-theme-casilleros-us-premium .cs-e-procedure.e-con{padding:78px 0!important}
}
@media(prefers-reduced-motion:reduce){
  .cs-route-line{animation:none!important}
  .cs-motion-target{opacity:1!important;transform:none!important;transition:none!important}
}
