
    :root { --twf-hero-bg-image: url('https://assets.estaterelays.com/sites/peoriaasphalt-com/variants/hero-1200-4625edd949fb.webp'); }

    :root { --navy:#34495e; --navy2:#34495e; --ink:#172033; --heading:#14263a; --muted:#5c6d7d; --soft:#607083; --bg:#f5f8fb; --surface:#ffffff; --line:#dce5ee; --line2:#e3edf5; --blue:#0b6fa4; --cyan:#0fb6ca; --cyan2:#69d2e7; --shadow:0 8px 22px rgba(16,40,64,.08); --max:1180px; }
    * { box-sizing:border-box; }
    html, body { margin:0; padding:0; max-width:100%; overflow-x:clip; }
    html { scroll-behavior:smooth; background:var(--bg); }
    body { font-family:Arial, Helvetica, sans-serif; color:var(--ink); background:var(--bg); line-height:1.65; }
    .twf-site-header-wrap, #main, .twf-footer { font-family:Arial, Helvetica, sans-serif; line-height:1.65; }
    .twf-site-header-wrap *, .twf-site-header-wrap *::before, .twf-site-header-wrap *::after, #main *, #main *::before, #main *::after, .twf-footer *, .twf-footer *::before, .twf-footer *::after { box-sizing:border-box; }
    :where(#main, .twf-footer) :where(h1, h2, h3, h4, h5, h6, p) { margin:0; }
    a { color:inherit; text-decoration:none; }
    img { max-width:100%; display:block; height:auto; }
    button, input, textarea, select { font:inherit; }
    [id] { scroll-margin-top:112px; }
    .twf-inner, .container, .hero-inner, .twf-footer-main, .twf-footer-bottom-inner { max-width:var(--max); width:min(var(--max), calc(100% - 40px)); margin-left:auto; margin-right:auto; }
    #services > .container, .advanced-services > .container, .why-section > .container, .problems-section > .container, .process-section > .container, .service-area-section > .container, .reviews-section > .container, .faq-section > .container { width: min(90vw, calc(100% - 20px)); max-width: 1700px; }
    .twf-site-header-wrap { position:sticky; top:0; z-index:1000; background:#fff; border-bottom:1px solid var(--line); box-shadow:0 4px 14px rgba(16,40,64,.06); }
    .twf-topbar { background:var(--navy); color:#d8e8f6; font-size:15px; }
    .twf-topbar .twf-inner { min-height:37px; display:flex; align-items:center; justify-content:space-between; gap:16px; }
    .twf-topbar strong, .twf-topbar a { color:#fff; font-weight:800; }
    .twf-service-line { display:inline-flex; align-items:center; gap:8px; }
    .twf-service-line:before { content:""; width:11px; height:11px; flex:0 0 11px; border:2px solid var(--cyan); border-radius:50% 50% 50% 0; transform:translateY(-1px) rotate(-45deg); }
    .twf-header { background:#fff; color:#34495e; }
    .twf-nav { min-height:84px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
    .twf-brand { flex:0 0 auto; }
    .twf-brand-mark { display:block; width:232px; height:54px; }
    .twf-brand-mark img { width:100%; height:100%; object-fit:contain; }
    .twf-menu { display:flex; align-items:center; justify-content:center; flex:1 1 auto; gap:32px; color:#34495e; font-size:15px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
    .twf-menu > a, .twf-dropdown-toggle { padding:30px 0; color:#34495e; background:transparent; border:0; font:inherit; cursor:pointer; white-space:nowrap; text-transform:uppercase; letter-spacing:.04em; }
    .twf-menu > a:hover, .twf-dropdown-toggle:hover { color:var(--blue); }
    .twf-dropdown { position:relative; }
    .twf-dropdown-menu { display:none; position:absolute; top:100%; left:0; width:274px; background:#fff; border:1px solid var(--line); border-radius:0 0 6px 6px; box-shadow:0 14px 30px rgba(16,40,64,.14); overflow:hidden; z-index:1001; }
    .twf-dropdown:hover .twf-dropdown-menu, .twf-dropdown.is-open .twf-dropdown-menu { display:block; }
    .twf-dropdown-menu a { display:block; padding:12px 16px; border-bottom:1px solid var(--line2); color:#34495e; font-size:15px; font-weight:700; text-transform:none; letter-spacing:0; }
    .twf-dropdown-menu a:hover { background:#f5f8fb; color:var(--blue); }
    .twf-header-actions { display:flex; align-items:center; gap:10px; flex:0 0 auto; }
    .twf-btn, .btn, .form-card button, .review-read, .twf-text-popup-action { display:inline-flex; justify-content:center; align-items:center; gap:9px; min-height:48px; padding:0 24px; border-radius:4px; border:0; background:var(--blue); color:#fff !important; font-size:15px; font-weight:800; text-transform:none; letter-spacing:normal; cursor:pointer; transition:background .2s ease, transform .2s ease, box-shadow .2s ease; }
    .twf-btn:hover, .btn:hover, .form-card button:hover, .review-read:hover, .twf-text-popup-action:hover { background:#085f8e; color:#fff !important; transform:translateY(-1px); box-shadow:0 8px 18px rgba(11,111,164,.22); }
    .btn-primary { background:var(--blue); }
    .btn-primary:hover { background:#085f8e; }
    .btn-outline { background:transparent; border:1px solid rgba(255,255,255,.55); color:#fff !important; box-shadow:none; }
    .btn-outline:hover { background:rgba(255,255,255,.10); }
    .twf-btn-icon { display:none; }
    .twf-header-actions .twf-btn-icon { display:inline-block; width:19px; height:19px; flex:0 0 auto; fill:currentColor; }
    .twf-header-actions .twf-btn { gap:9px; text-transform:none; letter-spacing:normal; }
    .twf-menu-toggle { display:none; width:44px; height:44px; border:1px solid var(--line); border-radius:4px; background:#fff; padding:10px; cursor:pointer; }
    .twf-menu-toggle span { display:block; height:2px; margin:5px 0; background:#34495e; border-radius:2px; }
    .twf-text-popup { display:none; position:fixed; inset:0; z-index:2000; padding:24px; background:rgba(8,31,52,.72); align-items:center; justify-content:center; }
    .twf-text-popup.is-open { display:flex; }
    .twf-text-popup-card { position:relative; width:min(430px,92vw); background:#fff; border-top:6px solid var(--cyan); border-radius:6px; padding:32px; color:var(--ink); box-shadow:0 18px 45px rgba(0,0,0,.28); text-align:center; }
    .twf-text-popup-title { color:var(--heading); font-size:24px; font-weight:800; margin-bottom:8px; }
    .twf-text-popup-close { position:absolute; top:8px; right:14px; border:0; background:transparent; color:var(--heading); font-size:28px; cursor:pointer; }
    #main { background:var(--bg); }
    #main .hero { background:linear-gradient(90deg,rgba(8,31,52,.99),rgba(8,31,52,.92)), var(--twf-hero-bg-image, none) center/cover no-repeat; color:#fff; padding:0; }
    #main .hero:before { display:none; }
    #main .hero-inner { padding:58px 20px 52px; display:grid; grid-template-columns:1.15fr .85fr; gap:48px; align-items:start; width:min(var(--max), 100%); }
    #main .hero h1 { margin:0 0 22px; max-width:720px; color:#fff; font-size:52px; line-height:1.08; letter-spacing:-.04em; font-weight:800; }
    #main .hero h1 span { color:var(--cyan2); }
    #main .hero-copy { max-width:690px; margin:0 0 18px; color:#e4eef7; font-size:17px; line-height:1.55; }
    #main .hero-copy:nth-of-type(n+2) { color:#d6e5f2; font-size:17px; }
    #main .hero-actions { display:flex; gap:14px; flex-wrap:wrap; margin:30px 0 18px; }
    #main .rating-line { display:flex; flex-wrap:wrap; gap:8px; color:#d6e5f2; font-size:14px; font-weight:700; }
    #main .stars { color:var(--cyan2); letter-spacing:1px; }
    #main .form-card { background:#fff; border:2px solid rgba(15,182,202,.78); border-top:10px solid var(--cyan); padding:24px 28px 22px; border-radius:8px; box-shadow:0 26px 64px rgba(0,0,0,.42), 0 0 0 9px rgba(15,182,202,.16); color:var(--ink); }
    #main .form-card h3,
    #main .form-card .form-card-title { margin:0 0 9px; text-align:center; font-size:28px; line-height:1.1; font-weight:800; color:var(--heading); }
    #main .field { margin-bottom:9px; display:block; }
    #main .field label { display:block; color:#34495e; margin-bottom:4px; font-size:13px; font-weight:800; }
    #main input, #main select, #main textarea { width:100%; min-height:42px; border:1px solid #c4d2df; border-radius:4px; padding:10px 13px; font-size:15px; color:var(--ink); background:#fbfdff; outline:none; box-shadow:none; }
    #main textarea { min-height:66px; resize:vertical; }
    #main input:focus, #main select:focus, #main textarea:focus { outline:2px solid rgba(15,182,202,.2); border-color:var(--cyan); }
    #main .hp-field { position:absolute !important; left:-9999px !important; width:1px !important; height:1px !important; opacity:0 !important; pointer-events:none !important; }
    #main .field-error { display:none; color:#085f8e; font-size:12px; font-weight:800; margin-top:4px; }
    #main .field.has-error .field-error { display:block; }
    #main .field.has-error input, #main .field.has-error select, #main .field.has-error textarea { border-color:#d92d20; outline:2px solid rgba(217,45,32,.14); }
    #main .form-status { display:none; margin-top:12px; padding:12px 14px; border-radius:4px; font-size:14px; font-weight:800; }
    #main .form-status.show { display:block; }
    #main .form-status.success { background:#ecfdf3; color:#067647; border:1px solid #abefc6; }
    #main .form-status.error { background:#fef3f2; color:#085f8e; border:1px solid #fecdca; }
    #main .native-lead-form button[type="submit"] { display:flex; margin:13px auto 0; min-width:230px; }
    #main .native-lead-form.is-submitting button[type="submit"] { opacity:.78; pointer-events:none; }
    #main .secure { margin:18px 0 0 !important; color:#607083 !important; font-size:13px; text-align:center; font-weight:700; line-height:1.3; display:flex; align-items:center; justify-content:center; gap:6px; }
    #main .secure:before { content:""; width:12px; height:12px; flex:0 0 12px; background:currentColor; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 10V8a5 5 0 0 1 10 0v2h1a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h1Zm2 0h6V8a3 3 0 0 0-6 0v2Z'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 10V8a5 5 0 0 1 10 0v2h1a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h1Zm2 0h6V8a3 3 0 0 0-6 0v2Z'/%3E%3C/svg%3E") center/contain no-repeat; transform:translateY(-1px); }
    #main .trust-strip { background:#085f8e; border-top:4px solid var(--cyan); border-bottom:1px solid #085f8e; padding:28px 20px; }
    #main .trust-title { display:block; margin:0 0 18px; text-align:center; color:var(--heading); font-size:38px; line-height:1.15; letter-spacing:-.03em; font-weight:800; }
    #main .trust-title span { color:inherit; }
    #main .trust-inner { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; max-width:1120px; width:100%; margin:0 auto; }
    #main .trust-item { display:flex; min-height:122px; flex-direction:column; align-items:center; justify-content:center; gap:14px; padding:22px 18px; background:#fff; border:1px solid #c9dce8; border-radius:4px; text-align:center; box-shadow:0 8px 20px rgba(16,40,64,.08); }
    #main .trust-icon { display:flex; width:44px; height:44px; align-items:center; justify-content:center; border:1px solid rgba(15,182,202,.32); border-radius:50%; background:#f7fcff; color:var(--blue); font-size:19px; line-height:1; }
    #main .trust-item strong { display:block; color:#34495e; font-size:20px; font-weight:800; line-height:1.18; }
    #main .section-light, #main .section-white, #main .why-section, #main .service-area-section, #main .reviews-section, #main .faq-section, #main .cta { padding:42px 0; background:var(--bg); }
    #main .section-white, #main .faq-section { background:#fff; border-top:1px solid var(--line2); border-bottom:1px solid var(--line2); }
    #main .section-head, #main .reviews-head { display:flex; justify-content:space-between; gap:30px; align-items:end; max-width:none; margin:0 auto 34px; text-align:left; }
    #main .section-head.left { display:block; }
    #main .kicker { color:var(--blue); font-size:13px; letter-spacing:.12em; text-transform:uppercase; font-weight:800; margin-bottom:10px; }
    #main .section-head h2, #main .reviews-head h2, #main .cta h2, #main .faq-section .section-head h2, #main .why-head h2, #main .problem-intro h2 { color:var(--heading); font-size:38px; line-height:1.15; letter-spacing:-.03em; font-weight:800; margin:0 0 12px; }
    #main .section-head p, #main .service-card p, #main .feature-card p, #main .why-card p, #main .problem-card p, #main .process-card p, #main .faq-answer p, #main .cta p { color:#5f6f7f; font-size:16px; line-height:1.65; }
    #main .section-head.left > .btn, #main .problem-intro > .btn { margin-top:18px; }
    #main .service-grid, #main .why-grid, #main .problems-grid, #main .process-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
    #main .service-card, #main .feature-card, #main .why-card, #main .problem-card, #main .process-card, #main .review-card, #main .faq-item { background:#fff; border:1px solid #dfe8f1; border-radius:8px; overflow:hidden; box-shadow:var(--shadow); transition:transform .2s ease, box-shadow .2s ease; }
    #main .service-card { display:flex; height:100%; flex-direction:column; }
    #main .service-card:hover, #main .feature-card:hover, #main .why-card:hover, #main .problem-card:hover, #main .process-card:hover, #main .review-card:hover { transform:translateY(-2px); box-shadow:0 12px 28px rgba(16,40,64,.12); }
    #main .service-title { padding:26px 26px 10px; }
    #main .service-card h3, #main .feature-card h3, #main .why-card h3, #main .problem-card h3, #main .process-card h3 { margin:0 0 10px; color:var(--heading); font-size:22px; line-height:1.22; font-weight:800; }
    #main .service-card img { width:100%; height:210px; object-fit:contain; margin:0; background:#eef4f8; box-shadow:none; }
    #main .service-card .body { display:flex; flex:1 1 auto; flex-direction:column; padding:14px 26px 26px; }
    #main .service-card .body .text-link { margin-top:auto; padding-top:14px; }
    #main .text-link { color:var(--blue); font-weight:800; text-transform:uppercase; font-size:13px; letter-spacing:.04em; }
    #main .text-link:after { content:"\2192"; margin-left:6px; }
    #main .feature-grid { display:grid; grid-template-columns:1fr; gap:28px; }
    #main .feature-card { display:grid; grid-template-columns:.95fr 1.05fr; gap:30px; align-items:center; padding:26px; }
    #main .feature-card:nth-child(even) img { order:2; }
    #main .feature-card:nth-child(even) .copy { order:1; }
    #main .feature-card img { width:100%; height:300px; object-fit:cover; border-radius:6px; }
    #main .check-list { list-style:none; padding:0; margin:18px 0 20px; display:grid; gap:9px; color:#5f6f7f; }
    #main .check-list li { display:grid; grid-template-columns:22px 1fr; gap:8px; }
    #main .check-list li:before { content:"\2713"; width:20px; height:20px; display:grid; place-items:center; border-radius:4px; background:var(--cyan); color:#fff; font-size:12px; font-weight:800; }
    #main .why-section { background:#fff; border-top:1px solid var(--line2); border-bottom:1px solid var(--line2); }
    #main .why-head { max-width:var(--max); margin:0 auto 34px; }
    #main .why-card, #main .problem-card, #main .process-card { padding:26px; }
    #main .why-icon, #main .problem-icon, #main .process-num { width:46px; height:46px; display:grid; place-items:center; border-radius:6px; background:#e6f7fb; color:var(--blue); margin-bottom:18px; font-weight:800; }
    #main .why-icon, #main .problem-icon { margin:0 auto 18px; }
    #main .why-icon svg, #main .problem-icon svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
    #main .why-card h3, #main .problem-card h3 { text-align:center; }
    #main .problems-section { background:var(--bg); }
    #main .problems-layout { display:grid; grid-template-columns:.8fr 1.2fr; gap:28px; align-items:stretch; }
    #main .problem-intro { background:var(--navy); color:#fff; border-radius:8px; padding:34px; box-shadow:0 14px 34px rgba(11,31,51,.18); }
    #main .problem-intro h2, #main .problem-intro p { color:#fff; }
    #main .problem-intro .btn { background:var(--blue); color:#fff !important; }
    #main .service-area-section { background:var(--navy); color:#fff; }
    #main .service-area-section h2, #main .service-area-section h3, #main .service-area-section p, #main .service-area-section a { color:#fff; }
    #main .areas { display:flex; flex-direction:column; }
    #main .areas-head { padding-bottom:22px; margin-bottom:26px; border-bottom:2px solid rgba(255,255,255,.25); }
    #main .areas-head h2 { font-size:30px; line-height:1.2; margin:0 0 12px; }
    #main .areas-body { display:flex; gap:34px; align-items:stretch; }
    #main .area-list { flex:1 1 0; min-width:160px; margin:0; padding:0; list-style:none; }
    #main .area-list li { margin-bottom:8px; }
    #main .area-image { flex:0 0 480px; border-radius:8px; overflow:hidden; }
    #main .area-image img { width:100%; height:100%; object-fit:cover; border-radius:8px; box-shadow:0 16px 38px rgba(0,0,0,.22); }
    #main .reviews-section { background:#fff; border-top:1px solid var(--line2); border-bottom:1px solid var(--line2); }
    #main .reviews-slider { position:relative; padding:0 54px; }
    #main .testimonials { display:flex; gap:24px; overflow-x:hidden; scroll-behavior:smooth; }
    @media (min-width: 1800px) { #main .testimonials { justify-content: center; } }
    #main .review-card { flex:0 0 350px; padding:26px; }
    #main .review-card p { max-height:108px; overflow:hidden; }
    #main .review-card.is-expanded p { max-height:none; }
    #main .review-read { min-height:34px; padding:0 14px; margin:8px 0 18px; font-size:12px; }
    #main .review-person { display:flex; align-items:center; gap:12px; }
    #main .avatar { width:42px; height:42px; border-radius:6px; background:var(--blue); color:#fff; display:grid; place-items:center; font-weight:800; }
    #main .review-person strong { display:block; color:var(--heading); }
    #main .review-person span { display:block; color:#5b6b7c; font-size:13px; }
    #main .review-nav { position:absolute; top:50%; transform:translateY(-50%); width:42px; height:42px; border-radius:4px; border:1px solid var(--line); background:#fff; color:var(--blue); box-shadow:var(--shadow); cursor:pointer; font-size:26px; }
    #main .review-prev { left:0; }
    #main .review-next { right:0; }
    #main .review-nav.is-hidden { opacity:.25; pointer-events:none; }
    #main .review-dots { display:flex; min-height:10px; justify-content:center; gap:8px; margin-top:22px; }
    #main .review-dot { width:10px; height:10px; padding:0; border:0; border-radius:10px; background:#cdd9e4; cursor:pointer; }
    #main .review-dot.is-active { background:var(--blue); }
    #main .cta { padding:132px 0; background:linear-gradient(90deg, rgba(8,31,52,.98), rgba(8,31,52,.88)), var(--twf-hero-bg-image, none) center/cover no-repeat; color:#fff; }
    #main .cta .container { max-width:1180px; }
    #main .cta .kicker { color:var(--cyan); font-size:15px; letter-spacing:.14em; text-shadow:0 2px 12px rgba(0,0,0,.34); }
    #main .cta h2 { max-width:760px; color:#fff; font-size:58px; line-height:1.03; letter-spacing:-.045em; text-shadow:0 4px 20px rgba(0,0,0,.45); }
    #main .cta h2 span, #main .cta p { color:#fff; }
    #main .cta p { max-width:1040px; font-size:20px; line-height:1.55; font-weight:700; text-shadow:0 3px 16px rgba(0,0,0,.42); }
    #main .cta-actions { display:flex; gap:16px; flex-wrap:wrap; margin-top:30px; }
    #main .cta-actions .btn { min-height:60px; padding:0 38px; font-size:16px; box-shadow:0 14px 30px rgba(0,0,0,.24); }
    #main .cta-actions .btn-primary { box-shadow:0 16px 34px rgba(11,111,164,.34); }
    #main .faq-wrap { display:grid; grid-template-columns:.8fr 1.2fr; gap:40px; align-items:start; }
    #main .faq-list { display:grid; gap:12px; }
    #main .faq-question { width:100%; min-height:58px; border:0; background:#fff; color:var(--heading); display:flex; justify-content:space-between; align-items:center; gap:14px; padding:0 20px; text-align:left; font-size:17px; font-weight:800; cursor:pointer; }
    #main .faq-question .plus { color:var(--blue); font-size:22px; }
    #main .faq-answer { display:none; padding:0 20px 20px; }
    #main .faq-item.active .faq-answer { display:block; }
    .twf-footer { background:var(--navy2); color:#b8c9d7; }
    .twf-footer-main { padding:28px 0 34px; display:grid; grid-template-columns:2fr 1fr 1fr 1fr 1.2fr; gap:34px; }
    .twf-footer-brand img { width:190px; margin-bottom:12px; }
    .twf-footer-heading { color:#fff; margin:0 0 14px; font-size:15px; }
    .twf-footer p, .twf-footer a, .twf-footer li { color:#d3e1ec; font-size:15px; line-height:1.8; }
    .twf-footer-contact { display:flex; flex-direction:column; gap:14px; }
    .twf-footer a:hover { color:var(--cyan2); }
    .twf-footer ul { list-style:none; padding:0; margin:0; }
    .twf-footer li { margin-bottom:8px; }
    .twf-footer-map { height:190px; border-radius:6px; overflow:hidden; position:relative; background:#34495e; border:1px solid rgba(255,255,255,.12); }
    .twf-footer-map iframe, .twf-map-placeholder { position:absolute; inset:0; width:100%; height:100%; }
    .twf-map-placeholder { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; color:var(--cyan2); font-weight:800; }
    .twf-footer-bottom { border-top:1px solid rgba(255,255,255,.10); padding:20px 0; }
    .twf-footer-bottom-inner { display:flex; flex-direction:column; align-items:center; gap:14px; }
    .twf-footer-socials { display:flex; gap:10px; }
    .twf-footer-social { width:36px; height:36px; border-radius:4px; display:grid; place-items:center; color:#fff; }
    .twf-footer-social svg { width:18px; height:18px; fill:currentColor; }
    .twf-footer-social.fb { background:#1877f2; }
    .twf-footer-social.ig { background:#e4405f; }
    .twf-footer-social.li { background:#0a66c2; }
    .twf-footer-copy { margin:0; color:#9fb3c4; font-size:13px; }
    @media (max-width:1050px) { .twf-menu { gap:18px; font-size:13px; } .twf-footer-main { grid-template-columns:repeat(3,1fr); } .twf-footer-brand, .twf-footer-map-col { grid-column:1/-1; } }
    @media (max-width:850px) { .twf-topbar .twf-inner { flex-direction:column; justify-content:center; gap:4px; padding:6px 0; text-align:center; } .twf-service-line { min-height:44px; align-items:center; line-height:1.35; } .twf-nav { flex-wrap:wrap; min-height:auto; padding:14px 0; } .twf-brand { flex:0 0 auto; } .twf-brand-mark { width:180px; height:46px; } .twf-menu-toggle { display:block; } .twf-header-actions { margin-left:auto; } .twf-menu { display:none; flex:1 0 100%; order:10; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:0; border-top:1px solid var(--line); } .twf-menu.is-open { display:flex; position:fixed; left:0; right:0; top:var(--twf-menu-top, 70px); max-height:calc(100vh - var(--twf-menu-top, 70px)); margin-top:0; overflow-y:auto; overflow-anchor:none; z-index:1001; -webkit-overflow-scrolling:touch; background:#fff; box-shadow:0 12px 24px rgba(0,0,0,.14); } .twf-menu > a, .twf-dropdown-toggle { width:100%; padding:13px 4px; border-bottom:1px solid var(--line); text-align:left; } .twf-dropdown-menu { position:static; width:100%; box-shadow:none; border-radius:0; } .twf-dropdown:hover .twf-dropdown-menu { display:none; } .twf-dropdown.is-open .twf-dropdown-menu { display:block !important; } #main .hero-inner { padding-top:40px; padding-bottom:38px; } #main .hero-inner, #main .feature-card, #main .problems-layout, #main .faq-wrap { grid-template-columns:1fr; } #main .areas-body { flex-direction:column; } #main .area-image { flex:1 1 auto; width:100%; } #main .hero h1 { font-size:38px; } #main .service-grid, #main .why-grid, #main .problems-grid, #main .process-grid, .twf-footer-main { grid-template-columns:1fr; } #main .trust-inner { grid-template-columns:1fr 1fr; } #main .section-head, #main .reviews-head { display:block; } #main .feature-card:nth-child(even) img, #main .feature-card:nth-child(even) .copy { order:initial; } #main .reviews-slider { padding:0 34px; } #main .review-card { flex-basis:100%; min-width:0; padding:22px; } }
    @media (max-width:520px) { #main .trust-inner { grid-template-columns:1fr; } }
    @media (max-width:600px) { .twf-nav { display:flex; flex-wrap:nowrap; align-items:center; gap:6px; min-height:58px; padding:8px 0; } .twf-brand { order:1; flex:0 0 auto; } .twf-brand-mark { width:90px; height:26px; } .twf-header-actions { order:2; margin-left:0; gap:4px; flex:1 1 auto; justify-content:center; } .twf-header-actions .twf-btn { min-height:38px; padding:0 8px; font-size:12px; gap:4px; } .twf-header-actions .twf-btn-icon { width:14px; height:14px; } .twf-menu-toggle { order:3; flex:0 0 44px; } .twf-menu { flex:0 0 100%; } }
    @media (max-width:850px) { #main .process-section { padding-bottom:24px; } #main .service-area-section { padding-top:28px; } #main .areas-body { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; } #main .area-list { min-width:0; } #main .area-image { grid-column:1 / -1; width:100%; min-height:180px; margin-top:14px; } #main .area-image img { height:100%; min-height:180px; } }
    @media (max-width:780px) { .twf-site-header-wrap, #main, .twf-footer { width:100vw; max-width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); overflow-x:hidden; } }
        @media (max-width: 780px) { :root { --twf-hero-bg-image: url('https://assets.estaterelays.com/sites/peoriaasphalt-com/variants/hero-1200-4625edd949fb.webp'); } }
