/* =====================================================================
   LAUNDER ALL — REFINEMENT LAYER  (templates/innovate/css/refine.css — loaded via Template Options > Custom Code > Before </head>)
   Keeps the existing layout, logo and content. Refines: palette (logo-derived),
   typography (one family), button system, spacing rhythm, cards, reviews, footer.
   Version: 2026-09-03-refine-v1
   ===================================================================== */

/* ---------- 1. Palette — UNCHANGED. Existing brand colours are kept exactly:
   navy #12344A · aqua #18A8D1 · coral #ED6F91 (defined in the :root block above).
   Only helper tokens are added here. ---------- */
:root{
  --la-coral-dark:#D9577B;    /* already used by existing hover rules */
  --la-sun:#F2B63C;           /* review stars only */
  --la-shadow-sm:0 6px 18px rgba(18,52,74,.08);
  --la-radius:18px;
  --la-pill:999px;
  --la-font:"Rubik",Arial,sans-serif;
  --la-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
}

/* ---------- 2. Typography — one family, one scale ---------- */
body{font-family:var(--la-font) !important;color:var(--la-ink);line-height:1.7;}
h1,h2,h3,h4,h5,h6,
.sppb-addon-title,.sppb-title-heading,.sppb-blocknumber-title,
.sppb-sp-slider-title,#sp-bottom h3,#sp-bottom .sp-module-title{
  font-family:var(--la-font) !important;
  font-weight:800 !important;
  letter-spacing:-.025em !important;
  line-height:1.12 !important;
  color:var(--la-navy);
  text-wrap:balance;
}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-title,
#sppb-sp-slider-1640851039722 h3.sppb-sp-slider-title{
  font-family:var(--la-font) !important;
  font-weight:800 !important;
  letter-spacing:-.035em !important;
}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text,
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text p,
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text li,
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text strong{
  font-family:var(--la-font) !important;
}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text strong{font-weight:600 !important;color:var(--la-navy) !important;}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text li{color:var(--la-ink) !important;font-weight:500;}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text li::marker{color:var(--la-aqua);}
/* section titles: tighter, no forced wide tracking */
.sppb-section-title .sppb-title-heading{letter-spacing:-.02em !important;font-size:clamp(30px,3vw,42px) !important;}
.sppb-section-title .sppb-title-subheading{color:var(--la-muted);font-size:16px;}
/* mono eyebrows (small caps labels used above headings) */
.sppb-addon-text-block .sppb-addon-text > p > strong:first-child:only-child{font-family:var(--la-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--la-coral);}

/* ---------- 3. Links & focus ---------- */
a{color:var(--la-aqua-dark);}
a:hover{color:var(--la-coral-dark);}
a:focus-visible,button:focus-visible,.btn:focus-visible,.sppb-btn:focus-visible{outline:3px solid rgba(237,111,145,.55) !important;outline-offset:3px;}

/* ---------- 4. One button system (pill, two colours) ---------- */
#sp-header .btn,
#sp-main-body .btn,
#sp-main-body .sppb-btn,
#sp-main-body .sppb-sp-slider-button,
#sp-bottom .btn{
  border-radius:var(--la-pill) !important;
  font-family:var(--la-font) !important;
  font-weight:700 !important;
  letter-spacing:.02em !important;
  text-transform:none !important;
  min-height:48px;
  padding:0 26px !important;
  border-width:2px !important;
  box-shadow:none;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease;
}
/* primary = pink (action), secondary = blue, ghost = outline navy */
#sp-header a.btn.btn-primary,
#sppb-sp-slider-1640851039722 .sppb-sp-slider-button,
#section-id-1674865661318 .sppb-btn,
#section-id-1640987334204 .sppb-btn{
  background:var(--la-coral) !important;
  border-color:var(--la-coral) !important;
  color:#fff !important;
  box-shadow:0 10px 24px rgba(237,111,145,.26) !important;
}
#sp-header a.btn.btn-primary:hover,#sp-header a.btn.btn-primary:focus,
#sppb-sp-slider-1640851039722 .sppb-sp-slider-button:hover,
#sppb-sp-slider-1640851039722 .sppb-sp-slider-button:focus,
#section-id-1674865661318 .sppb-btn:hover,
#section-id-1640987334204 .sppb-btn:hover{
  background:var(--la-coral-dark) !important;
  border-color:var(--la-coral-dark) !important;
  color:#fff !important;
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(237,111,145,.34) !important;
}
#section-id-1702488373530 .sppb-btn{
  background:var(--la-aqua) !important;border-color:var(--la-aqua) !important;color:#fff !important;
  box-shadow:0 10px 24px rgba(24,168,209,.24) !important;
}
#section-id-1702488373530 .sppb-btn:hover{background:var(--la-aqua-dark) !important;border-color:var(--la-aqua-dark) !important;transform:translateY(-2px);}
#sp-header .btn-outline-primary{background:transparent !important;border-color:var(--la-line) !important;color:var(--la-navy) !important;}
#sp-header .btn-outline-primary:hover{border-color:var(--la-aqua) !important;color:var(--la-aqua) !important;background:#fff !important;}
#sp-header .btn{min-height:44px;padding:0 22px !important;font-size:14px !important;}
/* slider button text span inherits */
#sppb-sp-slider-1640851039722 .sppb-sp-slider-button .sp-slider-btn-text{color:#fff !important;text-transform:none !important;font-family:var(--la-font) !important;font-size:16px !important;font-weight:700 !important;letter-spacing:.02em;}

