
:root{--ink:#102321;--muted:#5a6a67;--paper:#f5f1e8;--white:#fffefa;--line:#d8d0bf;--deep:#12312f;--green:#1f5951;--orange:#c75f35;--gold:#d89537;--foam:#dfeee9;--shadow:0 22px 60px rgba(16,35,33,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}a{text-decoration:none;color:inherit}p{color:var(--muted);font-size:1.05rem;line-height:1.7}.topbar{background:var(--deep);color:#fff;padding:.55rem 1rem;text-align:center;font-size:.9rem;font-weight:800}.site-header{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:auto 1fr auto;gap:1rem;align-items:center;padding:.85rem clamp(1rem,4vw,3rem);background:#fffefaf2;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:.7rem}.mark{display:grid;place-items:center;width:46px;height:46px;border-radius:10px;background:linear-gradient(135deg,var(--deep),var(--green));color:#fff;font-weight:1000}.logo-mark{display:block;width:220px;max-width:44vw;height:auto}.brand strong,.brand span{display:block}.brand span{font-size:.82rem;color:var(--muted);font-weight:700}.site-header nav{display:flex;justify-content:center;gap:1rem;font-size:.9rem;font-weight:800;color:#556}.site-header nav a:hover{color:var(--orange)}.call-btn,.primary,.form button,.mobile-call{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:52px;padding:.9rem 1.1rem;border-radius:10px;background:var(--orange);color:white;font-weight:1000;border:0;cursor:pointer}.call-btn{min-height:46px}.hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.72fr);gap:clamp(1.5rem,5vw,4rem);padding:clamp(2.4rem,6vw,5.5rem) clamp(1rem,5vw,4rem);background:linear-gradient(110deg,rgba(18,49,47,.96),rgba(31,89,81,.9)),radial-gradient(circle at 78% 18%,rgba(216,149,55,.32),transparent 32%);color:white}.eyebrow{display:inline-flex;color:#f7c16d;font-weight:1000;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem}.hero h1{max-width:850px;margin:1rem 0;font-size:clamp(2.45rem,7vw,5.7rem);line-height:.95;letter-spacing:-.06em}.hero p{max-width:760px;color:#fffef0d8;font-size:clamp(1.05rem,2vw,1.22rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:.85rem;margin:1.6rem 0}.secondary{display:inline-flex;align-items:center;min-height:52px;padding:.85rem 1.1rem;border:1px solid rgba(255,255,255,.35);border-radius:10px;color:white;font-weight:900}.badges{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:1.5rem}.badges span{border:1px solid rgba(255,255,255,.24);border-radius:999px;padding:.52rem .72rem;color:#fffef0e8;font-weight:800;font-size:.9rem}.form{display:grid;gap:.8rem;padding:1.15rem;border-radius:16px;background:var(--white);box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.3)}.form h2{margin:0;color:var(--deep);font-size:1.35rem}.form p{margin:.1rem 0 .4rem;font-size:.9rem}.form label{display:grid;gap:.32rem;color:var(--ink);font-size:.84rem;font-weight:900}.form input,.form select,.form textarea{width:100%;min-height:46px;border:1px solid var(--line);border-radius:10px;background:#fbfaf5;color:var(--ink);padding:.75rem;font:inherit}.form textarea{resize:vertical}.small{font-size:.78rem!important;line-height:1.45!important}.hp{display:none}.trust{display:grid;grid-template-columns:repeat(4,1fr);background:var(--white);border-bottom:1px solid var(--line)}.trust div{padding:1.2rem;text-align:center;border-right:1px solid var(--line)}.trust strong{display:block;color:var(--deep);font-size:1.45rem}.trust span{color:var(--muted);font-weight:850;font-size:.84rem}.section{padding:clamp(2.5rem,7vw,5rem) clamp(1rem,5vw,4rem)}.split{display:grid;grid-template-columns:.8fr 1fr;gap:2rem;align-items:start}.panel{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:clamp(1.2rem,3vw,2rem)}h2{font-size:clamp(1.8rem,4vw,3.2rem);line-height:1.02;letter-spacing:-.04em;margin:0 0 1rem}h3{font-size:1.35rem;margin:.85rem 0 .35rem}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.service-card{display:block;min-height:245px;background:var(--white);border:1px solid var(--line);border-radius:16px;padding:1.2rem;transition:.18s ease}.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.service-card span{font-weight:1000;color:var(--orange)}.area{background:var(--deep);color:white}.area p{color:#fffef0c8}.cloud{display:flex;flex-wrap:wrap;gap:.7rem}.cloud a{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);border-radius:10px;padding:.75rem .9rem;color:white;font-weight:900}.reviews{display:grid;grid-template-columns:1fr 1.1fr .9fr;gap:1rem}blockquote{margin:0;background:var(--white);border-left:6px solid var(--gold);border-radius:16px;padding:1.25rem}cite{display:block;margin-top:.8rem;color:var(--deep);font-style:normal;font-weight:1000}.faq{display:grid;gap:.75rem}details{background:var(--white);border:1px solid var(--line);border-radius:14px}summary{padding:1rem;cursor:pointer;font-weight:1000}details p{margin:0;padding:0 1rem 1rem}.links-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem;list-style:none;padding:0;margin:1rem 0 0}.links-grid a{display:block;background:#fff;border:1px solid var(--line);border-radius:10px;padding:.75rem;font-weight:850}.final{background:var(--foam);text-align:center}.final p{max-width:720px;margin:0 auto 1.2rem}footer{padding:2.5rem clamp(1rem,5vw,4rem) 5rem;background:#142523;color:#fff}.footer-grid{display:grid;grid-template-columns:1.3fr .7fr .8fr;gap:2rem}footer p{color:#ffffffb8}footer a{display:block;margin:.4rem 0;color:#ffffffd6}.mobile-call{display:none;position:fixed;bottom:1rem;left:1rem;right:1rem;z-index:40;box-shadow:0 18px 40px rgba(0,0,0,.25)}@media(max-width:980px){.site-header{grid-template-columns:1fr auto}.site-header nav{display:none}.hero,.split,.reviews,.footer-grid{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.trust{grid-template-columns:repeat(2,1fr)}.visual-strip{grid-template-columns:1fr}.logo-mark{width:190px}}@media(max-width:640px){body{padding-bottom:74px}.topbar{font-size:.78rem}.call-btn{display:none}.hero{grid-template-columns:1fr}.hero-actions a{width:100%}.cards,.trust,.links-grid{grid-template-columns:1fr}.mobile-call{display:flex}.site-header{position:relative}.brand span:not(.brand span span){display:none}.logo-mark{width:170px;max-width:70vw}.brand{min-width:0}}
.visual-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:clamp(1.25rem,4vw,2.5rem) clamp(1rem,5vw,4rem);background:#fffefa;border-bottom:1px solid var(--line)}.visual-card{background:#fbfaf5;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 14px 34px rgba(16,35,33,.08)}.visual-card img{display:block;width:100%;height:auto}.visual-card h3{padding:0 1rem;margin:1rem 0 .25rem}.visual-card p{padding:0 1rem 1rem;margin:0;font-size:.95rem}.hero{background-image:linear-gradient(110deg,rgba(18,49,47,.96),rgba(31,89,81,.88)),url('/assets/emergency-water-removal.svg');background-size:cover;background-position:center}.brand{min-width:230px}
/* Photo and brand refinements */
.logo-mark{width:48px!important;height:48px!important;max-width:48px!important;flex:0 0 48px}.brand>span>strong{font-size:1.02rem;color:var(--deep);line-height:1.1}.hero{background-image:linear-gradient(110deg,rgba(18,49,47,.94),rgba(31,89,81,.84)),url('/assets/leaking-pipe.jpg')!important;background-size:cover!important;background-position:center!important}.visual-card img{height:210px;object-fit:cover}.service-card{overflow:hidden;padding:0}.service-card::before{content:"";display:block;height:132px;background-size:cover;background-position:center;border-bottom:1px solid var(--line)}.service-card[href*="emergency-water-removal"]::before,.service-card[href*="burst-pipe"]::before{background-image:linear-gradient(rgba(18,49,47,.08),rgba(18,49,47,.08)),url('/assets/leaking-pipe.jpg')}.service-card[href*="flood-cleanup"]::before,.service-card[href*="odessa"]::before,.service-card[href*="lutz"]::before,.service-card[href*="land-o-lakes"]::before,.service-card[href*="wesley-chapel"]::before{background-image:linear-gradient(rgba(18,49,47,.08),rgba(18,49,47,.08)),url('/assets/flooded-home.jpg')}.service-card[href*="mold-remediation"]::before{background-image:linear-gradient(rgba(18,49,47,.08),rgba(18,49,47,.08)),url('/assets/mold-water-room.jpg')}.service-card[href*="ceiling-leak"]::before,.service-card[href*="water-damage-restoration-trinity"]::before{background-image:linear-gradient(rgba(18,49,47,.08),rgba(18,49,47,.08)),url('/assets/damaged-room.jpg')}.service-card span,.service-card h3,.service-card p{display:block;margin-left:1.2rem;margin-right:1.2rem}.service-card span{margin-top:1rem}.service-card p{margin-bottom:1.2rem}.brand span{font-size:inherit}@media(max-width:640px){.logo-mark{width:44px!important;height:44px!important}.brand>span>strong{font-size:.95rem}.visual-card img{height:180px}.service-card::before{height:120px}}

/* Mobile layout hardening */
img,svg,video{max-width:100%;height:auto}
main,section,header,footer{max-width:100%;overflow-x:hidden}
@media(max-width:760px){
  .topbar{padding:.55rem .75rem;line-height:1.35}
  .site-header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.7rem .85rem;min-width:0}
  .brand{min-width:0!important;max-width:100%;gap:.55rem;flex:1 1 auto;overflow:hidden}
  .brand>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:normal}
  .brand>span>strong{font-size:.9rem;line-height:1.05;letter-spacing:-.02em}
  .logo-mark{width:40px!important;height:40px!important;max-width:40px!important;flex:0 0 40px!important}
  .hero{padding:2rem .9rem 1.35rem;gap:1rem;background-position:center top!important}
  .hero h1{font-size:clamp(2rem,13vw,3.25rem);line-height:.98;letter-spacing:-.045em;margin:.7rem 0}
  .hero p{font-size:1rem;line-height:1.55;margin:.5rem 0}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:.65rem;margin:1rem 0}
  .primary,.secondary,.form button{width:100%;min-height:50px;text-align:center;padding:.85rem .9rem}
  .badges{gap:.45rem;margin-top:1rem}
  .badges span{font-size:.78rem;padding:.44rem .58rem}
  .form{padding:1rem;border-radius:14px;gap:.65rem;width:100%;max-width:100%;box-shadow:0 12px 32px rgba(16,35,33,.16)}
  .form h2{font-size:1.15rem;line-height:1.15}
  .form input,.form select,.form textarea{min-height:44px;font-size:16px;padding:.68rem}
  .trust div{padding:1rem .75rem;border-right:0;border-bottom:1px solid var(--line)}
  .trust strong{font-size:1.2rem}
  .section{padding:2rem .9rem}
  h2{font-size:clamp(1.65rem,8.5vw,2.35rem);line-height:1.05;letter-spacing:-.035em}
  h3{font-size:1.15rem;line-height:1.2}
  p{font-size:1rem;line-height:1.6}
  .panel{padding:1rem;border-radius:14px}
  .cards{gap:.85rem}
  .service-card{min-height:0;border-radius:14px}
  .service-card::before{height:105px!important}
  .service-card span,.service-card h3,.service-card p{margin-left:1rem;margin-right:1rem}
  .visual-strip{grid-template-columns:1fr!important;padding:1rem .9rem;gap:.85rem}
  .visual-card img{height:155px!important;object-fit:cover}
  .cloud a,.links-grid a{width:100%;padding:.8rem;font-size:.95rem}
  blockquote{padding:1rem;border-radius:14px}
  summary{padding:.9rem;line-height:1.25}
  .footer-grid{gap:1rem}
  footer{padding:2rem .9rem 5.5rem}
}
@media(max-width:380px){
  .topbar{font-size:.72rem}
  .hero h1{font-size:2rem}
  .badges span{font-size:.72rem}
  .brand>span>strong{font-size:.84rem}
}

