/*
Theme Name: Laundry Basket Sedona
Description: A lightweight block theme for Laundry Basket Sedona, inspired by Laundry Square's clear service navigation and fresh blue palette.
Version: 1.1.7
Requires at least: 6.6
Requires PHP: 8.1
Text Domain: laundry-basket-sedona
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0}a{text-underline-offset:4px}a:focus-visible,summary:focus-visible{outline:3px solid #a34431;outline-offset:5px}header.wp-block-template-part{position:relative;z-index:2;border-bottom:1px solid #dce5e8;background:#fff}.lbs-header{max-width:1280px;margin:auto;padding:20px 32px}.lbs-header-row{align-items:center!important;gap:25px!important;margin:0!important}.lbs-header-row>.wp-block-column:first-child{flex-basis:230px!important;flex-grow:0}.lbs-header-row>.wp-block-column:last-child{flex-basis:170px!important;flex-grow:0}.lbs-wordmark{font-size:23px;font-weight:800;text-decoration:none;color:#142333;line-height:1.1;display:block;letter-spacing:-1px}.lbs-wordmark span{display:block;font-size:9px;letter-spacing:3px;margin-top:8px;color:#237c90}.lbs-brand p{margin:0}.lbs-nav{font-size:13px;font-weight:700}.wp-block-navigation__container{gap:19px!important}.lbs-section{max-width:1224px;margin:0 auto!important;padding:68px 32px}.lbs-section h2{font-size:clamp(32px,3.4vw,44px);max-width:800px;margin:12px 0 30px}.lbs-section h3{font-size:27px}.lbs-kicker{font-size:11px!important;letter-spacing:2px;font-weight:800;color:#237c90!important;text-transform:uppercase;margin-bottom:12px}.lbs-hero{padding:70px max(32px,calc((100vw - 1160px)/2));background:radial-gradient(ellipse at bottom left,#d5edf1 0,transparent 65%),#f4fafb;margin:0!important}.lbs-hero>.wp-block-columns{align-items:center!important;gap:55px!important}.lbs-hero h1{font-size:clamp(40px,4.6vw,64px);letter-spacing:-2.5px;margin:18px 0 24px}.lbs-hero p{color:#536571}.lbs-hero-photo{margin:0}.lbs-hero-photo img{border-radius:20px;width:100%;aspect-ratio:4/3;object-fit:cover;box-shadow:0 16px 40px #14364214}.lbs-hero-photo figcaption{font-size:12px;color:#536571;text-align:center}.lbs-facts{margin-top:28px!important;gap:12px!important}.lbs-facts>.wp-block-column{background:#ffffffb8;border:1px solid #dbe7ea;border-radius:14px;padding:13px}.lbs-facts p{font-size:12px;margin:0}.lbs-facts strong{font-size:15px;color:#142333}.lbs-card{border:1px solid #dce5e8;border-radius:18px;padding:28px;height:100%;background:#fff;box-shadow:0 10px 25px #183b4b07;display:flex;flex-direction:column}.lbs-card h3{margin:12px 0}.lbs-card>.wp-block-buttons{margin-top:auto;padding-top:15px}.lbs-card p{font-size:15px;color:#536571}.lbs-section:nth-child(even){background:#f7fafb}.lbs-section .wp-block-columns{gap:28px}.wp-block-button__link{transition:background .15s,transform .15s}.wp-block-button__link:hover{background:#155f70;transform:translateY(-1px)}.lbs-hero .wp-block-button:nth-child(2) .wp-block-button__link,.lbs-cta .wp-block-button:nth-child(2) .wp-block-button__link{background:#fff;color:#142333;border:1px solid #cfdee3}.lbs-cta{text-align:center;background:#e7f4f6;padding:65px 25px;margin:0!important}.lbs-cta h2{font-size:clamp(34px,4vw,48px);margin:12px 0 28px}.lbs-cta .wp-block-buttons{justify-content:center}.wp-block-details{padding:20px 0;border-bottom:1px solid #dce5e8}.wp-block-details summary{cursor:pointer;font-weight:700}.wp-block-details p{color:#536571}.lbs-footer{background:#142333;color:#fff;padding:55px max(32px,calc((100vw - 1160px)/2));margin:0!important}.lbs-footer h3{font-family:var(--wp--preset--font-family--body);font-size:18px}.lbs-footer p{font-size:14px}.lbs-footer a{color:#d1edf2}.lbs-footer .lbs-copyright{border-top:1px solid #ffffff30;padding-top:25px;color:#bacbd2;font-size:12px}.wp-site-blocks>*,.wp-site-blocks main{margin-block-start:0!important}.lbs-section .wp-block-columns:last-child{margin-bottom:0}@media(max-width:950px){.lbs-header{padding:16px 24px}.lbs-header-row>.wp-block-column:first-child{flex-basis:190px!important}.lbs-header-row{flex-wrap:wrap!important}.lbs-header-row>.wp-block-column:last-child{display:none}.lbs-hero{padding:45px 24px}.lbs-hero>.wp-block-columns{gap:30px!important}.lbs-hero h1{font-size:43px}.lbs-section{padding:48px 24px}.lbs-footer{padding:45px 24px}}@media(max-width:600px){.lbs-header-row{flex-wrap:nowrap!important}.lbs-header-row>.wp-block-column{flex-basis:auto!important}.lbs-header-row>.wp-block-column:first-child{flex-basis:210px!important}.lbs-wordmark{font-size:21px}.lbs-header-row>.wp-block-column:nth-child(2){display:flex;justify-content:flex-end}.lbs-nav{width:100%}.lbs-hero h1{font-size:43px;letter-spacing:-1.8px}.lbs-facts{flex-wrap:nowrap!important}.lbs-facts>.wp-block-column{flex-basis:0!important;padding:10px}.lbs-facts strong{font-size:13px}.lbs-section h2{font-size:33px}.lbs-card{height:auto}.lbs-footer a{overflow-wrap:anywhere}.wp-block-button__link{font-size:13px!important}}
.lbs-section h1{font-size:clamp(38px,4.6vw,60px);line-height:1.12;letter-spacing:-1.5px;max-width:850px;margin:12px 0 28px}
@media(max-width:600px){.lbs-header-row>.wp-block-column:first-child{flex:0 0 210px!important}.lbs-header-row>.wp-block-column:nth-child(2){flex:1 1 auto!important;min-width:32px}.lbs-header .lbs-wordmark{white-space:nowrap}.lbs-header .lbs-wordmark span{white-space:nowrap}}

.lbs-brand{display:flex;align-items:center;gap:12px}.lbs-logo{margin:0;flex:0 0 78px}.lbs-logo img{display:block;width:78px;height:auto}.lbs-header-row>.wp-block-column:first-child{flex:0 0 290px!important}@media(max-width:600px){.lbs-header{padding:12px 18px}.lbs-header-row{gap:12px!important}.lbs-header-row>.wp-block-column:first-child{flex:0 0 270px!important}.lbs-logo{flex-basis:68px}.lbs-logo img{width:68px}.lbs-header .lbs-wordmark{font-size:19px}.lbs-header .lbs-wordmark span{font-size:8px;letter-spacing:2px}.lbs-brand{gap:9px}}

.lbs-owner-photo img{filter:brightness(1.08) contrast(1.03) saturate(.97)}.lbs-hero-photo.lbs-owner-photo img{object-position:50% 62%}.lbs-equipment-photo{margin:36px 0 0}.lbs-equipment-photo img{display:block;width:100%;height:420px;object-fit:cover;object-position:50% 58%;border-radius:18px}.lbs-payment-photo{margin:0}.lbs-payment-photo img{display:block;width:100%;height:auto;border-radius:18px}.lbs-section:has(.lbs-payment-photo)>.wp-block-columns{align-items:center!important}@media(max-width:600px){.lbs-equipment-photo img{height:290px}}

/* Approved staging SEO revision: preserve layout, improve clarity and small-text contrast. */
.lbs-cta .lbs-kicker{color:#17576a!important}.lbs-section h2.lbs-contact-subheading{font-size:27px}.lbs-breadcrumb{max-width:1224px;margin:0 auto!important;padding:20px 32px 0;font-size:13px;color:#536571}.lbs-breadcrumb p{margin:0}@media(max-width:600px){.lbs-breadcrumb{padding:16px 24px 0}}

/* Header contact access and homepage journey actions. */
.lbs-header-phone{display:inline-block;margin-top:7px;color:#237c90;font-size:13px;font-weight:700;letter-spacing:0;text-decoration:underline}.lbs-home-actions{gap:12px!important}.lbs-home-actions>.wp-block-button:first-child{flex-basis:100%}.lbs-home-actions>.wp-block-button:not(:first-child) .wp-block-button__link{background:#fff;color:#142333;border:1px solid #cfdee3}

@media(max-width:360px){.lbs-header{padding:12px 14px}.lbs-header-row>.wp-block-column:first-child{flex:0 0 228px!important}.lbs-logo{flex-basis:54px}.lbs-logo img{width:54px}.lbs-brand{gap:8px}.lbs-header .lbs-wordmark{font-size:18px}}

/* Owner reference: pickup, directions and commercial quote hero actions. */
.lbs-home-actions{display:flex;flex-wrap:wrap;gap:10px!important;align-items:center}
.lbs-home-actions>.wp-block-button:first-child{flex-basis:auto}
.lbs-home-actions>.wp-block-button .wp-block-button__link{font-size:13px!important;font-weight:800;line-height:1.4;padding:14px 13px;border-radius:999px;white-space:nowrap;border:1px solid transparent;box-sizing:border-box}
.lbs-home-actions>.wp-block-button:first-child .wp-block-button__link{background:#087f8f;color:#fff;border-color:#087f8f}
.lbs-home-actions>.wp-block-button:nth-child(2) .wp-block-button__link{background:#fff;color:#142333;border-color:#cfdee3}
.lbs-home-actions>.wp-block-button:nth-child(3) .wp-block-button__link{background:#0d5273;color:#fff;border-color:#0d5273}
.lbs-home-actions>.wp-block-button:first-child .wp-block-button__link:hover{background:#16899a;border-color:#16899a}
.lbs-home-actions>.wp-block-button:nth-child(2) .wp-block-button__link:hover{background:#e9f5f7}
.lbs-home-actions>.wp-block-button:nth-child(3) .wp-block-button__link:hover{background:#093d57;border-color:#093d57}
@media(max-width:600px){.lbs-home-actions>.wp-block-button .wp-block-button__link{white-space:normal;text-align:center;max-width:100%}}

/* Homepage service cards, based on the owner's visual reference. */
.lbs-service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:stretch}
.lbs-service-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #c9e3eb;border-radius:22px;background:#fff;box-shadow:0 12px 30px #183b4b05}
.lbs-service-image{position:relative;aspect-ratio:1.45;overflow:hidden;background:#e7f4f6}
.lbs-service-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 65%}
.lbs-service-card:nth-child(2) .lbs-service-image img{object-position:center 82%}
.lbs-service-card:nth-child(3) .lbs-service-image img{object-position:center 45%}
.lbs-service-body{padding:22px 20px 20px;display:flex;flex-direction:column;flex:1}
.lbs-service-eyebrow{display:flex;align-items:center;gap:10px;color:#087b8d;font-size:10px;line-height:1.5;font-weight:800;letter-spacing:1.3px;margin:0 0 16px}
.lbs-service-icon{width:40px;height:40px;flex:0 0 40px;display:grid;place-items:center;border-radius:50%;background:#e0f7fa;color:#087f8f}
.lbs-service-icon svg{width:23px;height:23px}
.lbs-service-body h3{font-size:32px;line-height:1.08;letter-spacing:-.7px;color:#142d49;margin:0 0 14px}
.lbs-service-description{font-size:15px;line-height:1.55;color:#4c6574;margin:0 0 22px}
.lbs-service-action{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#087f8f;color:#fff;text-decoration:none;font-weight:800;font-size:14px;line-height:1.35;padding:14px 16px;border-radius:999px;margin-top:auto;min-height:48px}
.lbs-service-action>span:last-child{font-size:24px;line-height:1;flex:none}
.lbs-service-action:hover{background:#096674;color:#fff}
.lbs-service-commercial .lbs-service-action,.lbs-service-badge{background:#0d5273;color:#fff}
.lbs-service-commercial .lbs-service-action:hover{background:#093d57}
.lbs-service-badge{position:absolute;top:12px;left:12px;right:12px;text-align:center;font-size:10px;font-weight:800;letter-spacing:1px;line-height:1.5;padding:9px 14px;border-radius:999px}
.lbs-service-details{font-size:13px;margin:-8px 0 18px;color:#0d5273}
@media(min-width:781px) and (max-width:1050px){.lbs-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.lbs-service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.lbs-service-body h3{font-size:30px}}
@media(max-width:560px){.lbs-service-grid{grid-template-columns:minmax(0,1fr)}.lbs-service-image{aspect-ratio:1.55}.lbs-service-body{padding:22px}.lbs-service-body h3{font-size:32px}}

/* Interactive service cards: fine-pointer hover and keyboard focus. */
.lbs-service-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.lbs-service-image img{transition:transform .35s ease}
.lbs-service-icon{transition:background-color .22s ease,color .22s ease}
.lbs-service-action>span:last-child{transition:transform .22s ease}
.lbs-service-card:focus-within{transform:translateY(-6px);border-color:#087f8f;box-shadow:0 18px 38px #14364224}
.lbs-service-card:focus-within .lbs-service-image img{transform:scale(1.035)}
.lbs-service-card:focus-within .lbs-service-icon{background:#087f8f;color:#fff}
.lbs-service-card:focus-within .lbs-service-action>span:last-child{transform:translateX(4px)}
@media(hover:hover) and (pointer:fine){
.lbs-service-card:hover{transform:translateY(-6px);border-color:#087f8f;box-shadow:0 18px 38px #14364224}
.lbs-service-card:hover .lbs-service-image img{transform:scale(1.035)}
.lbs-service-card:hover .lbs-service-icon{background:#087f8f;color:#fff}
.lbs-service-card:hover .lbs-service-action>span:last-child{transform:translateX(4px)}
}
@media(prefers-reduced-motion:reduce){
.lbs-service-card,.lbs-service-image img,.lbs-service-icon,.lbs-service-action>span:last-child{transition:none!important}
.lbs-service-card:hover,.lbs-service-card:focus-within,.lbs-service-card:hover .lbs-service-image img,.lbs-service-card:focus-within .lbs-service-image img,.lbs-service-card:hover .lbs-service-action>span:last-child,.lbs-service-card:focus-within .lbs-service-action>span:last-child{transform:none!important}
}
