/* Burst Pipe Repair website — responsive, accessible styling */
:root{--navy:#0b2b4d;--blue:#124f83;--blue2:#1d659e;--orange:#ff7718;--ink:#16283a;--muted:#5b6c7d;--pale:#f3f7fb;--line:#dce5ee;--white:#fff;--radius:18px;--shadow:0 14px 34px rgba(6,32,58,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.65;background:#fff}img{max-width:100%;display:block}a{color:var(--blue);text-underline-offset:3px}a:hover{color:var(--orange)}button,input,textarea{font:inherit}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}.skip-link{position:absolute;left:-9999px;top:0;background:white;padding:10px;z-index:99}.skip-link:focus{left:10px}.topbar{background:var(--navy);color:#dceaf7;font-size:.88rem;padding:7px 0}.topbar-inner{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}.site-header{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--navy);font-weight:900;line-height:1.15}.brand-mark{width:46px;height:46px;border-radius:50%;display:grid;place-items:center;background:var(--blue);color:var(--orange);font-size:1.7rem;border:4px solid #e5f1fb}.brand small{display:block;letter-spacing:.13em;font-size:.72rem;color:var(--blue);margin-top:5px}.nav-links{display:flex;align-items:center;gap:24px}.nav-links>a,.nav-group>button{font-weight:700;text-decoration:none;color:var(--ink);border:0;background:transparent;padding:12px 0;cursor:pointer}.nav-group{position:relative}.dropdown{display:none;position:absolute;top:100%;left:0;background:#fff;min-width:245px;padding:10px;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);max-height:70vh;overflow:auto}.nav-group:hover .dropdown,.nav-group:focus-within .dropdown{display:block}.dropdown a{display:block;padding:8px 10px;text-decoration:none;border-radius:8px}.dropdown a:hover{background:var(--pale)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;background:var(--orange);color:#141d25;border:2px solid var(--orange);border-radius:12px;padding:13px 20px;font-weight:850;text-decoration:none;transition:transform .18s,box-shadow .18s}.btn:hover{color:#111;transform:translateY(-1px);box-shadow:0 7px 20px #ff77183b}.btn-secondary{background:transparent;color:#fff;border-color:#fff}.btn-secondary:hover{color:#fff;background:#ffffff12}.nav-cta{padding:10px 15px}.menu-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:10px;padding:8px 11px;font-size:1.3rem}.hero{background:linear-gradient(120deg,#0b4679,#102238);color:white;padding:64px 0 68px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:44px}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:#ffffff18;border:1px solid #ffffff2b;color:#ffcf9f;border-radius:999px;padding:6px 12px;font-size:.83rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.hero h1{font-size:clamp(2.5rem,5vw,4.45rem);line-height:1.04;letter-spacing:-.035em;margin:20px 0}.hero p{font-size:1.12rem;color:#e1edf8;max-width:630px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 18px}.trust-note{font-size:.91rem;color:#c5d6e6}.hero-visual{position:relative}.hero-visual img{height:440px;width:100%;object-fit:cover;object-position:78% center;border-radius:24px;border:1px solid #ffffff35;box-shadow:0 22px 60px #0005}.photo-caption{position:absolute;bottom:16px;left:16px;right:16px;padding:13px 16px;background:#071a2bd9;color:#fff;border-radius:12px;font-size:.9rem;backdrop-filter:blur(8px)}.proof-strip{background:#f4f8fc;border-bottom:1px solid var(--line)}.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:25px 0;text-align:center}.proof-item strong{display:block;color:var(--blue);font-size:1.06rem}.proof-item span{font-size:.88rem;color:var(--muted)}.section{padding:76px 0}.section-soft{background:var(--pale)}.section-heading{max-width:760px;margin:0 auto 38px;text-align:center}.section-heading h2{font-size:clamp(1.8rem,3vw,2.65rem);line-height:1.15;color:var(--navy);margin:0 0 14px;letter-spacing:-.025em}.section-heading p{color:var(--muted);margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:25px;box-shadow:0 5px 18px #092c4b08}.card-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#fff0e6;color:#a84900;font-weight:900;font-size:1.3rem;margin-bottom:16px}.card h3{margin:0 0 9px;color:var(--navy);font-size:1.2rem}.card p{margin:0 0 14px;color:var(--muted)}.arrow-link{font-weight:800;text-decoration:none}.split{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:center}.split h2{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.16;color:var(--navy);margin:0 0 18px}.check-list{padding:0;list-style:none}.check-list li{padding-left:30px;position:relative;margin:11px 0}.check-list li:before{content:'✓';position:absolute;left:0;top:0;color:#16835b;font-weight:900}.callout{border-radius:var(--radius);padding:28px;background:#eaf3fb;border:1px solid #d7e6f3}.callout h3{margin:0 0 9px;color:var(--navy)}.page-hero{background:linear-gradient(115deg,var(--navy),#174f7b);color:#fff;padding:52px 0}.breadcrumb{color:#c3d8e9;font-size:.9rem;margin-bottom:14px}.breadcrumb a{color:#fff}.page-hero h1{font-size:clamp(2.2rem,4vw,3.5rem);line-height:1.1;margin:0 0 16px}.page-hero p{max-width:780px;color:#e2edf7;font-size:1.08rem;margin:0}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:42px;align-items:start}.article-body h2{font-size:1.7rem;color:var(--navy);line-height:1.25;margin-top:34px}.article-body h3{color:var(--navy);line-height:1.3}.article-body p,.article-body li{color:#33485b}.article-body li{margin:.5em 0}.sidebar{position:sticky;top:110px}.sidebar .card{margin-bottom:16px}.faq-list details{border:1px solid var(--line);border-radius:12px;padding:16px 18px;background:white;margin:10px 0}.faq-list summary{font-weight:800;color:var(--navy);cursor:pointer}.faq-list details p{color:var(--muted);margin-bottom:0}.cta-band{background:linear-gradient(110deg,#0c2a48,#14578d);color:white;border-radius:22px;padding:34px;display:flex;align-items:center;justify-content:space-between;gap:24px}.cta-band h2{margin:0 0 8px;font-size:clamp(1.5rem,3vw,2.2rem)}.cta-band p{margin:0;color:#d3e1ee}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.blog-card{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;display:flex;flex-direction:column}.blog-card .blog-card-top{height:130px;background:linear-gradient(135deg,#123e67,#1e6699);display:flex;align-items:center;justify-content:center;color:#ffb476;font-size:2.6rem}.blog-card-content{padding:22px;display:flex;flex-direction:column;flex:1}.blog-card h3{line-height:1.3;margin:0 0 10px;color:var(--navy)}.blog-card p{color:var(--muted);margin:0 0 16px}.blog-card .arrow-link{margin-top:auto}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.contact-panel{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:26px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-field{display:flex;flex-direction:column;gap:5px}.form-field.full{grid-column:1/-1}.form-field label{font-weight:750;font-size:.92rem}.form-field input,.form-field textarea,.form-field select{width:100%;padding:12px;border:1px solid #bac9d8;border-radius:9px;background:white}.form-field textarea{min-height:125px;resize:vertical}.form-note{font-size:.85rem;color:var(--muted)}.site-footer{background:#071e35;color:#d3e1ee;padding:54px 0 18px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:30px}.site-footer h3,.site-footer h4{color:white;margin-top:0}.site-footer a{color:#d3e1ee;text-decoration:none}.site-footer a:hover{color:#ffb477}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin:8px 0}.footer-bottom{border-top:1px solid #ffffff26;padding-top:18px;margin-top:32px;font-size:.85rem;color:#a9bfd1}.disclaimer{font-size:.84rem;color:var(--muted)}.site-footer .disclaimer{color:#a9bfd1}.not-found{padding:70px 0}.notice{padding:14px 16px;border-left:4px solid var(--orange);background:#fff7f0;border-radius:8px;margin:22px 0;color:#5b3618}.back-to-top{position:fixed;bottom:20px;right:20px;background:var(--orange);color:#14283a;border-radius:50%;width:44px;height:44px;display:grid;place-items:center;text-decoration:none;font-weight:900;box-shadow:var(--shadow)}
@media(max-width:950px){.nav-links{gap:14px}.hero-grid{gap:26px}.hero-visual img{height:380px}.cards,.blog-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:minmax(0,1fr) 260px;gap:24px}}
@media(max-width:760px){.container{width:min(100% - 28px,600px)}.topbar-inner{justify-content:center;text-align:center}.nav-wrap{min-height:70px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;left:0;right:0;top:100%;background:white;padding:16px 20px 20px;border-bottom:1px solid var(--line);box-shadow:var(--shadow);align-items:stretch;flex-direction:column;gap:5px}.nav-links.open{display:flex}.nav-links>a,.nav-group>button{display:block;width:100%;text-align:left;padding:10px}.dropdown{position:static;box-shadow:none;border:0;padding:0 0 0 12px;max-height:none}.nav-group:hover .dropdown{display:none}.nav-group.expanded .dropdown{display:block}.nav-cta{width:100%}.hero{padding:42px 0}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero h1{font-size:clamp(2.4rem,11vw,3.5rem)}.hero-visual img{height:300px}.proof-grid{grid-template-columns:repeat(2,1fr);row-gap:22px}.section{padding:54px 0}.cards,.blog-grid{grid-template-columns:1fr}.content-grid{grid-template-columns:1fr}.sidebar{position:static}.cta-band{align-items:flex-start;flex-direction:column;padding:25px}.footer-grid{grid-template-columns:1fr 1fr}.form-grid{grid-template-columns:1fr}.form-field.full{grid-column:auto}}
@media(max-width:430px){.footer-grid{grid-template-columns:1fr}.hero-actions .btn{width:100%}.brand{font-size:.9rem}.brand-mark{width:40px;height:40px}}