/* ---------- 5. Top bar & header ---------- */
#sp-top-bar a:hover,#sp-topbar a:hover,#sp-topbar .social-icons a:hover{color:#FFB3C9 !important;}
#sp-topbar .social-icons a{opacity:.92;}
#sp-header{
  backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  box-shadow:0 1px 0 var(--la-line) !important;
  border-bottom:0 !important;
}
#sp-header.header-sticky{box-shadow:0 8px 28px rgba(18,52,74,.08) !important;}
#sp-header .sp-megamenu-parent > li > a,
#sp-header .sp-megamenu-parent > li > span{
  font-family:var(--la-font) !important;
  font-weight:700 !important;
  font-size:13.5px !important;
  letter-spacing:.06em !important;
  text-transform:uppercase;
  color:var(--la-ink) !important;
  border-radius:var(--la-pill);
  padding:10px 16px !important;
  line-height:1 !important;
  display:inline-flex;align-items:center;
  transition:background .15s ease,color .15s ease;
}
/* keep the menu vertically centred in the 88px header and evenly spaced */
#sp-header .sp-megamenu-parent{margin:0 !important;}
#sp-header .sp-megamenu-parent > li{display:inline-flex !important;align-items:center;height:88px !important;line-height:normal !important;margin:0 3px !important;}
#sp-header .sp-megamenu-parent > li:hover > a{background:var(--la-aqua-pale);color:var(--la-aqua-dark) !important;}
#sp-header .sp-megamenu-parent > li.active > a{color:var(--la-aqua) !important;}
#sp-header .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner{border-radius:14px;box-shadow:var(--la-shadow);border:1px solid var(--la-line);}
#sp-header .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a{border-radius:8px;font-weight:600;}
#sp-header .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a:hover{background:var(--la-aqua-pale);color:var(--la-aqua-dark);}
#sp-header #offcanvas-toggler{border-radius:12px;border:1px solid var(--la-line) !important;color:var(--la-navy) !important;}

/* ---------- 6. Hero ---------- */
#section-id-1640851039722{background:var(--la-soft);}
#sppb-sp-slider-1640851039722 .sp-slider-content-align-left{
  background:rgba(255,255,255,.95) !important;
  border:1px solid rgba(255,255,255,.8) !important;
  border-left:6px solid var(--la-aqua) !important;
  border-radius:var(--la-radius) !important;
  box-shadow:var(--la-shadow) !important;
}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-title{color:var(--la-navy) !important;}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text ul{padding-left:0 !important;list-style:none;}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text li{position:relative;padding-left:30px;margin:7px 0 !important;}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text li::before{
  content:"";position:absolute;left:0;top:.35em;width:20px;height:20px;border-radius:50%;
  background:var(--la-aqua-pale) url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2318A8D1' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'><path d='M5 12l5 5L20 7'/></svg>") center/12px no-repeat;
}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-text li::marker{content:"";}
#sppb-sp-slider-1640851039722 .sppb-sp-slider-button{margin-top:14px !important;}
/* slider dots */
.sppb-sp-slider-bullet, .sp-slider-bullet, #sppb-sp-slider-1640851039722 .sp-dots li, #sppb-sp-slider-1640851039722 .sp-dot{border-radius:var(--la-pill) !important;}

