:root {
  --green:#1e6b36;
  --green-dark:#164f29;
  --green-soft:#eef5eb;
  --green-pale:#f5f8f1;
  --cream:#faf9f4;
  --ink:#14251b;
  --muted:#5b665e;
  --line:#dfe7dc;
  --white:#fff;
  --shadow:0 12px 32px rgba(29,53,36,.07);
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.45}
a{color:inherit}
.site-header{height:86px;max-width:var(--max);margin:auto;padding:0 26px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf1eb}
.brand{display:flex;gap:10px;align-items:center;text-decoration:none}
.brand-icon{display:grid;place-items:center;width:37px;height:37px;border:2px solid var(--green)}
.brand-icon>span{width:22px;height:22px;background-image:linear-gradient(rgba(30,107,54,.5) 1px,transparent 1px),linear-gradient(90deg,rgba(30,107,54,.5) 1px,transparent 1px);background-size:7px 7px}
.brand-icon.small{width:32px;height:32px}
.brand-name{font-weight:900;font-size:.84rem;line-height:.92;letter-spacing:.01em}
.nav-links{display:flex;gap:32px;align-items:center;font-size:.84rem;font-weight:700}
.nav-links a{text-decoration:none}
.nav-cta{background:var(--green);color:white;padding:12px 19px;border-radius:6px;box-shadow:0 8px 20px rgba(30,107,54,.18)}