/* Visual image system: all image files are packaged locally in /assets. */
.page-hero{overflow:hidden;position:relative}
.page-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);align-items:center;gap:34px}
.page-hero-copy{min-width:0}
.page-hero-media{min-width:0;position:relative}
.page-hero-media img{width:100%;height:255px;object-fit:cover;border-radius:20px;border:1px solid #ffffff38;box-shadow:0 16px 45px #00162a55}
.page-hero-media:after{content:"";position:absolute;inset:0;border-radius:20px;background:linear-gradient(120deg,#0b2b4d05,#0b2b4d18);pointer-events:none}
.card{overflow:hidden}
.card-media{display:block;width:calc(100% + 50px);max-width:none;height:155px;object-fit:cover;margin:-25px -25px 18px;border-radius:var(--radius) var(--radius) 0 0;background:#0b2b4d}
.blog-card .blog-card-top{height:165px;overflow:hidden;background:#0b2b4d}
.blog-card .blog-thumb{width:100%;height:100%;object-fit:cover;display:block}
.hero-visual img{object-position:78% center}
@media(max-width:760px){.page-hero-grid{grid-template-columns:1fr;gap:22px}.page-hero-media img{height:230px}.page-hero-media{order:2}.page-hero-copy{order:1}.card-media{height:180px}}


/* Final visual polish and responsive image handling */
img{height:auto}
.hero-visual img,.page-hero-media img{object-fit:cover;background:#e8eef4}
.card-media{object-fit:cover;object-position:center;width:calc(100% + 50px);max-width:none;height:165px;margin:-25px -25px 18px;border-radius:var(--radius) var(--radius) 0 0}
.blog-card .blog-thumb{width:100%;height:100%;object-fit:cover;object-position:center}
.card,.blog-card{transition:transform .18s ease,box-shadow .18s ease}
.card:hover,.blog-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ff7718;outline-offset:3px}
@media(max-width:760px){.hero-visual img{height:260px}.page-hero-media img{height:230px}.card-media{height:190px}.section-heading{text-align:left}.proof-grid{text-align:left}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Tablet navigation breakpoint and touch-friendly dropdowns */
@media(max-width:900px){
 .nav-wrap{position:relative}
 .menu-toggle{display:block}
 .nav-links{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;padding:16px 20px 20px;border-bottom:1px solid var(--line);box-shadow:var(--shadow);align-items:stretch;flex-direction:column;gap:5px;max-height:75vh;overflow:auto}
 .nav-links.open{display:flex}
 .nav-links>a,.nav-group>button{display:block;width:100%;text-align:left;padding:10px}
 .dropdown{position:static;box-shadow:none;border:0;padding:0 0 0 12px;max-height:none;min-width:0}
 .nav-group:hover .dropdown{display:none}
 .nav-group.expanded .dropdown{display:block}
 .nav-cta{width:100%}
}


/* Homepage hero banner: wide photo, left-aligned one-line slogan in white and orange. */
.hero-banner{position:relative;isolation:isolate;display:flex;align-items:flex-end;min-height:clamp(320px,39vw,560px);overflow:hidden;background:#071e35;color:#fff}
.hero-banner::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(4,27,49,.96) 0%,rgba(4,35,63,.85) 34%,rgba(4,35,63,.24) 66%,rgba(4,27,49,.08) 100%);pointer-events:none}
.hero-banner-image{position:absolute;inset:0;z-index:-1;width:100%;height:100%;object-fit:cover;object-position:center center}
.hero-banner-content{position:relative;z-index:1;width:min(1160px,calc(100% - 40px));margin-inline:auto;padding:30px 0 36px;text-align:left}
.hero-banner h1{display:block;width:max-content;max-width:100%;margin:0;text-align:left;white-space:nowrap;font-size:clamp(2rem,4.6vw,4.5rem);line-height:1.08;letter-spacing:-.045em;font-weight:900;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.22)}
.hero-banner h1 span{color:#ff7718}
@media(max-width:760px){.hero-banner{min-height:clamp(250px,64vw,320px)}.hero-banner-image{object-position:42% center}.hero-banner::after{background:linear-gradient(90deg,rgba(4,27,49,.96) 0%,rgba(4,35,63,.84) 62%,rgba(4,27,49,.48) 100%)}.hero-banner-content{width:calc(100% - 28px);padding:20px 0 24px}.hero-banner h1{font-size:clamp(1.12rem,6.2vw,2.35rem);letter-spacing:-.035em;white-space:nowrap}}
@media(max-width:360px){.hero-banner{min-height:240px}.hero-banner h1{font-size:clamp(1rem,5.8vw,1.22rem);letter-spacing:-.04em}}

.nav-links>a.nav-home[aria-current="page"]{color:var(--orange);position:relative}
.nav-links>a.nav-home[aria-current="page"]::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:3px;background:var(--orange);border-radius:3px}