/* ---------- 7. "What we offer" ---------- */
#section-id-1640851039721{padding:88px 0 !important;}
#section-id-1640851039721 .sppb-addon-single-image img{border-radius:var(--la-radius) !important;box-shadow:var(--la-shadow) !important;}
/* photo fills the same height as the 4 tiles beside it */
#section-id-1640851039721 .sppb-row{align-items:stretch;}
#section-id-1640851039721 .sppb-addon-wrapper.addon-root-image,#section-id-1640851039721 .sppb-addon-single-image,
#section-id-1640851039721 .sppb-addon-single-image .sppb-addon-content{height:100% !important;}
#section-id-1640851039721 .sppb-addon-single-image-container{display:grid !important;height:100% !important;}
#section-id-1640851039721 .sppb-addon-single-image-container img{position:static !important;height:100% !important;min-height:100% !important;width:100% !important;align-self:stretch !important;justify-self:stretch !important;object-fit:cover !important;display:block;}
#section-id-1640851039721 .sppb-addon-blocknumber{
  background:var(--la-white) !important;
  border:1px solid var(--la-line) !important;
  border-radius:var(--la-radius) !important;
  box-shadow:none !important;
  padding:26px 26px !important;
}
#section-id-1640851039721 .sppb-addon-blocknumber:hover{transform:translateY(-4px);box-shadow:var(--la-shadow) !important;border-color:rgba(24,168,209,.35) !important;}
#section-id-1640851039721 .sppb-blocknumber-number{
  background:var(--la-aqua-pale) !important;color:var(--la-aqua-dark) !important;
  box-shadow:none !important;border-radius:12px !important;font-family:var(--la-mono) !important;font-weight:600 !important;
}
#section-id-1640851039721 .sppb-blocknumber-title{color:var(--la-navy) !important;font-size:19px !important;margin-bottom:6px;}
#section-id-1640851039721 .sppb-blocknumber-text{color:var(--la-muted);font-size:15px;}

/* ---------- 8. Awards (two blocks read as one system) ---------- */
#section-id-1674865661318,#section-id-1702488373530{padding:64px 0 !important;}
#section-id-1674865661318 .sppb-row-container > .sppb-row,
#section-id-1702488373530 .sppb-row-container > .sppb-row{border-radius:var(--la-radius);overflow:hidden;}
#section-id-1674865661318 h2{color:#fff !important;font-size:clamp(28px,3vw,40px) !important;text-transform:none !important;}
#section-id-1702488373530 h2{color:var(--la-navy) !important;font-size:clamp(28px,3vw,40px) !important;text-transform:none !important;}
#section-id-1702488373530 .sppb-addon-text-block p{color:var(--la-ink);}
#section-id-1674865661318 .sppb-addon-single-image img{border-radius:16px;background:#fff;box-shadow:var(--la-shadow-sm);}
/* Best Vancouver badge: transparent PNG sits directly on the card, no extra white layer */
#section-id-1702488373530 .sppb-addon-single-image img{background:transparent !important;box-shadow:none !important;border-radius:0 !important;}

/* ---------- 9. Reviews ---------- */
#section-id-1640915545234{padding:88px 0 !important;}
#section-id-1640915545234 h3{color:var(--la-navy) !important;}
#section-id-1640915545234 .sppb-testimonial-carousel-item-content{
  background:var(--la-white) !important;
  border:1px solid var(--la-line) !important;
  border-radius:var(--la-radius) !important;
  box-shadow:var(--la-shadow-sm);
  position:relative;
}
#section-id-1640915545234 .sppb-testimonial-carousel-rating i,
#section-id-1640915545234 .sppb-testimonial-carousel-rating span,
#section-id-1640915545234 .sppb-testimonial-carousel-rating .fa{color:var(--la-sun) !important;}
#section-id-1640915545234 .sppb-testimonial-carousel-message{color:var(--la-ink) !important;font-size:15px !important;line-height:1.7;}
#section-id-1640915545234 .sppb-testimonial-carousel-name{color:var(--la-navy) !important;font-weight:700;}
#section-id-1640915545234 .sppb-testimonial-carousel-designation{color:var(--la-muted) !important;font-family:var(--la-mono);font-size:12px;}
#section-id-1640915545234 .sppb-carousel-extended-nav-control .nav-control{
  width:44px;height:44px;border-radius:50%;border:1px solid var(--la-line);background:#fff;color:var(--la-navy);
  display:inline-flex;align-items:center;justify-content:center;box-shadow:var(--la-shadow-sm);
}
#section-id-1640915545234 .sppb-carousel-extended-nav-control .nav-control:hover{background:var(--la-aqua);border-color:var(--la-aqua);color:#fff;}
#section-id-1640915545234 .sppb-carousel-extended-dots .sppb-carousel-extended-dot-indicator{border-radius:var(--la-pill);background:var(--la-line);}
#section-id-1640915545234 .sppb-carousel-extended-dots .active .sppb-carousel-extended-dot-indicator{background:var(--la-coral);}

/* ---------- 10. CTA band ---------- */
#section-id-1640987334204{padding:72px 0 !important;}
#section-id-1640987334204 h3,#section-id-1640987334204 h2{color:#fff !important;}
#section-id-1640987334204 .sppb-row-container{border-radius:var(--la-radius);}