/* Mobile layout fixes */
@media (max-width: 760px) {
  .topbar {
    padding: .5rem .75rem;
    font-size: .72rem;
    line-height: 1.25;
  }

  .site-header {
    position: sticky;
    top: 0;
    grid-template-columns: minmax(0, 1fr);
    gap: .45rem;
    padding: .65rem .85rem;
  }

  .brand {
    min-width: 0 !important;
    max-width: 100%;
    gap: .55rem;
  }

  .brand > span {
    min-width: 0;
  }

  .brand > span > strong {
    display: block;
    font-size: .92rem;
    line-height: 1.12;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  .logo-mark {
    width: 38px !important;
    height: 38px !important;
    max-width: 38px !important;
  }

  .hero {
    padding: 1.5rem .9rem 1.1rem;
    gap: 1rem;
    min-height: auto;
    background-position: 42% center !important;
  }

  .hero h1 {
    font-size: clamp(2rem, 12vw, 3.15rem);
    line-height: .98;
    letter-spacing: -.045em;
    margin: .65rem 0;
  }

  .hero p {
    font-size: 1rem;
    line-height: 1.55;
    margin: .65rem 0;
  }

  .hero-actions {
    display: grid;
    grid-template-columns: 1fr;
    gap: .65rem;
    margin: 1rem 0;
  }

  .primary,
  .secondary,
  .form button {
    width: 100%;
    min-height: 48px;
    padding: .78rem .9rem;
    text-align: center;
  }

  .badges {
    gap: .4rem;
    margin-top: .9rem;
  }

  .badges span {
    font-size: .76rem;
    padding: .42rem .55rem;
  }

  .form {
    padding: .95rem;
    border-radius: 14px;
    gap: .65rem;
  }

  .form h2 {
    font-size: 1.18rem;
  }

  .form input,
  .form select,
  .form textarea {
    min-height: 44px;
    padding: .65rem;
    font-size: 16px;
  }

  .trust div {
    padding: .9rem .75rem;
  }

  .trust strong {
    font-size: 1.15rem;
  }

  .visual-strip {
    grid-template-columns: 1fr;
    padding: 1rem .9rem;
    gap: .8rem;
  }

  .visual-card img {
    height: 165px;
  }

  .section {
    padding: 2rem .9rem;
  }

  h2 {
    font-size: clamp(1.65rem, 8vw, 2.25rem);
    line-height: 1.06;
  }

  h3 {
    font-size: 1.15rem;
  }

  p {
    font-size: .98rem;
    line-height: 1.6;
  }

  .split,
  .reviews,
  .footer-grid {
    gap: 1rem;
  }

  .panel,
  blockquote {
    padding: 1rem;
    border-radius: 14px;
  }

  .cards {
    gap: .85rem;
  }

  .service-card {
    min-height: 0;
  }

  .service-card::before {
    height: 105px;
  }

  .service-card span,
  .service-card h3,
  .service-card p {
    margin-left: 1rem;
    margin-right: 1rem;
  }

  .cloud {
    display: grid;
    grid-template-columns: 1fr;
    gap: .55rem;
  }

  .cloud a,
  .links-grid a {
    padding: .8rem;
  }

  summary {
    padding: .9rem;
    line-height: 1.25;
  }

  footer {
    padding: 2rem .9rem 5.5rem;
  }
}

@media (max-width: 380px) {
  .hero h1 {
    font-size: 1.9rem;
  }

  .brand > span > strong {
    font-size: .84rem;
  }

  .topbar {
    font-size: .68rem;
  }

  .badges span {
    font-size: .72rem;
  }
}

/* Final mobile cleanup based on live screenshot */
@media (max-width: 760px) {
  body { padding-bottom: 66px; }

  .topbar {
    padding: .45rem .85rem !important;
    font-size: .68rem !important;
    line-height: 1.2 !important;
    letter-spacing: 0 !important;
  }

  .site-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 30 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 62px !important;
    padding: .55rem .9rem !important;
    background: #fffefa !important;
  }

  .brand {
    display: flex !important;
    align-items: center !important;
    gap: .55rem !important;
    min-width: 0 !important;
    flex: 1 1 auto !important;
  }

  .brand > span,
  .brand strong {
    display: block !important;
  }

  .brand > span {
    overflow: visible !important;
    white-space: normal !important;
  }

  .brand > span > strong {
    font-size: .88rem !important;
    line-height: 1.08 !important;
    max-width: 210px !important;
  }

  .logo-mark {
    width: 38px !important;
    height: 38px !important;
    max-width: 38px !important;
    flex: 0 0 38px !important;
  }

  .call-btn { display: none !important; }

  .hero {
    display: block !important;
    padding: 1.3rem .95rem 1.1rem !important;
    min-height: 0 !important;
    background-position: 45% center !important;
  }

  .eyebrow {
    font-size: .66rem !important;
    line-height: 1.25 !important;
    letter-spacing: .08em !important;
  }

  .hero h1 {
    font-size: clamp(2.15rem, 10vw, 2.85rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
    margin: .55rem 0 .65rem !important;
    max-width: 100% !important;
  }

  .hero p {
    font-size: .98rem !important;
    line-height: 1.5 !important;
    margin: 0 0 .9rem !important;
  }

  .hero-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: .55rem !important;
    margin: .85rem 0 !important;
  }

  .primary, .secondary {
    min-height: 48px !important;
    padding: .78rem .85rem !important;
    border-radius: 10px !important;
    font-size: .95rem !important;
  }

  .badges {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: .45rem !important;
    margin: .85rem 0 1rem !important;
  }

  .badges span {
    width: 100% !important;
    text-align: center !important;
    font-size: .72rem !important;
    padding: .45rem .5rem !important;
    line-height: 1.2 !important;
  }

  .badges span:last-child {
    grid-column: 1 / -1;
  }

  .form {
    margin-top: .95rem !important;
    padding: .9rem !important;
    border-radius: 14px !important;
  }

  .form h2 {
    font-size: 1.18rem !important;
    line-height: 1.15 !important;
    margin-bottom: .1rem !important;
  }

  .form p {
    font-size: .88rem !important;
    line-height: 1.4 !important;
  }

  .form label {
    font-size: .8rem !important;
  }

  .form input, .form select, .form textarea {
    min-height: 42px !important;
    font-size: 16px !important;
  }

  .form button {
    min-height: 48px !important;
    font-size: .95rem !important;
    border-radius: 10px !important;
  }

  .mobile-call {
    display: flex !important;
    left: .75rem !important;
    right: .75rem !important;
    bottom: .75rem !important;
    min-height: 48px !important;
    border-radius: 12px !important;
    font-size: .95rem !important;
    padding: .75rem !important;
  }
}

@media (max-width: 390px) {
  .brand > span > strong { max-width: 185px !important; font-size: .8rem !important; }
  .hero h1 { font-size: 2rem !important; }
  .hero p { font-size: .94rem !important; }
  .badges { grid-template-columns: 1fr !important; }
  .badges span:last-child { grid-column: auto; }
}
