/* Hot Mess Haulin — additions: text-a-photo buttons, junk removal price calculator, item lists, link cards, notes. */

/* Text-a-photo button (3rd button beside Call Jess / Book Now) */
.brand-button--text{background:var(--gold);color:var(--ink)}
.brand-button--text:hover{background:#e3bb66}
@media (max-width:820px){.conversion-buttons .brand-button--text{grid-column:1/-1}}

/* Junk removal price calculator */
.hm-calc{display:grid;grid-template-columns:1.25fr .75fr;gap:0;border:2px solid var(--ink);border-radius:1.4rem;overflow:hidden;background:#fff;box-shadow:7px 7px 0 var(--hot-pink)}
.hm-calc__controls{padding:clamp(1.25rem,3.5vw,2.25rem)}
.hm-calc__label{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin:0 0 .9rem;font:800 .78rem/1.2 "DM Sans",sans-serif;letter-spacing:.1em;text-transform:uppercase}
.hm-calc__label output{font:900 1.6rem/1 Figtree,sans-serif;letter-spacing:-.03em;text-transform:none;color:var(--hot-pink)}
.hm-calc input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:12px;border-radius:999px;background:linear-gradient(90deg,var(--hot-pink) var(--fill,0%),#eadde3 var(--fill,0%));outline:none;cursor:pointer;margin:.4rem 0}
.hm-calc input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:30px;height:30px;border-radius:50%;background:#fff;border:3px solid var(--ink);box-shadow:3px 3px 0 var(--gold);cursor:grab}
.hm-calc input[type=range]::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:#fff;border:3px solid var(--ink);box-shadow:3px 3px 0 var(--gold);cursor:grab}
.hm-calc input[type=range]:focus-visible{box-shadow:0 0 0 4px rgba(216,27,96,.3)}
.hm-calc__ticks{display:flex;justify-content:space-between;font-size:.78rem;font-weight:700;color:#7a6c75;margin-bottom:1.4rem}
.hm-calc__example{margin:0 0 1.4rem;padding:.9rem 1rem;border-radius:.9rem;background:var(--paper);font-weight:600}
.hm-calc__example strong{display:block;font:800 .72rem/1.3 "DM Sans",sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--hot-pink-deep);margin-bottom:.2rem}
.hm-calc__mattress{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.hm-calc__mattress span{font-weight:700}
.hm-calc__mattress small{display:block;font-weight:600;color:#7a6c75}
.hm-stepper{display:inline-flex;align-items:center;border:2px solid var(--ink);border-radius:999px;overflow:hidden}
.hm-stepper button{width:2.6rem;height:2.6rem;border:0;background:#fff;font:900 1.3rem/1 Figtree,sans-serif;cursor:pointer;color:var(--ink)}
.hm-stepper button:hover{background:var(--paper)}
.hm-stepper button:disabled{opacity:.35;cursor:default}
.hm-stepper output{min-width:2.4rem;text-align:center;font:900 1.15rem/1 Figtree,sans-serif}
.hm-calc__result{background:var(--ink);color:#fff;padding:clamp(1.25rem,3.5vw,2.25rem);display:flex;flex-direction:column;justify-content:center;gap:.4rem}
.hm-calc__result .eyebrow{color:#ff7faf}
.hm-calc__total{font:950 clamp(3rem,6vw,4.6rem)/1 Figtree,sans-serif;letter-spacing:-.05em;color:#fff;margin:.2rem 0}
.hm-calc__breakdown{margin:0;color:#d8ccd5;font-size:.95rem}
.hm-calc__fine{margin:.8rem 0 1rem;color:#d8ccd5;font-size:.85rem;line-height:1.45}
.hm-calc__result .conversion-buttons{margin-top:.4rem}
@media (max-width:820px){.hm-calc{grid-template-columns:1fr}}

/* Price-per-yard table (pricing page) */
.hm-yard-table td:first-child,.hm-yard-table th:first-child{white-space:nowrap}

/* Long "what we take" list */
.hm-take-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:1rem}
.hm-take-list{columns:2;column-gap:2rem;list-style:none;padding:0;margin:1.2rem 0 0}
.hm-take-list li{break-inside:avoid;display:flex;gap:.55rem;align-items:flex-start;padding:.35rem 0;font-weight:600}
.hm-take-list li svg{width:1rem;height:1rem;flex:none;margin-top:.25rem;color:var(--gold)}
.material-card--no .hm-take-list{columns:1}
.material-card--no .hm-take-list li svg{color:var(--ink)}
.hm-take-note{margin:1.2rem 0 0;font-size:.92rem;opacity:.85}
@media (max-width:820px){.hm-take-grid{grid-template-columns:1fr}}
@media (max-width:480px){.hm-take-list{columns:1}}

/* Link cards (specialty services) */
.hm-link-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.hm-link-card{display:flex;flex-direction:column;gap:.5rem;background:var(--paper);border:1px solid #e4d4dc;border-radius:1.1rem;padding:1.4rem;color:inherit;text-decoration:none;transition:transform .18s var(--ease-out),box-shadow .18s var(--ease-out)}
.hm-link-card:hover{box-shadow:7px 7px 0 var(--hot-pink);transform:translateY(-4px)}
.hm-link-card>svg{width:2rem;height:2rem;color:var(--hot-pink)}
.hm-link-card h3{margin:.3rem 0 0;font:900 1.35rem/1.1 Figtree,sans-serif;letter-spacing:-.03em}
.hm-link-card p{margin:0;color:#5f555d}
.hm-link-card span{margin-top:auto;padding-top:.6rem;font-weight:800;color:var(--hot-pink-deep)}
.section--ink .hm-link-card{background:#281f27;border-color:#493a46}
.section--ink .hm-link-card p{color:#d8ccd5}
.section--ink .hm-link-card span{color:#ff7faf}
@media (max-width:960px){.hm-link-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.hm-link-grid{grid-template-columns:1fr}}

/* Price band (junk removal page / service pages) */
.hm-price-band{display:grid;grid-template-columns:1fr auto;gap:1.5rem;align-items:center;background:var(--ink);color:#fff;border-radius:1.4rem;padding:clamp(1.4rem,4vw,2.4rem);box-shadow:7px 7px 0 var(--gold)}
.hm-price-band h2{margin:.6rem 0 .5rem;font:900 clamp(2rem,4.4vw,3.4rem)/1 Figtree,sans-serif;letter-spacing:-.05em}
.hm-price-band h2 em{font-style:normal;color:#ff7faf}
.hm-price-band p{margin:0;color:#d8ccd5;max-width:640px}
.hm-price-band .eyebrow{color:#ff7faf}
@media (max-width:820px){.hm-price-band{grid-template-columns:1fr}}

/* Homepage junk removal strip under the dumpster sizes */
.hm-junk-strip{margin-top:1.5rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem 1.5rem;background:var(--paper);border:2px solid var(--ink);border-radius:1.2rem;padding:1.2rem 1.4rem}
.hm-junk-strip p{margin:0;font-weight:600}
.hm-junk-strip strong{font:900 1.5rem/1 Figtree,sans-serif;color:var(--hot-pink)}
.hm-junk-strip__links{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem}

/* Advice / safety note */
.hm-note{display:flex;gap:.9rem;align-items:flex-start;margin-top:1.5rem;padding:1.1rem 1.3rem;border-radius:1rem;background:#fff4dc;border:1px solid #ecd39a;color:var(--ink)}
.hm-note svg{width:1.4rem;height:1.4rem;flex:none;color:#a5741a;margin-top:.1rem}
.hm-note p{margin:0}

/* Lago Vista city-vs-crew comparison */
.hm-vs .comparison-section__grid article:first-child li svg{color:#8b7d86}
.hm-vs__source{margin-top:1.2rem;font-size:.85rem;color:#6b5f67}
.hm-vs__source a{text-decoration:underline}

/* Footer services list gets longer — keep it tidy */
.site-footer__grid .hm-footer-sub{display:block;font-size:.9em;opacity:.85}

/* Real job before & after gallery */
.hm-ba-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.hm-ba{display:grid;grid-template-columns:1fr;gap:.55rem;margin:0;align-content:start}
.hm-ba__img{position:relative;margin:0;border-radius:1rem;overflow:hidden;border:2px solid var(--ink);background:#2b222a;aspect-ratio:4/3}
.hm-ba__img img{width:100%;height:100%;object-fit:cover;display:block}
.hm-ba__img span{position:absolute;top:.6rem;left:.6rem;padding:.25rem .7rem;border-radius:999px;font:800 .72rem/1.4 Figtree,sans-serif;letter-spacing:.1em;text-transform:uppercase;background:var(--ink);color:#fff;border:1px solid rgba(255,255,255,.35)}
.hm-ba__img--after span{background:var(--hot-pink)}
.hm-ba figcaption{grid-column:1/-1;font-weight:800;font-size:1rem;color:#5f555d;order:-1}
.section--ink .hm-ba figcaption{color:#fff}
.section--ink .hm-ba__img{border-color:#493a46}
@media (max-width:1100px){.hm-ba-grid{grid-template-columns:1fr 1fr}}
@media (max-width:700px){.hm-ba-grid{grid-template-columns:1fr}.hm-ba{grid-template-columns:1fr 1fr}}

/* Crew photo: keep the team member's face in frame at every screen size */
.local-service-grid img[src*="hot-mess-crew-photo"]{object-fit:cover!important;object-position:32% 40%!important}
@media (max-width:1050px){
  .service-card>img{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:4/3;opacity:1!important;margin-top:1.25rem;border-radius:1rem;filter:none;object-fit:cover!important}
  .service-card>img[src*="hot-mess-crew-photo"]{object-position:center 40%!important}
}

/* Desktop homepage crew photo: show the whole frame instead of cutting it at the card edge */
@media (min-width:1051px){
  .service-card>img[src*="hot-mess-crew-photo"]{object-fit:cover!important;object-position:center 40%!important;width:calc(100% - 1.75rem)!important;height:auto!important;aspect-ratio:4/3;align-self:end;margin:0 1.75rem 1.75rem 0;border-radius:1rem;filter:drop-shadow(0 16px 22px #00000042)}
}