/* ---------- 11. Footer ---------- */
#sp-bottom h3,#sp-bottom .sp-module-title,#sp-bottom .sppb-addon-title{
  font-family:var(--la-mono) !important;font-size:22px !important;letter-spacing:.08em !important;text-transform:uppercase;color:#FFB3C9 !important;font-weight:600 !important;margin-bottom:18px !important;
}
#sp-bottom h3::after,#sp-bottom .sp-module-title::after,#sp-bottom .sppb-addon-title::after{display:none !important;}
#sp-bottom a{color:#EAF2F6;}
#sp-bottom a:hover,#sp-bottom a:focus{color:#FFB3C9 !important;}
#sp-bottom .opening-hours-table td{font-variant-numeric:tabular-nums;border-bottom:1px dashed rgba(255,255,255,.12);padding:6px 0;}
#sp-bottom .opening-hours-table td{font-size:15px !important;padding:7.5px 0 !important;}
/* align Open Hours rows with the Quick Links list (same start line, same row pitch) */
#sp-bottom2 .sp-module-title{margin-bottom:27px !important;}
/* same heading design as Quick Links: gradient underline */
#sp-bottom2 .sp-module-title::after{content:'' !important;display:block !important;width:42px;height:3px;margin-top:12px;border-radius:2px;background:linear-gradient(90deg,#18A8D1,#ED6F91);}
#sp-bottom .opening-hours-table td{border-bottom:1px solid rgba(255,255,255,.075) !important;color:rgba(255,254,254,.88) !important;}
#sp-bottom .opening-hours-table tr:last-child td{border-bottom:0 !important;}
/* address box: logo, address and social icons left-aligned */
#sp-bottom3 img{margin-left:0 !important;margin-right:auto !important;display:block;}
#sp-bottom3 .sp-column,#sp-bottom3 .mod-custom,#sp-bottom3 .mod-custom > div,
#sp-bottom3 .mod-custom .launder-footer-address-lines,#sp-bottom3 .mod-custom span{text-align:left !important;}
#sp-bottom3 .launder-footer-socials{display:flex;justify-content:flex-start !important;margin-left:0 !important;margin-right:auto !important;padding-left:0;}
/* social icons: glyph perfectly centred inside each circle */
#sp-bottom3 .launder-footer-socials a{display:inline-flex !important;align-items:center !important;justify-content:center !important;position:relative;padding:0 !important;text-align:center;}
#sp-bottom3 .launder-footer-socials a::before{margin:0 !important;line-height:1 !important;width:auto !important;height:auto !important;display:block;}
#sp-bottom3 .launder-footer-socials a .visually-hidden{position:absolute !important;}
/* mobile: address box fully centred (logo, address, phone, email, social icons) — footer is site-wide */
@media (max-width:991px){
  #sp-bottom3 img{margin-left:auto !important;margin-right:auto !important;}
  #sp-bottom3 .sp-column,#sp-bottom3 .mod-custom,#sp-bottom3 .mod-custom > div,
  #sp-bottom3 .mod-custom .launder-footer-address-lines,#sp-bottom3 .mod-custom span,#sp-bottom3 .launder-footer-address{text-align:center !important;align-items:center !important;}
  #sp-bottom3 .launder-footer-socials{justify-content:center !important;margin-left:auto !important;margin-right:auto !important;}
}
/* hours text: same 16px as Quick Links and address */
#sp-bottom .opening-hours-table td,#sp-bottom .opening-hours-table td:last-child,#sp-bottom .opening-hours-table span{font-size:16px !important;}
#sp-bottom .opening-hours-table td:last-child{font-family:var(--la-mono);font-size:14px !important;}
#sp-footer a{color:#FFB3C9 !important;}
/* footer: logo/contact box first, Quick Links last (desktop); contact text matches Quick Links */
@media (min-width:992px){#sp-bottom #sp-bottom3{order:-1;}#sp-bottom #sp-bottom1{order:3;}}
#sp-bottom3 .mod-custom,#sp-bottom3 .mod-custom div,#sp-bottom3 .mod-custom span,#sp-bottom3 .mod-custom a{font-size:16px !important;font-weight:600 !important;line-height:1.5;}

/* ---------- 12. Global polish ---------- */
.sp-scroll-up{background:var(--la-aqua) !important;border-radius:50% !important;box-shadow:0 8px 20px rgba(24,168,209,.3);}
.sp-scroll-up:hover{background:var(--la-aqua-dark) !important;}
.form-control:focus,.form-select:focus,input:focus,textarea:focus,select:focus{border-color:var(--la-aqua) !important;box-shadow:0 0 0 3px rgba(24,168,209,.16) !important;}
::selection{background:rgba(237,111,145,.25);}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{transition:none !important;animation-duration:.001ms !important;}
}
@media (max-width:991px){
  #section-id-1640851039721,#section-id-1640915545234{padding:64px 0 !important;}
  #section-id-1674865661318,#section-id-1702488373530{padding:48px 0 !important;}
  #section-id-1640987334204{padding:56px 0 !important;}
}
/* "What we offer" tile titles: one line each, same size */
#section-id-1640851039721 .sppb-blocknumber .sppb-media-heading{font-size:22px !important;white-space:nowrap;letter-spacing:-.03em !important;}
/* "ONE OF VANCOUVER'S BEST 5": one line on desktop and mobile */
#section-id-1702488373530 #sppb-addon-1702488373532 h2.sppb-addon-title{white-space:nowrap !important;font-size:clamp(18px,5.8vw,32px) !important;letter-spacing:-.02em !important;}
@media (max-width:575px){
  #section-id-1702488373530 #sppb-addon-1702488373532 h2.sppb-addon-title{font-size:clamp(16px,5.25vw,32px) !important;margin-left:-12px !important;margin-right:-12px !important;letter-spacing:-.03em !important;}
}
/* Google reviews: remove the big decorative quote mark */
#section-id-1640915545234 .sppb-carousel-extended-item::before,
#section-id-1640915545234 .sppb-carousel-extended-item::after{content:none !important;display:none !important;}