.hero-shell{max-width:var(--max);margin:0 auto;padding:34px 26px 0;display:grid;grid-template-columns:1.08fr .92fr;gap:0;min-height:530px}
.hero-copy{padding:34px 42px 28px 0;align-self:center}
.hero-copy h1{font-family:Georgia,"Times New Roman",serif;color:#18522c;font-size:clamp(3rem,5vw,4.9rem);line-height:.98;letter-spacing:-.04em;margin:0 0 22px;max-width:8.7ch;font-weight:700}
.hero-copy>p{font-size:1.12rem;max-width:540px;color:#27382d;margin:0 0 28px}
.hero-photo-wrap{overflow:hidden;border-radius:32px 0 0 0;min-height:480px;align-self:stretch;background:#e9efe7}
.hero-photo-wrap img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;image-rendering:auto}
.hero-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:8px 0 26px;max-width:560px}
.benefit-mini{display:flex;align-items:center;gap:11px;font-size:.8rem;color:#35433a;line-height:1.25}
.benefit-mini+.benefit-mini{border-left:1px solid var(--line);padding-left:18px}
.hero-benefits--trust{max-width:620px;gap:16px;margin-top:10px;margin-bottom:27px}
.benefit-mini--trust{align-items:flex-start;gap:12px;font-size:.8rem;line-height:1.28}
.benefit-mini--trust>span:last-child{display:grid;gap:3px;padding-top:2px}
.benefit-mini--trust strong{font-size:.86rem;line-height:1.2;color:#1f3427}
.benefit-mini--trust small{font-size:.75rem;line-height:1.32;color:#4f5d54}
.mini-icon,.quality-icon{display:grid;place-items:center;flex:0 0 auto;color:var(--green);border:1.5px solid #bfd2bf;border-radius:50%;width:44px;height:44px;font-size:1.2rem}
.mesh-icon,.family-icon{color:var(--green)}
.hero-icon-svg{display:block;width:24px;height:24px}
.clock-icon::before{content:"";width:19px;height:19px;border:2px solid var(--green);border-radius:50%}
.clock-icon::after{content:"";position:absolute;width:7px;height:2px;background:var(--green);transform:translate(4px,-2px) rotate(50deg);transform-origin:left}
.clock-icon{position:relative}
.truck-icon{font-size:1.8rem}
.primary-button{display:inline-flex;gap:18px;align-items:center;background:var(--green);color:#fff;text-decoration:none;padding:15px 24px;border-radius:5px;font-weight:800;box-shadow:0 8px 18px rgba(30,107,54,.15)}
.primary-button:hover,.nav-cta:hover,.small-button:hover{background:var(--green-dark)}
.hero-tagline{font-size:.78rem!important;margin:14px 0 0 24px!important;color:#3f4c43!important}

.guarantee-strip{max-width:calc(var(--max) - 52px);margin:12px auto 0;background:linear-gradient(90deg,#f2f7ef,#f8f9f3);border:1px solid #e5ebdf;border-radius:9px;padding:17px 34px;display:flex;align-items:center;gap:20px;box-shadow:0 5px 14px rgba(49,72,51,.025)}
.check-circle{display:grid;place-items:center;width:48px;height:48px;border:2px solid var(--green);border-radius:50%;font-size:1.5rem;color:var(--green)}
.guarantee-strip div{display:grid;gap:2px}
.guarantee-strip strong{font-size:1.08rem}
.guarantee-strip span{font-size:.88rem;color:#34453a}
.guarantee-strip b{color:var(--green)}

.how-section{max-width:var(--max);margin:auto;padding:34px 26px 28px;text-align:center}
.how-section h2{font-family:Georgia,"Times New Roman",serif;color:#18522c;font-size:2.05rem;margin:0}
.title-rule{width:38px;height:2px;background:#8eb983;margin:8px auto 28px}
.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;position:relative}
.how-grid::before{content:"";position:absolute;top:21px;left:12%;right:12%;border-top:1px dashed #bfcfbd;z-index:0}
.how-grid article{position:relative;z-index:1;padding:0 14px}
.step-num{position:relative;display:grid;place-items:center;width:42px;height:42px;margin:0 auto 17px;background:var(--green);border:6px solid #fff;box-shadow:0 0 0 1px #dfe8dc;border-radius:50%;color:white;font-weight:800;font-size:.86rem}
.how-grid h3{font-size:.94rem;margin:0 0 8px}
.how-grid p{font-size:.81rem;color:#4d5a52;margin:0;line-height:1.45}

.pricing-card{max-width:calc(var(--max) - 52px);margin:12px auto 18px;background:linear-gradient(100deg,#f2f7ee,#faf9f3);border:1px solid #e4eadf;border-radius:12px;padding:25px 32px 18px;display:grid;grid-template-columns:.95fr 1.05fr;gap:42px;position:relative}
.card-kicker{font-weight:800;margin:0 0 8px;font-size:.94rem}
.big-price{font-family:Georgia,"Times New Roman",serif;font-size:4.1rem;line-height:1;color:#1b6535;margin:0}
.price-main p{margin:2px 0;font-size:.85rem}
.price-main .minimum{margin-top:13px;color:#35443a}
.price-examples{border-left:1px solid #d4dfd1;padding-left:38px}
.price-examples div{display:flex;justify-content:space-between;padding:4px 0;font-size:.88rem}
.price-examples small{font-weight:500}
.pricing-note{grid-column:1/-1;border-top:1px solid #dbe4d7;text-align:center;margin:2px 0 0;padding-top:12px;font-size:.78rem;color:#445147}

.service-card{max-width:calc(var(--max) - 52px);margin:0 auto 16px;display:grid;grid-template-columns:1fr 1.05fr;border:1px solid #e4eadf;border-radius:12px;overflow:hidden;background:#f9faf6}
.service-copy{padding:27px 30px}
.service-copy h2{font-family:Georgia,"Times New Roman",serif;font-size:1.75rem;line-height:1.15;margin:0 0 17px;color:#1f3826}
.service-copy ul{list-style:none;padding:0;margin:0 0 18px;font-size:.82rem;color:#415047}
.service-copy li{margin:9px 0;padding-left:22px;position:relative}
.service-copy li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}
.small-button{display:inline-block;background:var(--green);color:#fff;text-decoration:none;font-weight:800;font-size:.79rem;padding:10px 15px;border-radius:5px}
.service-map{min-height:215px;background:#eef3ea}
.service-map img{width:100%;height:100%;object-fit:cover;display:block;image-rendering:auto}

.quality-row{max-width:calc(var(--max) - 52px);margin:0 auto 22px;border:1px solid #e8ece5;border-radius:11px;background:#fbfcf9;display:grid;grid-template-columns:repeat(3,1fr);padding:18px 24px;gap:20px}
.quality-row article{display:flex;align-items:flex-start;gap:13px;padding:0 10px}
.quality-row article+article{border-left:1px solid #e1e7df;padding-left:26px}
.quality-icon{border-radius:0;border:none;width:42px;height:42px;font-size:2rem;padding:6px}
.shield-icon{border:2px solid var(--green);border-radius:40% 40% 50% 50%;font-size:1rem}
.heart-icon{font-size:2.3rem}
.quality-row strong{font-size:.85rem}
.quality-row p{font-size:.74rem;line-height:1.4;color:#526057;margin:3px 0 0}

.fresh-section{max-width:calc(var(--max) - 52px);margin:0 auto 22px;background:linear-gradient(90deg,#e7eee7,#edf3e9);border:1px solid #d9e3d7;border-radius:12px;padding:25px 30px;display:grid;grid-template-columns:1.4fr .8fr;gap:35px;align-items:center}
.fresh-kicker{color:var(--green);font-size:.73rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;margin:0 0 6px}
.fresh-section h2{font-family:Georgia,"Times New Roman",serif;color:#1b4f2d;font-size:2.15rem;margin:0 0 8px}
.fresh-section p{color:#4e5b52;margin:0;font-size:.87rem}
.fresh-points{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;font-size:.78rem;text-align:center;color:#2d4936}
.fresh-points span{padding:9px;border-left:1px solid #dce5d9}

.pickup-section{max-width:calc(var(--max) - 52px);margin:0 auto 28px;background:#f8faf6;border:1px solid #e3e9df;border-radius:12px;padding:34px;display:grid;grid-template-columns:.85fr 1.15fr;gap:42px}
.section-kicker{color:var(--green);font-size:.76rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px}
.pickup-intro h2,.faq h2{font-family:Georgia,"Times New Roman",serif;font-size:2.1rem;line-height:1.05;color:#1b4f2d;margin:0 0 14px}
.pickup-intro>p{color:#536158;font-size:.91rem}
.booking-promise{border-left:3px solid var(--green);padding:13px 15px;background:#fff;display:grid;gap:2px;font-size:.85rem}.booking-promise span{color:#5e6b62}
.booking-progress{list-style:none;padding:0;margin:0 0 12px;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;font-size:.72rem;font-weight:800;color:#69756d}.booking-progress li{display:flex;align-items:center;gap:6px}.booking-progress li span{display:grid;place-items:center;width:23px;height:23px;border-radius:50%;border:1px solid #cfdbcf;background:#fff}.booking-progress li.is-active,.booking-progress li.is-complete{color:#21462e}.booking-progress li.is-active span,.booking-progress li.is-complete span{background:var(--green);color:white;border-color:var(--green)}
.pickup-form,.booking-confirmation{background:#fff;border:1px solid #dee6db;border-radius:10px;padding:24px;box-shadow:0 8px 18px rgba(31,57,38,.04)}
.pickup-form fieldset{border:0;margin:0;padding:0;display:grid;gap:14px}.pickup-form fieldset[hidden]{display:none}.pickup-form legend{font-family:Georgia,"Times New Roman",serif;font-size:1.5rem;font-weight:700;color:#1c3f28}.step-intro{margin:-4px 0 3px;color:#627066;font-size:.84rem}.pickup-form label{display:grid;gap:5px;font-size:.79rem;font-weight:800}.pickup-form input,.pickup-form select,.pickup-form textarea{width:100%;padding:11px 12px;border:1px solid #cad7c9;border-radius:6px;font:inherit;background:white;color:#1b2c20}.pickup-form input:focus,.pickup-form select:focus,.pickup-form textarea:focus{outline:3px solid rgba(30,107,54,.11);border-color:var(--green)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.optional{font-weight:500;color:#748078}.estimate{background:#f0f6ed;padding:13px 14px;border-radius:7px;display:flex;justify-content:space-between;align-items:center}.estimate span{font-size:.8rem;color:#5c685f}.estimate strong{font-size:1.35rem;color:#185b30}.form-note{font-size:.74rem;color:#717b74;margin:0}.form-actions{display:flex;align-items:center;gap:10px;margin-top:3px}.form-actions>*:last-child{margin-left:auto}.form-primary,.button-secondary{border:0;border-radius:5px;padding:11px 16px;font-weight:800;cursor:pointer}.form-primary{background:var(--green);color:white}.form-primary:disabled{opacity:.45;cursor:not-allowed}.button-secondary{background:white;color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.text-button{border:0;background:transparent;color:var(--green);font-weight:800;cursor:pointer;padding:8px 0}.service-status{padding:12px;border-radius:7px;display:grid;gap:2px;font-size:.8rem}.service-status[hidden]{display:none}.service-status span{color:#647068}.service-status--core{background:#e8f2e8;border:1px solid #c1d6c0}.service-status--nearby{background:#f7f3e3;border:1px solid #ddd1a6}.service-status--review{background:#f3f1ed;border:1px solid #d9d2c8}.request-summary{border-top:1px solid #e4e9e1}.request-summary>div{display:grid;grid-template-columns:120px 1fr;gap:12px;border-bottom:1px solid #e5eae3;padding:10px 0}.request-summary span{font-size:.75rem;color:#717b74}.request-summary strong{font-size:.81rem}.review-note{background:#f0f6ed;padding:13px;border-radius:7px}.review-note p{font-size:.78rem;color:#657068;margin:4px 0 0}.booking-confirmation[hidden]{display:none}.confirmation-mark{display:grid;place-items:center;width:42px;height:42px;background:var(--green);color:#fff;border-radius:50%;font-weight:900}.booking-confirmation h3{font-family:Georgia,"Times New Roman",serif;color:#1b4f2d;font-size:1.8rem;margin:10px 0}.booking-confirmation p{font-size:.84rem;color:#667168}.demo-warning{font-size:.72rem!important}

.faq{max-width:calc(var(--max) - 52px);margin:0 auto 35px}.faq h2{text-align:center;margin-bottom:18px}.faq details{border-bottom:1px solid #dfe6dc;padding:13px 4px}.faq summary{font-weight:800;cursor:pointer;font-size:.88rem}.faq p{font-size:.83rem;color:#59665d}
.site-footer{max-width:calc(var(--max) - 52px);margin:auto;border-top:1px solid #e0e7de;padding:24px 10px 40px;display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:34px;font-size:.74rem;color:#56635a}.site-footer>div{display:grid;align-content:start;gap:5px}.site-footer a{text-decoration:none}.footer-brand{display:flex!important;align-items:flex-start;gap:10px}.footer-brand>div{display:grid}.footer-brand small{margin-top:5px;color:#758178}

@media(max-width:900px){.nav-links a:not(.nav-cta){display:none}.hero-shell{grid-template-columns:1fr;padding-top:20px}.hero-copy{padding:25px 0 28px}.hero-copy h1{max-width:10ch}.hero-photo-wrap{border-radius:24px;min-height:390px}.how-grid{grid-template-columns:repeat(2,1fr);row-gap:34px}.how-grid::before{display:none}.pricing-card,.service-card,.fresh-section,.pickup-section{grid-template-columns:1fr}.price-examples{border-left:0;border-top:1px solid #d4dfd1;padding:18px 0 0}.service-map{min-height:260px}.quality-row{grid-template-columns:1fr}.quality-row article+article{border-left:0;border-top:1px solid #e1e7df;padding:15px 10px 0}.site-footer{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.site-header{height:72px;padding:0 18px}.nav-cta{padding:10px 13px}.hero-shell{padding:12px 18px 0}.hero-copy h1{font-size:3.2rem}.hero-benefits{grid-template-columns:1fr;gap:8px}.benefit-mini+.benefit-mini{border-left:0;padding-left:0}.hero-tagline{margin-left:0!important}.guarantee-strip,.pricing-card,.service-card,.quality-row,.fresh-section,.pickup-section,.faq,.site-footer{max-width:calc(100% - 36px)}.guarantee-strip{padding:16px 17px}.how-section{padding:32px 18px}.how-grid{grid-template-columns:1fr 1fr;gap:24px 10px}.pricing-card{padding:22px}.fresh-points{grid-template-columns:1fr}.fresh-points span{border-left:0;border-top:1px solid #dce5d9}.pickup-section{padding:22px}.field-grid{grid-template-columns:1fr}.booking-progress{grid-template-columns:repeat(4,auto);justify-content:space-between}.booking-progress li{font-size:0}.booking-progress li span{font-size:.72rem}.request-summary>div{grid-template-columns:1fr;gap:2px}.form-actions{align-items:stretch;flex-direction:column-reverse}.form-actions>*{width:100%!important;margin-left:0!important}.site-footer{grid-template-columns:1fr}}

/* Option 3 paired information row */
.info-grid{
  max-width:calc(var(--max) - 52px);
  margin:12px auto 18px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
  align-items:stretch;
}
.info-grid .pricing-card,
.info-grid .service-card{
  max-width:none;
  width:100%;
  margin:0;
  min-height:100%;
}
.info-grid .pricing-card{
  grid-template-columns:.92fr 1.08fr;
  gap:24px;
  padding:25px 24px 17px;
}
.info-grid .price-examples{padding-left:24px}
.info-grid .service-card{
  grid-template-columns:.92fr 1.08fr;
}
.info-grid .service-copy{padding:24px 22px}
.info-grid .service-copy h2{font-size:1.55rem}
.info-grid .service-map{min-height:100%}

/* Bring the real page closer to the light/natural Option 3 mockup */
.hero-shell{min-height:475px;padding-top:24px}
.hero-copy{padding-top:20px;padding-bottom:18px}
.hero-photo-wrap{min-height:440px;border-radius:30px 0 0 0}
.guarantee-strip{margin-top:10px}
.how-section{padding-top:28px;padding-bottom:24px}
.quality-row{margin-top:0}
.fresh-section{margin-top:0}

@media(max-width:900px){
  .info-grid{grid-template-columns:1fr}
  .info-grid .pricing-card,.info-grid .service-card{grid-template-columns:1fr}
  .info-grid .price-examples{padding:18px 0 0;border-left:0;border-top:1px solid #d4dfd1}
  .info-grid .service-map{min-height:250px}
}
@media(max-width:600px){
  .info-grid{max-width:calc(100% - 36px)}
}

/* Booking workflow — locked launch rules */
.route-rule-note{margin:8px 0 0;font-size:.73rem;color:#667168}
.other-location[hidden]{display:none}
.radio-group{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.radio-card{display:flex!important;align-items:center;gap:9px;border:1px solid #cad7c9;border-radius:7px;padding:11px 12px;background:#fff;cursor:pointer;font-weight:700!important}
.radio-card input{width:auto!important;margin:0;accent-color:var(--green)}.radio-card:has(input:checked){border-color:var(--green);background:#f0f6ed}
.requirements-box{border:1px solid #d6e2d3;background:#f5f8f2;border-radius:8px;padding:14px}
.requirements-box ul{margin:7px 0 9px;padding-left:19px;color:#4f5c53;font-size:.76rem}.requirements-box li{margin:4px 0}.requirements-box p{font-size:.74rem;color:#657168;margin:7px 0 0}
.confirm-check{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:9px!important;font-size:.76rem!important;line-height:1.45}
.confirm-check input{width:auto!important;margin-top:2px;accent-color:var(--green)}
.payment-note{display:flex;gap:8px;align-items:flex-start;background:#f6f8f3;border:1px solid #e0e6dc;border-radius:7px;padding:11px 12px;font-size:.76rem;color:#59665d}.payment-note strong{color:#24482f}
.service-status--local{background:#e8f2e8;border:1px solid #c1d6c0}.service-status--corridor{background:#f7f3e3;border:1px solid #ddd1a6}.service-status--outside{background:#f9ece9;border:1px solid #e6c5bc}
.form-error{font-size:.76rem;color:#8a3328;margin:0}.form-error[hidden]{display:none}
.status-pill{display:inline-flex;align-items:center;width:max-content;padding:5px 9px;border-radius:999px;background:#e8f2e8;color:#245634;font-size:.7rem;font-weight:900;letter-spacing:.06em}
@media(max-width:600px){.radio-group{grid-template-columns:1fr}}

/* 2026-08-28 combined hero availability form */
.hero-copy h1{max-width:none;font-size:clamp(3rem,4.3vw,4.3rem)}
.hero-copy h1 span{display:block;white-space:nowrap}
.hero-booking{max-width:590px;margin-top:4px}
.hero-field{display:grid;gap:6px;min-width:0}
.hero-field>span{font-size:.76rem;font-weight:900;letter-spacing:.02em;color:#263b2d}
.hero-address-field{position:relative;min-width:0}
.hero-address-field>#hero-address,.hero-availability-row input{width:100%;min-width:0;border:1px solid #bdcfbd;border-radius:6px;background:#fff;padding:12px 13px;font:inherit;font-size:.9rem;color:var(--ink);box-shadow:0 5px 14px rgba(38,67,43,.04)}
.hero-address-field>#hero-address:focus,.hero-availability-row input:focus{outline:3px solid rgba(30,107,54,.12);border-color:var(--green)}
.hero-availability-row{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:9px;align-items:end;margin-top:9px}
.hero-field--screens input{text-align:center}
.hero-book-button{border:0;cursor:pointer;white-space:nowrap;padding:12px 18px;min-height:47px;align-self:end}
.hero-book-button:disabled{opacity:.7;cursor:wait}
.hero-address-note{font-size:.72rem!important;color:#69766d!important;margin:7px 0 0!important}
.hero-address-note strong{color:#284d33}
.hero-service-status{margin-top:9px;padding:10px 12px;border-radius:7px;display:grid;gap:1px;font-size:.76rem}
.hero-service-status[hidden]{display:none}
.hero-service-status span{color:#5f6b63}
.hero-service-status--local,.hero-service-status--corridor{background:#edf5e9;border:1px solid #c8dbc4}
.hero-service-status--outside{background:#f8f1ed;border:1px solid #e6d0c3}
.hero-tagline{margin-left:0!important}

.pickup-section[hidden]{display:none!important}
.pickup-section--streamlined{max-width:920px;display:block;background:transparent;border:0;border-radius:0;padding:0;margin:0 auto 32px}
.booking-heading{margin:0 0 12px;padding:0 3px}
.booking-heading h2{font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1.05;color:#1b4f2d;margin:0}
.pickup-section--streamlined .booking-shell{width:100%}
.booking-progress.booking-progress--two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:420px}
.booking-progress.booking-progress--two li{font-size:.72rem}
.pickup-section--streamlined .pickup-form,.pickup-section--streamlined .booking-confirmation{padding:26px 28px}
.single-action{justify-content:flex-end}
#qualified-address-line{font-weight:700;color:#425249;margin-bottom:3px}

@media(max-width:900px){
  .hero-copy h1{font-size:clamp(3rem,8.5vw,4.4rem)}
  .hero-copy h1 span{white-space:normal}
  .pickup-section--streamlined{max-width:calc(100% - 52px)}
}
@media(max-width:600px){
  .hero-availability-row{grid-template-columns:1fr 100px}
  .hero-book-button{grid-column:1/-1;justify-content:center}
  .hero-copy h1 span{white-space:normal}
  .pickup-section--streamlined{max-width:calc(100% - 36px)}
  .pickup-section--streamlined .pickup-form,.pickup-section--streamlined .booking-confirmation{padding:20px}
}

/* 2026-08-28 service-area information moved into booking */
.pricing-card--wide{
  margin-top:12px;
  margin-bottom:18px;
  grid-template-columns:.92fr 1.08fr;
  gap:42px;
}

.pickup-section--streamlined{
  max-width:calc(var(--max) - 52px);
}
.booking-layout{
  display:grid;
  grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
  gap:18px;
  align-items:start;
}
.booking-service-summary{
  min-height:100%;
  border:1px solid #dfe7dc;
  border-radius:12px;
  padding:28px 26px;
  background:linear-gradient(145deg,#f3f7ef 0%,#fbfaf5 100%);
  color:#405047;
}
.booking-service-summary .section-kicker{
  margin:0 0 8px;
  color:#53715d;
}
.booking-service-summary h3{
  font-family:Georgia,"Times New Roman",serif;
  color:#1b4f2d;
  font-size:clamp(1.75rem,2.5vw,2.35rem);
  line-height:1.04;
  letter-spacing:-.02em;
  margin:0 0 14px;
}
.booking-area-intro{
  margin:0 0 18px;
  font-size:.86rem;
  line-height:1.55;
  color:#5e6b62;
}
.booking-service-summary ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:15px;
}
.booking-service-summary li{
  position:relative;
  padding-left:24px;
  font-size:.81rem;
  line-height:1.5;
}
.booking-service-summary li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--green);
  font-weight:900;
}
.booking-service-summary li strong{color:#284d33}
.booking-area-note{
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid #d9e3d6;
}
.booking-area-note>span{
  display:grid;
  place-items:center;
  width:27px;
  height:27px;
  flex:0 0 auto;
  border:1.5px solid var(--green);
  border-radius:50%;
  color:var(--green);
  font-weight:900;
}
.booking-area-note p{
  margin:1px 0 0;
  font-size:.77rem;
  line-height:1.45;
  color:#657168;
}
.booking-area-note strong{color:#284d33}
.booking-layout>.booking-confirmation{
  grid-column:2;
}

@media(max-width:900px){
  .pricing-card--wide{grid-template-columns:1fr;gap:18px}
  .booking-layout{grid-template-columns:1fr}
  .booking-service-summary{min-height:auto}
  .booking-layout>.booking-confirmation{grid-column:1}
}


/* Hero service-area card — matched to approved mockup */
.hero-service-area{
  width:100%;
  max-width:590px;
  min-height:164px;
  margin-top:16px;
  padding:20px 22px 18px 24px;
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(210px,.98fr);
  gap:18px;
  align-items:center;
  border:1px solid #d9e2d5;
  border-radius:11px;
  background:linear-gradient(105deg,#f8faf5 0%,#fbfaf6 100%);
  box-shadow:0 7px 18px rgba(29,53,36,.025);
}
.hero-service-area__copy strong{
  display:block;
  margin:0;
  max-width:290px;
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.13rem;
  line-height:1.18;
  letter-spacing:-.018em;
  color:#203a29;
}
.hero-service-area__copy>p{
  margin:11px 0 12px;
  max-width:270px;
  font-size:.84rem;
  line-height:1.48;
  color:#56645a;
}
.hero-service-area__confirm{
  display:flex;
  align-items:flex-start;
  gap:10px;
}
.hero-service-area__confirm>span{
  flex:0 0 20px;
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  margin-top:1px;
  border:1.5px solid #65a374;
  border-radius:50%;
  background:#fff;
  color:#26733d;
  font-size:.72rem;
  font-weight:900;
}
.hero-service-area__confirm p{
  margin:0;
  max-width:245px;
  font-size:.78rem;
  line-height:1.42;
  color:#5b685f;
}
.hero-service-area__graphic{
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
}
.hero-service-area__graphic img{
  display:block;
  width:100%;
  max-width:245px;
  height:auto;
  object-fit:contain;
}
@media(max-width:700px){
  .hero-service-area{
    min-height:0;
    grid-template-columns:1fr;
    padding:18px;
    gap:12px;
  }
  .hero-service-area__graphic{
    justify-content:flex-start;
  }
  .hero-service-area__graphic img{
    max-width:220px;
  }
}

/* Google address suggestions progressively enhance the existing hero input. */
.hero-address-field{position:relative;flex:1 1 auto;min-width:0}
.hero-address-field>#hero-address{width:100%}
.hero-address-suggestions{position:absolute;z-index:40;left:0;right:0;top:calc(100% + 6px);overflow:hidden;border:1px solid #d7e1d5;border-radius:12px;background:#fff;box-shadow:0 16px 34px rgba(24,51,34,.14)}
.hero-address-suggestions[hidden]{display:none}
.hero-address-suggestion{display:block;width:100%;border:0;border-bottom:1px solid #edf1eb;background:#fff;padding:12px 14px;text-align:left;cursor:pointer;color:#1f3427;font:inherit}
.hero-address-suggestion:last-child{border-bottom:0}
.hero-address-suggestion:hover,.hero-address-suggestion:focus-visible,.hero-address-suggestion.is-active{background:#f4f8f2;outline:none}
.hero-address-suggestion strong,.hero-address-suggestion span{display:block}
.hero-address-suggestion strong{font-size:.92rem;line-height:1.3}
.hero-address-suggestion span{margin-top:2px;color:#627067;font-size:.78rem;line-height:1.3}



/* 2026-08-28 inline booking details + dedicated checkout */
.hero-booking-details{
  margin-top:12px;
  border:1px solid #d7e2d4;
  border-radius:10px;
  background:#fbfcf9;
  overflow:hidden;
  box-shadow:0 10px 22px rgba(29,53,36,.045);
}
.hero-booking-details[hidden]{display:none}
.hero-booking-details__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  padding:15px 17px 13px;
  border-bottom:1px solid #e1e8df;
  background:#f3f7ef;
}
.hero-booking-details__head>div{display:grid;gap:3px;min-width:0}
.hero-details-kicker{font-size:.67rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase;color:#52705c}
#qualified-address-line{font-size:.79rem;line-height:1.35;color:#294934}
.hero-change-button{flex:0 0 auto;font-size:.74rem;padding:2px 0}
.pickup-form--hero{
  border:0;
  border-radius:0;
  box-shadow:none;
  padding:16px 17px 17px;
  display:grid;
  gap:14px;
}
.hero-detail-block{display:grid;gap:9px}
.pickup-form--hero .radio-group{margin:0}
.pickup-form--hero .requirements-box--compact{padding:12px 13px}
.pickup-form--hero .requirements-box--compact p{margin:5px 0 0;line-height:1.45}
.hero-contact-grid{grid-template-columns:1fr 1fr}
.hero-contact-grid__name{grid-column:1/-1}
.hero-details-actions{margin-top:0;justify-content:flex-end}
.hero-details-actions .form-primary{margin-left:auto}

.checkout-body{background:#f8faf6;min-height:100vh}
.checkout-header{max-width:1040px;margin:0 auto;height:84px;padding:0 24px;border-bottom:0}
.checkout-main{max-width:840px;margin:0 auto;padding:34px 24px 64px}
.checkout-page-heading{text-align:center;margin:0 auto 24px;max-width:620px}
.checkout-page-heading .section-kicker{margin-bottom:7px}
.checkout-page-heading h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.4rem,5vw,3.5rem);line-height:1;color:#1b4f2d;margin:0 0 10px}
.checkout-page-heading p{margin:0;color:#667168;font-size:.9rem}
.checkout-card{background:#fff;border:1px solid #dfe7dc;border-radius:14px;padding:28px;box-shadow:0 12px 30px rgba(31,57,38,.06)}
.checkout-card .request-summary>div{grid-template-columns:150px 1fr;padding:12px 0}
.checkout-total{font-size:1.1rem!important;color:#1b4f2d}
.checkout-actions{display:flex;gap:12px;align-items:center;margin-top:22px}
.checkout-actions .form-primary{margin-left:auto}
.checkout-back{border:0;background:transparent;color:var(--green);font-weight:800;cursor:pointer;padding:10px 0}
.checkout-error{margin:14px 0 0;color:#8a3328;font-size:.78rem}
.checkout-confirmation{text-align:center;padding:18px 0 2px}
.checkout-confirmation[hidden],.checkout-missing[hidden]{display:none}
.checkout-confirmation .confirmation-mark{margin:0 auto}
.checkout-confirmation h2{font-family:Georgia,"Times New Roman",serif;color:#1b4f2d;font-size:2rem;margin:12px 0 8px}
.checkout-missing{text-align:center;padding:20px 0}
.checkout-missing h2{font-family:Georgia,"Times New Roman",serif;color:#1b4f2d}
@media(max-width:600px){
  .hero-contact-grid{grid-template-columns:1fr}
  .hero-contact-grid__name{grid-column:auto}
  .hero-booking-details__head{padding:13px 14px 12px}
  .pickup-form--hero{padding:14px}
  .checkout-main{padding:22px 18px 48px}
  .checkout-card{padding:20px}
  .checkout-card .request-summary>div{grid-template-columns:1fr;gap:3px}
  .checkout-actions{flex-direction:column-reverse;align-items:stretch}
  .checkout-actions>*{width:100%;margin-left:0!important}
}

.checkout-home-link{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;margin-top:12px}


/* Explicit transition from availability result to the full-width booking details. */
.hero-status-continue{
  display:inline-flex;
  align-items:center;
  gap:6px;
  width:max-content;
  margin-top:7px;
  padding:7px 11px;
  border:1px solid #a8c4ad;
  border-radius:999px;
  background:#fff;
  color:#1e6b36;
  font:inherit;
  font-size:.74rem;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 2px 5px rgba(30,107,54,.04);
}
.hero-status-continue:hover{background:#f7faf5;border-color:#82aa8b}
.hero-status-continue:focus-visible{outline:3px solid rgba(30,107,54,.15);outline-offset:2px}

/* Service-area information follows the booking transition instead of interrupting it. */
.hero-service-area--below{
  width:calc(100% - 52px);
  max-width:920px;
  margin:0 auto 28px;
}
@media(max-width:600px){
  .hero-service-area--below{width:calc(100% - 36px);margin:0 auto 24px}
}
/* Booking details stay in the left hero column without resizing the porch photo. */
.hero-shell>.hero-copy{grid-column:1;grid-row:1}
.hero-shell>.hero-photo-wrap{grid-column:2;grid-row:1}
.hero-shell>.hero-booking-details{
  grid-column:1;
  grid-row:2;
  width:auto;
  max-width:none;
  margin:14px 42px 28px 0;
  border-radius:12px;
}
@media(max-width:900px){
  .hero-shell>.hero-copy,
  .hero-shell>.hero-booking-details,
  .hero-shell>.hero-photo-wrap{grid-column:1;grid-row:auto}
  .hero-shell>.hero-booking-details{width:auto;margin:14px 0 24px}
}

/* Hero state swap: stage two replaces stage one inside the same left column. */
.hero-stage[hidden]{display:none!important}
.hero-stage--availability>p{font-size:1.12rem;max-width:540px;color:#27382d;margin:0 0 28px}
.hero-copy>.hero-booking-details{
  margin:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.hero-copy>.hero-booking-details .hero-booking-details__head{
  padding:3px 0 14px;
  border-bottom:1px solid #dfe7dc;
  background:transparent;
  align-items:flex-start;
}
.hero-copy>.hero-booking-details .hero-booking-details__head h2{
  margin:0 0 6px;
  font-family:Georgia,"Times New Roman",serif;
  color:#18522c;
  font-size:clamp(2rem,3.4vw,2.7rem);
  line-height:1;
  letter-spacing:-.025em;
}
.hero-copy>.hero-booking-details #qualified-address-line{
  display:block;
  max-width:500px;
  font-size:.78rem;
  line-height:1.42;
  color:#476052;
  font-weight:700;
}
.hero-copy>.hero-booking-details .pickup-form--hero{
  padding:14px 0 0;
  gap:11px;
}
.hero-copy>.hero-booking-details .hero-detail-block{gap:7px}
.hero-copy>.hero-booking-details .radio-group{gap:8px}
.hero-copy>.hero-booking-details .radio-card{padding:10px 11px}
.hero-copy>.hero-booking-details .form-note{margin-top:0}
.hero-copy>.hero-booking-details .field-grid{gap:9px}
.hero-copy>.hero-booking-details label{gap:4px}
.hero-copy>.hero-booking-details input,
.hero-copy>.hero-booking-details textarea{padding-top:9px;padding-bottom:9px}
.hero-copy>.hero-booking-details .requirements-box--compact{padding:10px 12px}
.hero-copy>.hero-booking-details .requirements-box--compact p{margin:4px 0 0;font-size:.73rem;line-height:1.38}
.hero-copy>.hero-booking-details .confirm-check{font-size:.73rem;line-height:1.35}
.hero-copy>.hero-booking-details .hero-details-actions{padding-top:1px}
.hero-copy>.hero-booking-details .hero-change-button{white-space:nowrap;margin-top:3px}

/* 2026-08-29 compact one-page hero booking */
.hero-shell{align-items:start}
.hero-copy{align-self:start;padding-top:20px;padding-bottom:18px}
.hero-photo-wrap{height:730px;min-height:0;align-self:start}
.hero-copy>p{margin-bottom:20px}
.hero-benefits--trust{margin-bottom:20px}
.hero-booking{margin-top:0}
.pickup-form--onepage{
  margin-top:12px;
  padding:12px 0 0;
  border:0;
  border-top:1px solid #dfe7dc;
  border-radius:0;
  box-shadow:none;
  background:transparent;
  display:grid;
  gap:10px;
  max-width:590px;
}
.pickup-form--onepage label{gap:4px}
.pickup-form--onepage input,.pickup-form--onepage select{padding:9px 10px}
.compact-two-col,.compact-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}
.compact-contact-grid .compact-email{grid-column:1/-1}
.pickup-form--onepage .requirements-box--onepage{padding:9px 11px}
.pickup-form--onepage .requirements-box--onepage p{margin:3px 0 0;font-size:.7rem;line-height:1.34}
.pickup-form--onepage .requirements-title{font-size:.76rem}
.pickup-form--onepage .confirm-check--onepage{font-size:.7rem!important;line-height:1.3}
.pickup-form--onepage .hero-details-actions{margin-top:0;padding-top:0}
.pickup-form--onepage .form-primary{padding:10px 15px}
.pickup-form--onepage .form-error:not([hidden]){margin-bottom:-2px}
@media(max-width:900px){
  .hero-photo-wrap{height:auto;min-height:390px;align-self:stretch}
}
@media(max-width:600px){
  .compact-two-col,.compact-contact-grid{grid-template-columns:1fr}
  .compact-contact-grid .compact-email{grid-column:auto}
  .pickup-form--onepage{max-width:none}
}



/* 2026-08-29 layout balance pass — keep the entire booking hero visually unified */
.hero-shell{
  align-items:stretch;
  column-gap:0;
}
.hero-copy{
  align-self:stretch;
  padding-top:20px;
  padding-bottom:18px;
}
.hero-visual-column{
  min-width:0;
  align-self:stretch;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  gap:16px;
  padding-top:0;
  padding-bottom:18px;
}
.hero-visual-column .hero-photo-wrap{
  height:100%;
  min-height:690px;
  align-self:stretch;
  border-radius:16px;
  overflow:hidden;
}
.hero-visual-column .hero-photo-wrap img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
}
.hero-visual-column .hero-service-area--below{
  width:100%;
  max-width:none;
  min-height:0;
  margin:0;
  padding:18px 18px 16px;
  grid-template-columns:minmax(0,1.12fr) minmax(170px,.88fr);
  gap:14px;
}
.hero-visual-column .hero-service-area__copy strong{font-size:1.02rem}
.hero-visual-column .hero-service-area__copy>p{margin:8px 0 9px;font-size:.78rem;line-height:1.4}
.hero-visual-column .hero-service-area__confirm p{font-size:.73rem;line-height:1.32}
.hero-visual-column .hero-service-area__graphic img{max-width:205px}

/* Keep paired pickup fields aligned and give instructions a little more breathing room. */
.compact-pickup-row{grid-template-columns:.9fr 1.1fr}
.field-label-line{
  min-width:0;
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:5px;
  min-height:1.25em;
}
.field-label-line .optional{font-size:.7rem;line-height:1;color:#748078}

/* The final action should read as the natural end of the one-page form. */
.pickup-form--onepage .hero-details-actions{display:block;width:100%}
.pickup-form--onepage .form-primary{display:block;width:100%;margin-left:0}

@media(max-width:900px){
  .hero-visual-column{
    display:grid;
    grid-template-rows:auto auto;
    gap:14px;
    padding-bottom:0;
  }
  .hero-visual-column .hero-photo-wrap{
    height:auto;
    min-height:390px;
    aspect-ratio:4/3;
  }
  .hero-visual-column .hero-service-area--below{margin:0 0 24px}
}
@media(max-width:600px){
  .compact-pickup-row{grid-template-columns:1fr}
  .hero-visual-column .hero-service-area--below{grid-template-columns:1fr}
}


/* 2026-08-29 availability gate polish — fixed photo, permanent status, locked details */
.hero-service-status{
  min-height:52px;
  margin-top:9px;
  align-content:center;
}
.hero-service-status--pending{
  background:#e8ede4;
  border:1px solid #cdd7c8;
}
.hero-service-status--pending strong{color:#3b463f}
.hero-service-status--pending span{color:#6f7771}

/* The porch image is intentionally dimensionally independent of booking state. */
.hero-visual-column{grid-template-rows:740px auto;align-self:start}
.hero-visual-column .hero-photo-wrap{
  height:740px;
  min-height:740px;
  max-height:740px;
  align-self:start;
}

/* Details are visible but unavailable until a successful availability check. */
.pickup-form--onepage{
  transition:background-color .16s ease,border-color .16s ease,opacity .16s ease;
}
.pickup-form--onepage.is-locked{
  background:#f1f2ef;
  border-top-color:#d6dad4;
}
.pickup-form--onepage.is-locked label,
.pickup-form--onepage.is-locked .requirements-title,
.pickup-form--onepage.is-locked .requirements-box--onepage p{color:#7c837d}
.pickup-form--onepage.is-locked input:disabled,
.pickup-form--onepage.is-locked select:disabled,
.pickup-form--onepage.is-locked textarea:disabled{
  opacity:1;
  background:#e7e9e6;
  border-color:#d4d8d2;
  color:#858c86;
  -webkit-text-fill-color:#858c86;
  cursor:not-allowed;
}
.pickup-form--onepage.is-locked input:disabled::placeholder,
.pickup-form--onepage.is-locked textarea:disabled::placeholder{color:#9aa09b;opacity:1}
.pickup-form--onepage.is-locked .requirements-box--onepage{
  background:#e7e9e6;
  border-color:#d4d8d2;
}
.pickup-form--onepage.is-locked .form-primary{background:#aeb5af;color:#f6f7f6;opacity:1}
.pickup-form--onepage.is-ready{background:#fff}

@media(max-width:900px){
  .hero-visual-column{grid-template-rows:auto auto}
  .hero-visual-column .hero-photo-wrap{
    height:auto;
    min-height:390px;
    max-height:none;
    aspect-ratio:4/3;
  }
}


/* 2026-08-29 control alignment + right-column turnaround card */
/* Keep the first-step controls on the same visual rhythm as the customer detail fields. */
.hero-address-field>#hero-address,
.hero-availability-row input,
.pickup-form--onepage input:not([type="checkbox"]),
.pickup-form--onepage select{
  height:40px;
  min-height:40px;
  padding:8px 10px;
}
.hero-book-button{
  height:40px;
  min-height:40px;
  padding:0 16px;
}
.hero-field--screens input{text-align:left}

/* Turnaround reassurance now completes the right-hand information stack. */
.hero-visual-column{grid-template-rows:740px auto auto}
.hero-visual-column .guarantee-strip--hero{
  width:100%;
  max-width:none;
  margin:0;
  padding:15px 18px;
  border-radius:12px;
  gap:14px;
  box-shadow:none;
}
.hero-visual-column .guarantee-strip--hero .check-circle{
  width:38px;
  height:38px;
  flex:0 0 38px;
  font-size:1.05rem;
}
.hero-visual-column .guarantee-strip--hero strong{font-size:.92rem;line-height:1.25}
.hero-visual-column .guarantee-strip--hero span{font-size:.76rem;line-height:1.35}

@media(max-width:900px){
  .hero-visual-column{grid-template-rows:auto auto auto}
}


/* 2026-08-29 gated details card polish — elegant rounded container and better nesting */
.pickup-form--onepage{
  margin-top:14px;
  padding:16px 16px 18px;
  border:1px solid #d9e0d7;
  border-radius:14px;
  background:#f6f8f4;
  box-shadow:0 8px 18px rgba(29,53,36,.035);
  gap:13px;
}
.pickup-form--onepage.is-locked{
  background:#eef1ed;
  border-color:#d5dbd3;
}
.pickup-form--onepage.is-ready{
  background:#fff;
  border-color:#dfe7dc;
}
.pickup-form--onepage .compact-two-col,
.pickup-form--onepage .compact-contact-grid{
  gap:12px 18px;
}
.pickup-form--onepage .requirements-box--onepage{
  padding:11px 14px;
  border-radius:12px;
}
.pickup-form--onepage .confirm-check--onepage{
  padding:0 4px;
}
.pickup-form--onepage .hero-details-actions{
  padding-top:2px;
}
@media(max-width:600px){
  .pickup-form--onepage{
    padding:14px;
    gap:12px;
  }
  .pickup-form--onepage .compact-two-col,
  .pickup-form--onepage .compact-contact-grid{
    gap:10px;
  }
}


/* 2026-08-29 final hero polish — remove extra header CTA, tune guarantee icon/text */
.guarantee-icon{
  width:20px;
  height:20px;
  display:block;
}
.guarantee-copy .guarantee-line-2{
  display:block;
  margin-top:2px;
}
.hero-visual-column .guarantee-strip--hero .check-circle{
  background:#f7fbf4;
  border-color:#b8cfbb;
}
.hero-visual-column .guarantee-strip--hero .guarantee-icon{
  width:18px;
  height:18px;
}


/* 2026-08-29 matched reassurance cards — larger turnaround mark + tighter copy */
.hero-visual-column .hero-service-area--below,
.hero-visual-column .guarantee-strip--hero{
  min-height:132px;
}
.hero-visual-column .guarantee-strip--hero{
  padding:18px 20px;
  gap:18px;
  align-items:center;
}
.hero-visual-column .guarantee-strip--hero .check-circle{
  width:60px;
  height:60px;
  flex:0 0 60px;
  border-width:1.5px;
}
.hero-visual-column .guarantee-strip--hero .guarantee-icon{
  width:30px;
  height:30px;
}
.hero-visual-column .guarantee-strip--hero strong{
  font-size:.96rem;
  line-height:1.25;
}
.hero-visual-column .guarantee-strip--hero span{
  font-size:.78rem;
  line-height:1.4;
}
.guarantee-copy .guarantee-line-2{
  margin-top:4px;
}
@media(max-width:600px){
  .hero-visual-column .hero-service-area--below,
  .hero-visual-column .guarantee-strip--hero{min-height:0}
  .hero-visual-column .guarantee-strip--hero .check-circle{
    width:54px;
    height:54px;
    flex-basis:54px;
  }
  .hero-visual-column .guarantee-strip--hero .guarantee-icon{
    width:27px;
    height:27px;
  }
}


/* 2026-08-29 reassurance card match pass — stopwatch mark, serif title, tighter height */
.hero-visual-column .guarantee-strip--hero{
  min-height:0;
  padding:14px 18px;
  gap:16px;
  align-items:center;
}
.hero-visual-column .guarantee-strip--hero .guarantee-mark{
  display:grid;
  place-items:center;
  width:74px;
  flex:0 0 74px;
  align-self:center;
}
.hero-visual-column .guarantee-strip--hero .guarantee-icon{
  display:block;
  width:62px;
  height:62px;
}
.hero-visual-column .guarantee-strip--hero .guarantee-copy{
  display:grid;
  gap:2px;
}
.hero-visual-column .guarantee-strip--hero strong{
  font-family:Georgia,"Times New Roman",serif;
  font-size:1.02rem;
  line-height:1.18;
  letter-spacing:-.018em;
  color:#203a29;
}
.hero-visual-column .guarantee-strip--hero span{
  font-size:.76rem;
  line-height:1.34;
  color:#56645a;
}
.hero-visual-column .guarantee-strip--hero .guarantee-line-2{
  display:block;
  margin-top:3px;
}
.hero-visual-column .guarantee-strip--hero b{
  color:var(--green);
}
@media(max-width:600px){
  .hero-visual-column .guarantee-strip--hero{
    padding:14px 16px;
    gap:14px;
  }
  .hero-visual-column .guarantee-strip--hero .guarantee-mark{
    width:64px;
    flex-basis:64px;
  }
  .hero-visual-column .guarantee-strip--hero .guarantee-icon{
    width:54px;
    height:54px;
  }
}


/* 2026-08-29 final detail polish — keep confirmation on one line + angled stopwatch ticks */
@media(min-width:1050px){
  .pickup-form--onepage .confirm-check--onepage{
    padding-left:0;
    padding-right:0;
    gap:5px!important;
    white-space:nowrap;
  }
  .pickup-form--onepage .confirm-check--onepage input{
    flex:0 0 auto;
    margin-left:0;
    margin-right:0;
  }
}
.hero-visual-column .guarantee-strip--hero .guarantee-icon{
  transform:rotate(-7deg);
  transform-origin:50% 52%;
}


/* 2026-08-29 micro polish — stronger stopwatch tilt and cleaner confirm alignment */
.hero-visual-column .guarantee-strip--hero .guarantee-mark{
  width:78px;
  flex-basis:78px;
}
.hero-visual-column .guarantee-strip--hero .guarantee-icon{
  width:66px;
  height:66px;
  transform:rotate(-14deg);
  transform-origin:50% 52%;
}
@media(max-width:600px){
  .hero-visual-column .guarantee-strip--hero .guarantee-mark{
    width:68px;
    flex-basis:68px;
  }
  .hero-visual-column .guarantee-strip--hero .guarantee-icon{
    width:58px;
    height:58px;
  }
}
@media(min-width:1050px){
  .pickup-form--onepage .confirm-check--onepage{
    align-items:center;
  }
  .pickup-form--onepage .confirm-check--onepage input{
    margin-top:0;
    position:relative;
    top:-1px;
  }
}


/* 2026-08-29 micro polish 2 — larger/leaner stopwatch + equalized availability spacing */
.hero-booking{
  margin-top:0;
}
.hero-service-status{
  margin-top:14px;
}
.hero-visual-column .guarantee-strip--hero{
  padding:14px 18px 14px 14px;
}
.hero-visual-column .guarantee-strip--hero .guarantee-mark{
  width:70px;
  flex:0 0 70px;
  justify-items:start;
}
.hero-visual-column .guarantee-strip--hero .guarantee-icon{
  width:70px;
  height:70px;
  transform:none;
}
@media(max-width:600px){
  .hero-service-status{
    margin-top:12px;
  }
  .hero-visual-column .guarantee-strip--hero .guarantee-mark{
    width:62px;
    flex-basis:62px;
  }
  .hero-visual-column .guarantee-strip--hero .guarantee-icon{
    width:62px;
    height:62px;
  }
}


/* 2026-08-29 micro polish 3 — slightly leaner cards for bottom alignment */
.hero-visual-column .hero-service-area--below{
  padding:16px 17px 14px;
  gap:12px;
}
.hero-visual-column .hero-service-area__copy>p{
  margin:7px 0 8px;
}
.hero-visual-column .hero-service-area__graphic img{
  max-width:198px;
}
.hero-visual-column .guarantee-strip--hero{
  padding:12px 18px 12px 12px;
  gap:14px;
}
.hero-visual-column .guarantee-strip--hero .guarantee-mark{
  width:72px;
  flex:0 0 72px;
  align-self:stretch;
  align-items:center;
  justify-items:start;
}
.hero-visual-column .guarantee-strip--hero .guarantee-icon{
  width:72px;
  height:72px;
}
.hero-visual-column .guarantee-strip--hero .guarantee-copy{
  gap:1px;
}
.hero-visual-column .guarantee-strip--hero .guarantee-line-2{
  margin-top:2px;
}
@media(max-width:600px){
  .hero-visual-column .hero-service-area--below{
    padding:15px 15px 14px;
  }
  .hero-visual-column .guarantee-strip--hero{
    padding:12px 16px 12px 12px;
  }
  .hero-visual-column .guarantee-strip--hero .guarantee-mark{
    width:64px;
    flex-basis:64px;
  }
  .hero-visual-column .guarantee-strip--hero .guarantee-icon{
    width:64px;
    height:64px;
  }
}


/* 2026-08-29 final alignment pass — trim right stack + settle checkbox baseline */
@media(min-width:901px){
  .hero-visual-column{
    gap:14px;
  }
  .hero-visual-column .hero-service-area--below{
    padding-top:15px;
    padding-bottom:13px;
  }
  .hero-visual-column .guarantee-strip--hero{
    padding-top:11px;
    padding-bottom:11px;
  }
}
@media(min-width:1050px){
  .pickup-form--onepage .confirm-check--onepage input{
    top:1px;
  }
}


/* 2026-08-29 hierarchy + final column alignment */
/* Labels carry the hierarchy; customer-entered values stay regular weight. */
.pickup-form--onepage label,
.pickup-form--onepage .field-label-line{
  font-weight:800;
}
.pickup-form--onepage input:not([type="checkbox"]),
.pickup-form--onepage select,
.pickup-form--onepage textarea{
  font-weight:400;
}
.pickup-form--onepage input:not([type="checkbox"])::placeholder,
.pickup-form--onepage textarea::placeholder{
  font-weight:400;
}
/* The right stack was only a few pixels longer; trim the two inter-card gaps. */
@media(min-width:901px){
  .hero-visual-column{
    gap:12px;
  }
}


/* 2026-08-29 final-final micro alignment — add back a hair to right column */
@media(min-width:901px){
  .hero-visual-column{
    gap:13px;
  }
  .hero-visual-column .guarantee-strip--hero{
    padding-bottom:12px;
  }
}


/* 2026-08-29 ready-state hierarchy — keep outer card gray, reveal white fields */
.pickup-form--onepage.is-ready{
  background:#eef1ed;
  border-color:#d5dbd3;
}
.pickup-form--onepage.is-ready input:not([type="checkbox"]),
.pickup-form--onepage.is-ready select,
.pickup-form--onepage.is-ready textarea{
  background:#fff;
  border-color:#cad7c9;
}


/* 2026-08-29 unified card palette — details shell matches Serving card */
.pickup-form--onepage,
.pickup-form--onepage.is-locked,
.pickup-form--onepage.is-ready{
  background:linear-gradient(105deg,#f8faf5 0%,#fbfaf6 100%);
  border-color:#d9e2d5;
}
.pickup-form--onepage.is-ready input:not([type="checkbox"]),
.pickup-form--onepage.is-ready select,
.pickup-form--onepage.is-ready textarea{
  background:#fff;
  border-color:#cad7c9;
}


/* 2026-08-29 structural equal-height hero + footer brand match */
.footer-brand{
  gap:8px;
}
.footer-brand-mark{
  display:flex;
  align-items:center;
  gap:10px;
  text-decoration:none;
}
.footer-brand .brand-icon.small{
  width:32px;
  height:32px;
  flex:0 0 32px;
}
.brand-name--footer{
  font-size:.68rem;
  line-height:.92;
  letter-spacing:.01em;
}
.footer-brand small{
  margin-top:2px;
  margin-left:42px;
}
@media(max-width:600px){
  .footer-brand small{
    margin-left:0;
  }
}

@media(min-width:901px){
  .hero-shell{
    align-items:stretch;
  }
  .hero-copy{
    align-self:stretch;
    display:flex;
    flex-direction:column;
  }
  .hero-visual-column{
    height:100%;
    align-self:stretch;
    display:grid;
    grid-template-rows:740px auto minmax(0,1fr);
    gap:13px;
  }
  .hero-visual-column .hero-photo-wrap{
    height:740px;
    min-height:740px;
    max-height:740px;
  }
  .hero-visual-column .hero-service-area--below{
    margin:0;
  }
  .hero-visual-column .guarantee-strip--hero{
    height:100%;
    min-height:0;
    display:flex;
    align-items:center;
  }
}