/* COMMERCIAL page hero: same title treatment as Residential (overrides an older nowrap patch) */
@media (min-width:768px){
  body.itemid-106 #sppb-sp-slider-1640851039722 h2#sp-slider-inner-item-1640851039722-num-0-key.sppb-sp-slider-title[id],
  body.itemid-106 #sppb-sp-slider-1640851039722 h2#sp-slider-inner-item-1640851039722-num-1-key.sppb-sp-slider-title[id]{white-space:normal !important;font-size:clamp(34px,3.3vw,46px) !important;max-width:100% !important;text-wrap:balance;line-height:1.1 !important;letter-spacing:-.035em !important;}
}

/* desktop: hero title on exactly two lines — "Reliable Laundry" / "Service in Vancouver" */
@media (min-width:992px){
  #sppb-sp-slider-1640851039722 .sppb-sp-slider-title,
  #sppb-sp-slider-1640851039722 h3.sppb-sp-slider-title{white-space:normal !important;font-size:clamp(34px,3.3vw,46px) !important;max-width:12.4em !important;width:auto !important;text-wrap:balance;line-height:1.1 !important;}
  #sppb-sp-slider-1640851039722 h3.sppb-sp-slider-title::after{display:none !important;}
}
@media (max-width:575px){
  /* keep logo + Login + Get Started + menu toggle on one row without overlap */
  #sp-header #sp-logo img,#sp-header .logo img,#sp-header .logo-image{max-width:160px !important;max-height:44px !important;}
  #sp-header .btn{min-height:36px;padding:0 12px !important;font-size:12.5px !important;}
  #sp-header .btn-outline-primary{padding:0 10px !important;}
  #sppb-sp-slider-1640851039722 .sppb-sp-slider-button{padding:0 22px !important;font-size:15px !important;}
}

/* ---------- 13. PRICING page (body.itemid-115) ---------- */
/* content was starting under the fixed header: tab bar (desktop) and service picker (mobile) were hidden */
body.itemid-115 #sp-main-body{padding-top:150px !important;}
@media (max-width:991px){body.itemid-115 #sp-main-body{padding-top:140px !important;}}
/* mobile: price column was wrapping one character per line */
body.itemid-115 .pricing-table{table-layout:auto !important;width:100% !important;}
body.itemid-115 .pricing-table td{width:auto !important;}
body.itemid-115 .pricing-table td:last-child{white-space:nowrap !important;text-align:right !important;padding-left:12px !important;}
/* no justified text in notices / feature cards */
body.itemid-115 .la-pricing-notice,body.itemid-115 .la-pricing-tax-notice,body.itemid-115 .la-feature-price-card,
body.itemid-115 .la-feature-price-card li,body.itemid-115 .la-feature-price-card p,body.itemid-115 .accordion-body{text-align:left !important;}
/* "Log in" buttons: the top one floated behind the tax notice — hide it; the bottom one becomes a centred brand pill */
body.itemid-115 #sp-main-body .la-pricing-panel > a.btn{display:flex !important;float:none !important;clear:both;width:max-content;margin:28px auto 0 !important;
  background:var(--la-aqua) !important;border-color:var(--la-aqua) !important;color:#fff !important;position:static !important;box-shadow:0 10px 24px rgba(24,168,209,.24) !important;}
body.itemid-115 #sp-main-body .la-pricing-panel > a.btn:hover{background:var(--la-aqua-dark) !important;border-color:var(--la-aqua-dark) !important;}
body.itemid-115 #sp-main-body .la-pricing-panel > a.btn:not(:last-child){display:none !important;}
/* panel title on one line (mobile); drop the "Price List" kicker */
body.itemid-115 .la-pricing-kicker{display:none !important;}
@media (max-width:575px){
  body.itemid-115 #sp-main-body .la-pricing-title-group h3,body.itemid-115 #sp-main-body .la-pricing-title-group h2{white-space:nowrap !important;font-size:clamp(20px,6.1vw,40px) !important;letter-spacing:-.03em !important;}
}
/* accordion: header keeps its navy colour whether open or closed; smoother open/close */
body.itemid-115 #sp-main-body .accordion-a.collapsed{background:#0D3147 !important;color:#fff !important;}
body.itemid-115 .collapsing{transition:height .4s cubic-bezier(.4,0,.2,1) !important;}
/* mobile/tablet: replace the service dropdown with 4 visible buttons (2x2) */
@media (max-width:991px){
  body.itemid-115 .la-mobile-service-picker{display:none !important;}
  body.itemid-115 #sp-main-body .la-pricing-page .row.d-none.d-md-block{display:block !important;}
  body.itemid-115 #sp-main-body .pricing-nav{display:grid !important;grid-template-columns:1fr 1fr;gap:10px;width:100% !important;padding:0 !important;margin:0 0 22px !important;background:transparent !important;box-shadow:none !important;}
  body.itemid-115 #sp-main-body .pricing-nav .nav-item{display:block;width:100%;}
  body.itemid-115 #sp-main-body .pricing-nav .nav-link{display:flex !important;align-items:center;justify-content:center;text-align:center;width:100%;min-height:56px;padding:10px 12px !important;font-size:14px !important;font-weight:700 !important;line-height:1.2;border-radius:14px !important;background:#fff !important;border:1px solid var(--la-line) !important;color:var(--la-navy) !important;box-shadow:0 4px 12px rgba(18,52,74,.06) !important;}
  body.itemid-115 #sp-main-body .pricing-nav .nav-link.active{background:var(--la-coral) !important;border-color:var(--la-coral) !important;color:#fff !important;box-shadow:0 8px 18px rgba(237,111,145,.28) !important;}
}

/* ---------- 14. Login & Register ---------- */
/* login: remove doubled check marks; form spans the full panel (was inset 48px under the heading) */
body.com-users.view-login .la-portal__visual li::before{content:none !important;}
body.com-users.view-login .la-portal form.la-portal__form{padding-left:0 !important;padding-right:0 !important;width:100% !important;max-width:100% !important;margin:0 !important;}
body.com-users.view-login .la-portal .la-portal__field,body.com-users.view-login .la-portal .la-portal__field input,
body.com-users.view-login .la-portal .la-portal__field .input-group,body.com-users.view-login .la-portal .password-group{width:100% !important;max-width:100% !important;}
body.com-users.view-login .la-portal .la-portal__field{margin-bottom:14px;}
body.com-users.view-login .la-portal .btn,body.com-users.view-login .la-portal button[type=submit]{width:100% !important;}
body.com-users.view-login .la-portal__form-panel{display:flex;flex-direction:column;justify-content:center;}
/* register: hide the stray legacy address-line-2 input + blank label; label the real one; no justified text; hint under the field */
body.com-launderall.view-userform #shipping_address_2,body.com-launderall.view-userform label[for="shipping_address_1"]{display:none !important;}
body.com-launderall.view-userform label[for="jform_address_2"]::before{content:"Apartment / unit (optional)";}
body.com-launderall.view-userform .la-registration-agreement,body.com-launderall.view-userform .la-registration-agreement p,
body.com-launderall.view-userform .la-registration-agreement div{text-align:left !important;}
body.com-launderall.view-userform #form-user .control-group .controls{display:flex;flex-direction:column;}
body.com-launderall.view-userform #form-user .control-group .controls > .small.text-muted{order:2;margin-top:6px;}
body.com-launderall.view-userform #sp-main-body{padding-bottom:72px !important;}
/* password "eye" toggles: icon centred in the button; login uses the same attached toggle as Register */
.input-password-toggle{display:flex !important;align-items:center !important;justify-content:center !important;padding:0 !important;line-height:1 !important;}
.input-password-toggle::before{line-height:1 !important;display:block !important;margin:0 !important;}
.input-password-toggle .visually-hidden{position:absolute !important;}
body.com-users.view-login #sp-main-body .la-portal .input-password-toggle{border-radius:0 10px 10px 0 !important;margin-left:0 !important;width:52px !important;flex:0 0 52px;border:1px solid rgb(207,224,230) !important;border-left:0 !important;background:#EEF8FB !important;}
body.com-users.view-login .la-portal .input-group input{border-radius:10px 0 0 10px !important;}
/* register: captcha centred under its label */
body.com-launderall.view-userform .la-gs-actions .la-gs-captcha{display:flex !important;flex-direction:column;align-items:center;justify-self:center;text-align:center;width:100%;}
body.com-launderall.view-userform .la-gs-actions .la-gs-captcha .control-label{float:none !important;width:auto !important;text-align:center !important;padding:0 !important;margin:0 0 8px !important;}
body.com-launderall.view-userform .la-gs-actions .la-gs-captcha .controls{margin-left:0 !important;justify-content:center !important;width:auto !important;}
/* login: "Remember me" + "Forgot your password?" on one row; "Register" line directly under the button */
body.com-users.view-login .la-portal .la-portal__options{display:flex !important;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 16px !important;}
body.com-users.view-login .la-portal .la-portal__options .la-portal__remember{margin:0 !important;display:inline-flex;align-items:center;gap:8px;}
body.com-users.view-login .la-portal .la-portal__options a{margin:0 !important;white-space:nowrap;}
body.com-users.view-login .la-portal .la-portal__register{margin:20px 0 0 !important;text-align:center;}
/* login: exact 20px between button and Register line; faded laundromat photo behind the left panel (its original image was a 404) */
body.com-users.view-login .la-portal form.la-portal__form{padding-bottom:0 !important;}
body.com-users.view-login #sp-main-body .la-portal__visual{background:linear-gradient(135deg,rgba(6,48,72,.86) 0%,rgba(10,120,160,.72) 55%,rgba(24,168,209,.66) 100%),url('/images/launderall-footer-laundromat-2026.jpg') center/cover no-repeat !important;}

/* ---------- 15. My Launder All Account (logged-in portal) ---------- */
html body.site.la-client-authenticated:has(#v-pills-tab) #sp-main-body{padding-top:168px !important;padding-bottom:72px !important;background:#F5FAFC !important;}
/* hero band */
body.la-client-authenticated:has(#v-pills-tab) .client-portal-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 28px;padding:34px 40px;border-radius:22px;color:#fff;background:linear-gradient(120deg,#0D3147 0%,#12344A 45%,#18A8D1 130%);box-shadow:0 18px 45px rgba(18,52,74,.14);}
body.la-client-authenticated:has(#v-pills-tab) .client-portal-eyebrow{display:inline-block;font-family:var(--la-mono);font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:#FFB3C9;margin-bottom:8px;}
body.la-client-authenticated:has(#v-pills-tab) .client-portal-hero h1{color:#fff !important;font-size:clamp(28px,3vw,38px) !important;margin:0 0 8px !important;}
body.la-client-authenticated:has(#v-pills-tab) .client-portal-hero p{color:rgba(255,255,255,.85);margin:0;max-width:56ch;text-align:left !important;}
/* "+ Schedule a Pickup" is moved into the user menu by js/refine.js and styled as the primary (pink) item */
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link.la-nav-cta{background:var(--la-coral) !important;border-color:var(--la-coral) !important;color:#fff !important;justify-content:center;box-shadow:0 10px 22px rgba(237,111,145,.28);margin-bottom:6px;}
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link.la-nav-cta::before{display:none;}
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link.la-nav-cta:hover{background:var(--la-coral-dark) !important;border-color:var(--la-coral-dark) !important;}
/* owner card */
body.la-client-authenticated:has(#v-pills-tab) .client-owner-card{display:flex;align-items:center;gap:14px;padding:18px;border-radius:18px;background:#fff;border:1px solid var(--la-line);box-shadow:0 6px 18px rgba(18,52,74,.06);margin-bottom:14px;}
body.la-client-authenticated:has(#v-pills-tab) .client-owner-avatar{width:64px;height:64px;border-radius:50%;overflow:hidden;padding:0;border:3px solid #fff;box-shadow:0 0 0 2px var(--la-aqua);background:#EAF8FC;flex:0 0 64px;}
body.la-client-authenticated:has(#v-pills-tab) .client-owner-avatar img{width:100%;height:100%;object-fit:cover;display:block;}
body.la-client-authenticated:has(#v-pills-tab) .client-owner-card-copy strong{display:block;color:var(--la-navy);font-size:16px;}
body.la-client-authenticated:has(#v-pills-tab) .client-owner-card-copy small{display:block;color:var(--la-muted);font-size:12px;margin-bottom:4px;}
body.la-client-authenticated:has(#v-pills-tab) .client-owner-file{display:none !important;}
/* user menu */
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab{display:flex;flex-direction:column;gap:8px;background:transparent !important;border:0 !important;padding:0 !important;box-shadow:none !important;}
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link{display:flex;align-items:center;gap:12px;padding:13px 18px;border-radius:14px !important;background:#fff !important;border:1px solid var(--la-line) !important;color:var(--la-navy) !important;font-weight:700;font-size:15px;text-align:left;transition:background .15s,border-color .15s,transform .15s;}
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--la-line);flex:none;}
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link:hover{background:#EAF8FC !important;border-color:rgba(24,168,209,.4) !important;}
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link.active{background:var(--la-aqua) !important;border-color:var(--la-aqua) !important;color:#fff !important;box-shadow:0 10px 22px rgba(24,168,209,.28);}
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link.active::before{background:#fff;}
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link[href*="logout"]{margin-top:10px;color:var(--la-coral-dark) !important;}
body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link[href*="logout"]::before{background:var(--la-coral);}
/* content area */
body.la-client-authenticated:has(#v-pills-tab) .client-account-content .portal-section-heading{margin-bottom:18px;}
body.la-client-authenticated:has(#v-pills-tab) .client-account-content .portal-section-heading > *:first-child{font-family:var(--la-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--la-coral);}
body.la-client-authenticated:has(#v-pills-tab) .client-account-content h2,body.la-client-authenticated:has(#v-pills-tab) .client-account-content h3{color:var(--la-navy) !important;}
body.la-client-authenticated:has(#v-pills-tab) #sp-component #form-user,body.la-client-authenticated:has(#v-pills-tab) #sp-component .form-user,body.la-client-authenticated:has(#v-pills-tab) #sp-component div:has(>h4){background:#fff !important;border:1px solid var(--la-line) !important;border-radius:18px !important;padding:28px !important;box-shadow:0 6px 18px rgba(18,52,74,.06) !important;}
body.la-client-authenticated:has(#v-pills-tab) #sp-component #form-user > div:has(>h4),body.la-client-authenticated:has(#v-pills-tab) #sp-component #form-user .row > div:has(>h4){border:0 !important;box-shadow:none !important;padding:0 !important;background:transparent !important;}
body.la-client-authenticated:has(#v-pills-tab) #form-user.bg-warning{border-top:4px solid var(--la-coral) !important;}
body.la-client-authenticated:has(#v-pills-tab) #form-user .control-group{display:block !important;margin-bottom:16px;}
body.la-client-authenticated:has(#v-pills-tab) #form-user .control-label{float:none !important;width:100% !important;text-align:left !important;padding:0 0 6px !important;}
body.la-client-authenticated:has(#v-pills-tab) #form-user .controls{margin-left:0 !important;width:100% !important;}
body.la-client-authenticated:has(#v-pills-tab) #form-user .controls input.form-control,body.la-client-authenticated:has(#v-pills-tab) #form-user .password-group,body.la-client-authenticated:has(#v-pills-tab) #form-user .input-group{width:100% !important;max-width:100% !important;}
body.la-client-authenticated:has(#v-pills-tab) #form-user h4{font-size:22px !important;margin-bottom:18px !important;}
/* My Address: the pickup card had a typo class (col--md-6) and spanned full width */
@media (min-width:768px){ body.la-client-authenticated:has(#v-pills-tab) .client-account-content .row > [class*="col--md-6"]{flex:0 0 50%;max-width:50%;} }
/* both address cards: equal height */
body.la-client-authenticated:has(#v-pills-tab) .client-account-content .row > [class*="col-md-6"],body.la-client-authenticated:has(#v-pills-tab) .client-account-content .row > [class*="col--md-6"]{display:flex;flex-direction:column;}
body.la-client-authenticated:has(#v-pills-tab) #p_add_container,body.la-client-authenticated:has(#v-pills-tab) #b_add_container{flex:1 1 auto;height:100%;}
@media (max-width:991px){
  html body.site.la-client-authenticated:has(#v-pills-tab) #sp-main-body{padding-top:150px !important;}
  body.la-client-authenticated:has(#v-pills-tab) .client-portal-hero{flex-direction:column;align-items:flex-start;padding:26px 22px;}
  body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab{display:grid;grid-template-columns:1fr 1fr;margin-bottom:22px;}
  body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .la-nav-cta{grid-column:1 / -1;}
  body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link{justify-content:center;padding:12px 10px;font-size:14px;}
  body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link::before{display:none;}
  body.la-client-authenticated:has(#v-pills-tab) #v-pills-tab .nav-link[href*="logout"]{margin-top:0;}
  body.la-client-authenticated:has(#v-pills-tab) #sp-component #form-user{padding:20px !important;}
}
/* Orders panel: hide the floated duplicate "Place a New Order" (Schedule a Pickup is in the menu); empty state as a card with a brand button */
body.la-client-authenticated:has(#v-pills-tab) .client-orders-panel > a.btn[style*="float"]{display:none !important;}
body.la-client-authenticated:has(#v-pills-tab) .client-orders-panel{background:#fff;border:1px solid var(--la-line);border-radius:18px;padding:40px 28px;text-align:center;box-shadow:0 6px 18px rgba(18,52,74,.06);}
body.la-client-authenticated:has(#v-pills-tab) .client-orders-panel h3{font-size:clamp(22px,2.4vw,30px) !important;margin-bottom:18px !important;}
body.la-client-authenticated:has(#v-pills-tab) .client-orders-panel .btn.btn-warning{background:var(--la-aqua) !important;border-color:var(--la-aqua) !important;color:#fff !important;box-shadow:0 10px 24px rgba(24,168,209,.24) !important;}
body.la-client-authenticated:has(#v-pills-tab) .client-orders-panel .btn.btn-warning:hover{background:var(--la-aqua-dark) !important;border-color:var(--la-aqua-dark) !important;}
