.skip-to-content {
 position: absolute !important;
 left: -9999px !important;
 top: -9999px !important;
 width: 1px;
 height: 1px;
 overflow: hidden;
 background: #1e5ba8;
 color: #fff;
 padding: 12px 24px;
 text-decoration: none;
 font-weight: 600;
 font-size: 14px;
 z-index: 10000;
 border-radius: 0 0 8px 0;
}
.skip-to-content:focus,
.skip-to-content:active {
 position: absolute !important;
 left: 0 !important;
 top: 0 !important;
 width: auto;
 height: auto;
 overflow: visible;
 outline: 3px solid #fbbf24;
}
:root {
 --blue: #0056a7;
 --blue-dark: #003d7a;
 --blue-light: #e8f1f9;
 --blue-lighter: #f4f8fc;
 --green: #00a651;
 --green-dark: #008040;
 --green-light: #e8f5e9;
 --white: #ffffff;
 --off-white: #f8fafc;
 --ink: #1a1a2e;
 --text: #333333;
 --text-light: #666666;
 --text-lighter: #888888;
 --border: #e5e7eb;
 --yellow: #ffc107;
 --shadow-sm: 0 2px 8px rgba(0, 86, 167, 0.06);
 --shadow: 0 6px 20px rgba(0, 86, 167, 0.08);
 --shadow-md: 0 12px 32px rgba(0, 86, 167, 0.1);
 --shadow-blue: 0 8px 24px rgba(0, 86, 167, 0.25);
 --shadow-green: 0 8px 24px rgba(0, 166, 81, 0.25);
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
 font-family: 'Roboto', system-ui, sans-serif;
 background: var(--off-white);
 color: var(--text);
 line-height: 1.6;
 font-size: 15.5px;
 -webkit-font-smoothing: antialiased;
 overflow-x: hidden;
}
h1, h2, h3, h4, h5 {
 font-family: 'Poppins', sans-serif;
 color: var(--ink);
 font-weight: 700;
 line-height: 1.25;
}
a { color: inherit; text-decoration: none; }
.topbar {
 background: var(--blue-dark);
 color: #fff;
 padding: 8px 0;
 font-size: 13px;
}
.topbar-inner {
 max-width: 1280px;
 margin: 0 auto;
 padding: 0 24px;
 display: flex;
 justify-content: space-between;
 align-items: center;
 gap: 16px;
 flex-wrap: wrap;
}
.topbar-left { display: flex; gap: 24px; align-items: center; }
.topbar-left span { display: flex; align-items: center; gap: 6px; color: rgba(255,255,255,0.9); }
.topbar-left a { color: #fff; }
.topbar-left a:hover { color: var(--yellow); }
.topbar-right { display: flex; gap: 8px; align-items: center; }
.topbar-btn {
 padding: 5px 14px;
 border-radius: 4px;
 font-size: 12.5px;
 font-weight: 500;
 transition: all 0.2s;
 font-family: 'Poppins', sans-serif;
 border: 1px solid rgba(255,255,255,0.25);
}
.topbar-btn:hover { background: rgba(255,255,255,0.12); }
.topbar-btn.track { background: var(--green); border-color: var(--green); }
.topbar-btn.track:hover { background: var(--green-dark); }
.header {
 background: #fff;
 border-bottom: 3px solid var(--green);
 position: sticky;
 top: 0;
 z-index: 100;
 box-shadow: var(--shadow-sm);
}
.header-inner {
 max-width: 1280px;
 margin: 0 auto;
 padding: 14px 24px;
 display: grid;
 grid-template-columns: auto 1fr auto;
 align-items: center;
 gap: 40px;
}
.logo {
 display: flex;
 align-items: center;
 gap: 12px;
}
.logo-mark {
 width: 52px; height: 52px;
 background: linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%);
 border-radius: 10px;
 display: flex;
 align-items: center;
 justify-content: center;
 color: #fff;
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 22px;
 letter-spacing: -0.03em;
 box-shadow: var(--shadow-blue);
 position: relative;
}
.logo-mark::after {
 content: '';
 position: absolute;
 bottom: -3px;
 right: -3px;
 width: 16px;
 height: 16px;
 background: var(--green);
 border: 2px solid #fff;
 border-radius: 50%;
}
.logo-text {
 font-family: 'Poppins', sans-serif;
}
.logo-name {
 font-size: 20px;
 font-weight: 800;
 color: var(--blue);
 letter-spacing: -0.02em;
 line-height: 1;
}
.logo-tag {
 font-size: 11.5px;
 color: var(--green);
 font-weight: 600;
 margin-top: 3px;
 letter-spacing: 0.03em;
}
.nav {
 display: flex;
 gap: 28px;
 justify-content: center;
 align-items: center;
}
.nav > a, .nav > .nav-item > a {
 color: var(--ink);
 font-family: 'Poppins', sans-serif;
 font-weight: 500;
 font-size: 14.5px;
 padding: 6px 2px;
 border-bottom: 2px solid transparent;
 transition: all 0.2s;
 display: inline-flex;
 align-items: center;
 gap: 4px;
 cursor: pointer;
}
.nav > a:hover, .nav > a.active, .nav > .nav-item > a:hover, .nav > .nav-item.active > a {
 color: var(--blue);
 border-bottom-color: var(--green);
}
.nav-item { position: relative; }
.nav-item .caret { font-size: 10px; color: var(--text-lighter); transition: transform 0.2s; }
.nav-item:hover .caret { transform: rotate(180deg); color: var(--blue); }
.dropdown-menu {
 position: absolute;
 top: 100%;
 left: 50%;
 transform: translateX(-50%) translateY(8px);
 min-width: 260px;
 background: #fff;
 border: 1px solid var(--border);
 border-radius: 10px;
 box-shadow: 0 10px 30px rgba(0,0,0,0.12), 0 2px 8px rgba(0,0,0,0.06);
 padding: 10px 0;
 opacity: 0;
 visibility: hidden;
 pointer-events: none;
 transition: all 0.25s ease;
 z-index: 1000;
}
.dropdown-menu::before {
 content: '';
 position: absolute;
 top: -10px;
 left: 0;
 right: 0;
 height: 10px;
}
.nav-item:hover .dropdown-menu {
 opacity: 1;
 visibility: visible;
 pointer-events: auto;
 transform: translateX(-50%) translateY(0);
}
.dropdown-menu a {
 display: block;
 padding: 9px 20px;
 font-family: 'Poppins', sans-serif;
 font-size: 14px;
 color: var(--ink);
 font-weight: 500;
 border-bottom: none !important;
 transition: all 0.15s;
 white-space: nowrap;
}
.dropdown-menu a:hover {
 background: #f0f7ff;
 color: var(--blue);
 padding-left: 24px;
 border-bottom: none;
}
.dropdown-menu .dropdown-divider {
 height: 1px;
 background: var(--border);
 margin: 8px 0;
}
.dropdown-menu .view-all {
 color: var(--green);
 font-weight: 600;
}
.dropdown-menu .view-all:hover {
 background: #ecfdf3;
 color: var(--green-dark);
}
.header-cta {
 display: flex;
 gap: 10px;
 align-items: center;
}
.phone-block {
 text-align: right;
 padding-right: 6px;
 border-right: 2px solid var(--border);
 margin-right: 2px;
}
.phone-lbl {
 font-size: 11px;
 color: var(--text-lighter);
 font-weight: 500;
 letter-spacing: 0.05em;
 text-transform: uppercase;
}
.phone-num {
 font-family: 'Poppins', sans-serif;
 font-weight: 700;
 font-size: 16px;
 color: var(--blue);
 line-height: 1.1;
 margin-top: 1px;
}
.phone-num:hover { color: var(--green); }
.btn-primary {
 background: var(--green);
 color: #fff;
 padding: 11px 22px;
 border-radius: 6px;
 font-family: 'Poppins', sans-serif;
 font-weight: 600;
 font-size: 13.5px;
 border: none;
 cursor: pointer;
 display: inline-flex;
 align-items: center;
 gap: 6px;
 transition: all 0.25s;
 box-shadow: var(--shadow-green);
}
.btn-primary:hover {
 background: var(--green-dark);
 transform: translateY(-1px);
 box-shadow: 0 12px 28px rgba(0, 166, 81, 0.35);
}
.hero {
 background: linear-gradient(135deg, rgba(0, 86, 167, 0.92) 0%, rgba(0, 61, 122, 0.95) 100%), url('../../images/hero/home-hero.jpg') center/cover no-repeat;
 color: #fff;
 padding: 60px 0 80px;
 position: relative;
 overflow: hidden;
}
.hero::before {
 content: '';
 position: absolute;
 top: -100px; right: -100px;
 width: 500px; height: 500px;
 background: radial-gradient(circle, rgba(0, 166, 81, 0.22) 0%, transparent 65%);
 pointer-events: none;
}
.hero::after {
 content: '';
 position: absolute;
 bottom: -200px; left: -200px;
 width: 500px; height: 500px;
 background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 65%);
 pointer-events: none;
}
.hero-inner {
 max-width: 1280px;
 margin: 0 auto;
 padding: 0 24px;
 display: grid;
 grid-template-columns: 1.3fr 1fr;
 gap: 48px;
 align-items: center;
 position: relative;
 z-index: 2;
}
.hero-badge {
 display: inline-flex;
 align-items: center;
 gap: 8px;
 padding: 8px 14px;
 background: rgba(0, 166, 81, 0.18);
 border: 1px solid rgba(0, 166, 81, 0.4);
 border-radius: 100px;
 font-size: 12.5px;
 font-weight: 600;
 font-family: 'Poppins', sans-serif;
 color: #fff;
 margin-bottom: 20px;
 backdrop-filter: blur(8px);
}
.hero-badge-dot {
 width: 7px; height: 7px;
 background: #00ff7a;
 border-radius: 50%;
 box-shadow: 0 0 10px #00ff7a;
 animation: pulse 2s ease-in-out infinite;
}
@keyframes pulse {
 0%, 100% { opacity: 1; transform: scale(1); }
 50% { opacity: 0.5; transform: scale(0.85); }
}
.hero h1 {
 color: #fff;
 font-size: clamp(32px, 4.8vw, 54px);
 font-weight: 800;
 line-height: 1.1;
 letter-spacing: -0.03em;
 margin-bottom: 18px;
}
.hero h1 .green-txt {
 color: #4ade80;
 position: relative;
}
.hero h1 .yellow-txt { color: var(--yellow); }
.hero-sub {
 font-size: 17px;
 color: rgba(255,255,255,0.92);
 line-height: 1.55;
 max-width: 560px;
 margin-bottom: 28px;
}
.hero-features {
 display: flex;
 flex-wrap: wrap;
 gap: 12px 24px;
 margin-bottom: 32px;
}
.hero-feature {
 display: flex;
 align-items: center;
 gap: 8px;
 font-size: 14px;
 color: rgba(255,255,255,0.95);
 font-weight: 500;
}
.hero-feature svg {
 width: 18px; height: 18px;
 color: #4ade80;
 flex-shrink: 0;
}
.hero-actions {
 display: flex;
 gap: 12px;
 flex-wrap: wrap;
 margin-bottom: 32px;
}
.hero-btn-primary {
 background: var(--green);
 color: #fff;
 padding: 14px 28px;
 border-radius: 6px;
 font-family: 'Poppins', sans-serif;
 font-weight: 600;
 font-size: 14.5px;
 display: inline-flex;
 align-items: center;
 gap: 8px;
 transition: all 0.25s;
 box-shadow: 0 8px 24px rgba(0, 166, 81, 0.4);
}
.hero-btn-primary:hover {
 background: #00c25f;
 transform: translateY(-2px);
}
.hero-btn-ghost {
 background: rgba(255, 255, 255, 0.1);
 color: #fff;
 padding: 14px 28px;
 border-radius: 6px;
 font-family: 'Poppins', sans-serif;
 font-weight: 600;
 font-size: 14.5px;
 border: 1.5px solid rgba(255, 255, 255, 0.4);
 display: inline-flex;
 align-items: center;
 gap: 8px;
 transition: all 0.25s;
 backdrop-filter: blur(8px);
}
.hero-btn-ghost:hover {
 background: rgba(255, 255, 255, 0.2);
 border-color: #fff;
}
.hero-trust {
 display: flex;
 gap: 28px;
 flex-wrap: wrap;
 padding-top: 20px;
 border-top: 1px solid rgba(255,255,255,0.15);
}
.hero-trust-item {
 display: flex;
 flex-direction: column;
}
.hero-trust-num {
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 24px;
 color: #fff;
 line-height: 1;
}
.hero-trust-num span { color: #4ade80; }
.hero-trust-lbl {
 font-size: 12px;
 color: rgba(255,255,255,0.75);
 margin-top: 4px;
 letter-spacing: 0.02em;
}
.quote-form {
 background: #fff;
 border-radius: 16px;
 padding: 32px;
 box-shadow: 0 20px 50px rgba(0, 0, 0, 0.2);
 color: var(--ink);
 position: relative;
}
.quote-form::before {
 content: '';
 position: absolute;
 top: -12px; left: 32px;
 width: 80px; height: 4px;
 background: var(--green);
 border-radius: 2px;
}
.quote-title {
 font-family: 'Poppins', sans-serif;
 font-size: 22px;
 font-weight: 700;
 color: var(--blue);
 margin-bottom: 4px;
}
.quote-subtitle {
 font-size: 13px;
 color: var(--green);
 font-weight: 600;
 margin-bottom: 22px;
 display: flex;
 align-items: center;
 gap: 6px;
}
.quote-subtitle::before {
 content: '⚡';
 font-size: 14px;
}
.form-grp { margin-bottom: 14px; }
.form-grp label {
 display: block;
 font-family: 'Poppins', sans-serif;
 font-weight: 500;
 font-size: 12.5px;
 color: var(--text);
 margin-bottom: 6px;
}
.form-grp input, .form-grp select {
 width: 100%;
 padding: 12px 14px;
 border: 1.5px solid var(--border);
 border-radius: 8px;
 font-family: 'Roboto', sans-serif;
 font-size: 14px;
 color: var(--ink);
 transition: all 0.2s;
 background: #fff;
 outline: none;
}
.form-grp input:focus, .form-grp select:focus {
 border-color: var(--blue);
 box-shadow: 0 0 0 3px var(--blue-light);
}
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.form-submit {
 width: 100%;
 background: linear-gradient(135deg, var(--green) 0%, var(--green-dark) 100%);
 color: #fff;
 padding: 14px;
 border-radius: 8px;
 font-family: 'Poppins', sans-serif;
 font-weight: 700;
 font-size: 15px;
 border: none;
 cursor: pointer;
 margin-top: 10px;
 transition: all 0.25s;
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 8px;
 box-shadow: var(--shadow-green);
}
.form-submit:hover {
 transform: translateY(-2px);
 box-shadow: 0 14px 32px rgba(0, 166, 81, 0.4);
}
.form-note {
 text-align: center;
 font-size: 11.5px;
 color: var(--text-lighter);
 margin-top: 12px;
}
.trust-bar {
 background: #fff;
 padding: 32px 24px;
 border-bottom: 1px solid var(--border);
}
.trust-bar-inner {
 max-width: 1280px;
 margin: 0 auto;
 display: grid;
 grid-template-columns: repeat(6, 1fr);
 gap: 24px;
 text-align: center;
}
.trust-item {
 display: flex;
 flex-direction: column;
 align-items: center;
 padding: 12px;
}
.trust-icon {
 width: 48px; height: 48px;
 background: var(--blue-light);
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 color: var(--blue);
 margin-bottom: 10px;
 transition: all 0.25s;
}
.trust-icon.green { background: var(--green-light); color: var(--green); }
.trust-item:hover .trust-icon {
 transform: scale(1.08);
}
.trust-item h5 {
 font-size: 13px;
 font-weight: 600;
 color: var(--ink);
 font-family: 'Poppins', sans-serif;
}
.trust-item p {
 font-size: 11.5px;
 color: var(--text-lighter);
 margin-top: 2px;
}
section {
 position: relative;
}
.section-wrap {
 max-width: 1280px;
 margin: 0 auto;
 padding: 70px 24px;
}
.section-head {
 text-align: center;
 margin-bottom: 48px;
 max-width: 720px;
 margin-left: auto;
 margin-right: auto;
}
.section-label {
 display: inline-block;
 padding: 5px 14px;
 background: var(--green-light);
 color: var(--green-dark);
 border-radius: 100px;
 font-family: 'Poppins', sans-serif;
 font-size: 12.5px;
 font-weight: 600;
 margin-bottom: 16px;
 letter-spacing: 0.03em;
}
.section-title {
 font-size: clamp(28px, 3.5vw, 42px);
 font-weight: 800;
 margin-bottom: 12px;
 letter-spacing: -0.02em;
}
.section-title .blue { color: var(--blue); }
.section-title .green { color: var(--green); }
.section-sub {
 font-size: 16px;
 color: var(--text-light);
 line-height: 1.55;
}
.services {
 background: #fff;
}
.services-grid {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 22px;
}
.service {
 background: #fff;
 border: 1px solid var(--border);
 border-radius: 12px;
 padding: 28px 24px;
 transition: all 0.3s;
 text-align: center;
 position: relative;
 overflow: hidden;
}
.service::before {
 content: '';
 position: absolute;
 top: 0; left: 0; right: 0;
 height: 3px;
 background: linear-gradient(90deg, var(--blue) 0%, var(--green) 100%);
 transform: scaleX(0);
 transform-origin: left;
 transition: transform 0.35s;
}
.service:hover {
 transform: translateY(-6px);
 box-shadow: var(--shadow-md);
 border-color: transparent;
}
.service:hover::before {
 transform: scaleX(1);
}
.service-icon {
 width: 70px; height: 70px;
 margin: 0 auto 18px;
 background: linear-gradient(135deg, var(--blue-light) 0%, var(--green-light) 100%);
 border-radius: 18px;
 display: flex;
 align-items: center;
 justify-content: center;
 color: var(--blue);
 transition: all 0.3s;
}
.service:hover .service-icon {
 background: linear-gradient(135deg, var(--blue) 0%, var(--green) 100%);
 color: #fff;
 transform: rotate(-5deg) scale(1.05);
}
.service-icon svg { width: 34px; height: 34px; }
.service h3 {
 font-size: 17px;
 margin-bottom: 8px;
 font-weight: 700;
 color: var(--ink);
}
.service p {
 font-size: 13.5px;
 color: var(--text-light);
 line-height: 1.5;
 margin-bottom: 16px;
}
.service-link {
 color: var(--blue);
 font-family: 'Poppins', sans-serif;
 font-weight: 600;
 font-size: 13px;
 display: inline-flex;
 align-items: center;
 gap: 4px;
 transition: gap 0.25s;
}
.service:hover .service-link { gap: 8px; color: var(--green); }
.why {
 background: linear-gradient(180deg, var(--blue-lighter) 0%, #fff 100%);
}
.why-grid {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 48px;
 align-items: center;
}
.why-left h2 {
 font-size: clamp(28px, 3.2vw, 38px);
 margin-bottom: 18px;
 letter-spacing: -0.02em;
}
.why-left h2 .green { color: var(--green); }
.why-left p {
 color: var(--text-light);
 font-size: 15.5px;
 margin-bottom: 22px;
 line-height: 1.65;
}
.why-features {
 display: grid;
 gap: 14px;
}
.why-feature {
 display: flex;
 align-items: flex-start;
 gap: 14px;
 background: #fff;
 padding: 16px 20px;
 border-radius: 10px;
 border: 1px solid var(--border);
 transition: all 0.25s;
}
.why-feature:hover {
 transform: translateX(6px);
 border-color: var(--blue);
 box-shadow: var(--shadow);
}
.why-feature-icon {
 width: 40px; height: 40px;
 background: var(--green-light);
 border-radius: 10px;
 display: flex;
 align-items: center;
 justify-content: center;
 color: var(--green);
 flex-shrink: 0;
}
.why-feature-icon svg { width: 20px; height: 20px; }
.why-feature h4 {
 font-size: 15px;
 color: var(--ink);
 margin-bottom: 2px;
 font-weight: 600;
}
.why-feature p {
 font-size: 13.5px;
 color: var(--text-light);
 margin: 0;
 line-height: 1.5;
}
.why-right {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 16px;
}
.stat-card {
 background: #fff;
 border: 1px solid var(--border);
 border-radius: 14px;
 padding: 28px 22px;
 text-align: center;
 position: relative;
 overflow: hidden;
 transition: all 0.3s;
}
.stat-card:hover {
 transform: translateY(-4px);
 box-shadow: var(--shadow);
}
.stat-card::before {
 content: '';
 position: absolute;
 top: -20px; right: -20px;
 width: 80px; height: 80px;
 border-radius: 50%;
 opacity: 0.1;
}
.stat-card.blue::before { background: var(--blue); }
.stat-card.green::before { background: var(--green); }
.stat-card:nth-child(1), .stat-card:nth-child(4) { margin-top: 20px; }
.stat-num {
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 38px;
 line-height: 1;
 margin-bottom: 8px;
 letter-spacing: -0.03em;
}
.stat-card.blue .stat-num { color: var(--blue); }
.stat-card.green .stat-num { color: var(--green); }
.stat-lbl {
 font-size: 13.5px;
 color: var(--text-light);
 font-weight: 500;
 line-height: 1.4;
}
.process-section {
 background: #fff;
}
.process {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 20px;
 position: relative;
}
.process::before {
 content: '';
 position: absolute;
 top: 38px; left: 10%; right: 10%;
 height: 2px;
 background: repeating-linear-gradient(90deg, var(--border) 0, var(--border) 10px, transparent 10px, transparent 18px);
 z-index: 0;
}
.process-step {
 text-align: center;
 position: relative;
 z-index: 1;
}
.process-num {
 width: 76px; height: 76px;
 margin: 0 auto 18px;
 background: #fff;
 border: 3px solid var(--blue);
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 26px;
 color: var(--blue);
 position: relative;
 transition: all 0.3s;
}
.process-step:hover .process-num {
 background: var(--blue);
 color: #fff;
 border-color: var(--blue);
 box-shadow: var(--shadow-blue);
 transform: scale(1.05);
}
.process-step:nth-child(even) .process-num { border-color: var(--green); color: var(--green); }
.process-step:nth-child(even):hover .process-num {
 background: var(--green);
 color: #fff;
 box-shadow: var(--shadow-green);
}
.process-step h4 {
 font-size: 17px;
 color: var(--ink);
 margin-bottom: 8px;
 font-weight: 700;
}
.process-step p {
 font-size: 13.5px;
 color: var(--text-light);
 line-height: 1.55;
 padding: 0 8px;
}
.pricing-section {
 background: var(--blue-lighter);
}
.pricing-tabs {
 display: flex;
 justify-content: center;
 gap: 8px;
 margin-bottom: 32px;
 flex-wrap: wrap;
}
.pricing-tab {
 padding: 10px 22px;
 background: #fff;
 border: 1.5px solid var(--border);
 border-radius: 100px;
 font-family: 'Poppins', sans-serif;
 font-weight: 600;
 font-size: 13.5px;
 color: var(--text);
 cursor: pointer;
 transition: all 0.25s;
}
.pricing-tab.active, .pricing-tab:hover {
 background: var(--blue);
 color: #fff;
 border-color: var(--blue);
 box-shadow: var(--shadow-blue);
}
.pricing-table {
 background: #fff;
 border-radius: 14px;
 overflow: hidden;
 box-shadow: var(--shadow);
 max-width: 1100px;
 margin: 0 auto;
 border: 1px solid var(--border);
}
table {
 width: 100%;
 border-collapse: collapse;
 font-family: 'Roboto', sans-serif;
}
thead {
 background: linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%);
 color: #fff;
}
th {
 padding: 16px 18px;
 text-align: left;
 font-family: 'Poppins', sans-serif;
 font-weight: 600;
 font-size: 13.5px;
 letter-spacing: 0.02em;
}
td {
 padding: 14px 18px;
 border-bottom: 1px solid var(--border);
 font-size: 14px;
 color: var(--text);
}
tbody tr:hover { background: var(--blue-lighter); }
tbody tr:last-child td { border-bottom: none; }
td:first-child { font-weight: 600; color: var(--ink); }
td .price { color: var(--green); font-weight: 600; white-space: nowrap; }
.pricing-note {
 text-align: center;
 margin-top: 18px;
 font-size: 13px;
 color: var(--text-light);
 font-style: italic;
}
.coverage-section { background: #fff; }
.coverage {
 display: grid;
 grid-template-columns: 1fr 1.5fr;
 gap: 48px;
 align-items: flex-start;
}
.coverage-left h2 {
 font-size: clamp(28px, 3.2vw, 38px);
 margin-bottom: 16px;
 letter-spacing: -0.02em;
}
.coverage-left p {
 font-size: 15.5px;
 color: var(--text-light);
 line-height: 1.65;
 margin-bottom: 20px;
}
.coverage-stats {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 12px;
 margin-top: 24px;
}
.cov-stat {
 background: linear-gradient(135deg, var(--blue-light) 0%, var(--green-light) 100%);
 padding: 18px 20px;
 border-radius: 12px;
 border: 1px solid var(--border);
}
.cov-stat-num {
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 32px;
 color: var(--blue);
 line-height: 1;
}
.cov-stat-lbl {
 font-size: 13px;
 color: var(--text-light);
 margin-top: 4px;
 font-weight: 500;
}
.cities-grid {
 display: grid;
 grid-template-columns: repeat(4, 1fr);
 gap: 8px;
}
.city {
 padding: 10px 14px;
 background: #fff;
 border: 1px solid var(--border);
 border-radius: 6px;
 font-size: 13px;
 color: var(--text);
 transition: all 0.2s;
 display: flex;
 align-items: center;
 gap: 6px;
}
.city:hover {
 background: var(--blue);
 color: #fff;
 border-color: var(--blue);
 transform: translateX(3px);
}
.city::before {
 content: '📍';
 font-size: 12px;
}
.testimonials-section {
 background: linear-gradient(180deg, #fff 0%, var(--blue-lighter) 100%);
}
.testimonials {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 22px;
}
.testimonial {
 background: #fff;
 border: 1px solid var(--border);
 border-radius: 12px;
 padding: 26px 24px;
 position: relative;
 transition: all 0.3s;
}
.testimonial:hover {
 transform: translateY(-4px);
 box-shadow: var(--shadow-md);
 border-color: transparent;
}
.testimonial-rating {
 color: var(--yellow);
 font-size: 16px;
 margin-bottom: 12px;
 letter-spacing: 2px;
}
.testimonial-text {
 font-size: 14.5px;
 color: var(--text);
 line-height: 1.65;
 margin-bottom: 18px;
 font-style: italic;
}
.testimonial-who {
 display: flex;
 align-items: center;
 gap: 12px;
 padding-top: 16px;
 border-top: 1px solid var(--border);
}
.testi-avatar {
 width: 44px; height: 44px;
 background: linear-gradient(135deg, var(--blue) 0%, var(--green) 100%);
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 color: #fff;
 font-family: 'Poppins', sans-serif;
 font-weight: 700;
 font-size: 15px;
}
.testi-info h5 {
 font-size: 14px;
 color: var(--ink);
 margin-bottom: 2px;
 font-weight: 600;
}
.testi-info p {
 font-size: 12px;
 color: var(--text-light);
}
.iba {
 background: #fff;
 padding: 32px 24px;
 border-top: 1px solid var(--border);
 border-bottom: 1px solid var(--border);
}
.iba-inner {
 max-width: 1280px;
 margin: 0 auto;
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 40px;
 flex-wrap: wrap;
 text-align: center;
}
.iba-badge {
 width: 110px; height: 110px;
 background: linear-gradient(135deg, var(--green) 0%, var(--green-dark) 100%);
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 color: #fff;
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 18px;
 text-align: center;
 line-height: 1.1;
 position: relative;
 box-shadow: var(--shadow-green);
}
.iba-badge::before {
 content: '';
 position: absolute;
 inset: 8px;
 border: 2px dashed rgba(255,255,255,0.5);
 border-radius: 50%;
}
.iba-text { max-width: 620px; text-align: left; }
.iba-text h3 {
 font-size: 24px;
 color: var(--blue);
 margin-bottom: 8px;
 font-weight: 800;
}
.iba-text p {
 font-size: 14.5px;
 color: var(--text-light);
 line-height: 1.6;
}
.cta {
 background: linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%);
 color: #fff;
 padding: 70px 24px;
 position: relative;
 overflow: hidden;
}
.cta::before {
 content: '';
 position: absolute;
 top: -100px; right: -100px;
 width: 400px; height: 400px;
 background: radial-gradient(circle, rgba(0,166,81,0.3) 0%, transparent 65%);
}
.cta-inner {
 max-width: 1000px;
 margin: 0 auto;
 text-align: center;
 position: relative;
 z-index: 2;
}
.cta h2 {
 color: #fff;
 font-size: clamp(28px, 4vw, 44px);
 margin-bottom: 14px;
 font-weight: 800;
 letter-spacing: -0.02em;
}
.cta h2 span { color: #4ade80; }
.cta p {
 font-size: 17px;
 color: rgba(255,255,255,0.9);
 max-width: 600px;
 margin: 0 auto 28px;
 line-height: 1.55;
}
.cta-buttons {
 display: flex;
 gap: 12px;
 justify-content: center;
 flex-wrap: wrap;
}
.footer {
 background: var(--ink);
 color: #fff;
 padding: 60px 24px 0;
}
.footer-inner {
 max-width: 1280px;
 margin: 0 auto;
}
.footer-top {
 display: grid;
 grid-template-columns: 1.5fr 1fr 1fr 1fr;
 gap: 40px;
 padding-bottom: 40px;
 border-bottom: 1px solid rgba(255,255,255,0.1);
}
.footer-brand {
 display: flex;
 flex-direction: column;
 gap: 16px;
}
.footer-brand .logo-mark { box-shadow: none; }
.footer-brand .logo-name { color: #fff; }
.footer-desc {
 color: rgba(255,255,255,0.7);
 font-size: 14px;
 line-height: 1.65;
 margin-top: 4px;
}
.footer-contacts {
 display: flex;
 flex-direction: column;
 gap: 10px;
}
.footer-contact {
 display: flex;
 align-items: center;
 gap: 10px;
 color: rgba(255,255,255,0.9);
 font-size: 14px;
}
.footer-contact svg { width: 16px; height: 16px; color: var(--green); flex-shrink: 0; }
.footer-contact:hover { color: var(--green); }
.footer-col h5 {
 color: var(--green);
 font-family: 'Poppins', sans-serif;
 font-size: 14px;
 font-weight: 700;
 margin-bottom: 18px;
 position: relative;
 padding-bottom: 10px;
}
.footer-col h5::after {
 content: '';
 position: absolute;
 bottom: 0; left: 0;
 width: 32px; height: 2px;
 background: var(--green);
}
.footer-col ul { list-style: none; display: flex; flex-direction: column; gap: 8px; }
.footer-col a {
 color: rgba(255,255,255,0.75);
 font-size: 13.5px;
 transition: all 0.2s;
 display: inline-flex;
 align-items: center;
 gap: 4px;
}
.footer-col a:hover { color: var(--green); transform: translateX(3px); }
.footer-col a::before {
 content: '›';
 color: var(--green);
 font-size: 14px;
}
.footer-cities {
 padding: 24px 0;
 border-bottom: 1px solid rgba(255,255,255,0.1);
}
.footer-cities h5 {
 color: var(--green);
 font-family: 'Poppins', sans-serif;
 font-size: 13px;
 margin-bottom: 14px;
 font-weight: 700;
 text-transform: uppercase;
 letter-spacing: 0.05em;
}
.footer-cities-list {
 display: flex;
 flex-wrap: wrap;
 gap: 6px 12px;
 font-size: 12.5px;
}
.footer-cities-list a {
 color: rgba(255,255,255,0.6);
 transition: color 0.2s;
}
.footer-cities-list a:hover { color: #fff; }
.footer-cities-list span { color: rgba(255,255,255,0.3); }
.footer-bottom {
 padding: 20px 0;
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
 gap: 12px;
 font-size: 12.5px;
 color: rgba(255,255,255,0.6);
}
.footer-bottom-links { display: flex; gap: 20px; }
.footer-bottom-links a { color: rgba(255,255,255,0.7); }
.footer-bottom-links a:hover { color: var(--green); }
.disclaimer {
 background: rgba(0,0,0,0.3);
 padding: 14px;
 text-align: center;
 font-size: 11.5px;
 color: rgba(255,255,255,0.55);
 font-style: italic;
 margin: 0 -24px;
 padding: 12px 24px;
}
.mobile-sticky {
 display: none;
 position: fixed;
 bottom: 0; left: 0; right: 0;
 z-index: 99;
 background: #fff;
 padding: 8px;
 border-top: 1px solid var(--border);
 box-shadow: 0 -8px 20px rgba(0,0,0,0.1);
 gap: 6px;
}
.mobile-sticky a {
 flex: 1;
 padding: 12px;
 text-align: center;
 font-size: 13px;
 font-weight: 600;
 border-radius: 6px;
 font-family: 'Poppins', sans-serif;
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 5px;
}
.mobile-sticky a.call { background: var(--blue); color: #fff; }
.mobile-sticky a.whatsapp { background: #25D366; color: #fff; }
.mobile-sticky a.quote { background: var(--green); color: #fff; }
.whatsapp-float {
 position: fixed;
 bottom: 20px; right: 20px;
 z-index: 50;
 width: 58px; height: 58px;
 background: #25D366;
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 color: #fff;
 box-shadow: 0 8px 24px rgba(37, 211, 102, 0.4);
 transition: all 0.3s;
}
.whatsapp-float:hover { transform: translateY(-3px) scale(1.05); }
.whatsapp-float svg { width: 30px; height: 30px; }
@media (max-width: 1000px) {
 .hero-inner { grid-template-columns: 1fr; gap: 36px; }
 .services-grid { grid-template-columns: repeat(2, 1fr); }
 .why-grid, .coverage { grid-template-columns: 1fr; gap: 36px; }
 .process { grid-template-columns: repeat(2, 1fr); gap: 28px; }
 .process::before { display: none; }
 .testimonials { grid-template-columns: 1fr; }
 .trust-bar-inner { grid-template-columns: repeat(3, 1fr); }
 .footer-top { grid-template-columns: 1fr 1fr; }
 .cities-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 720px) {
 body { padding-bottom: 80px; }
 .topbar-inner { flex-direction: column; gap: 8px; font-size: 12px; }
 .topbar-left { flex-wrap: wrap; justify-content: center; gap: 12px; }
 .topbar-left span:nth-child(n+3) { display: none; }
 .header-inner { grid-template-columns: 1fr auto; gap: 12px; padding: 12px 16px; }
 .nav { display: none; }
 .phone-block { display: none; }
 .logo-mark { width: 44px; height: 44px; font-size: 18px; }
 .logo-name { font-size: 16px; }
 .logo-tag { font-size: 10px; }
 .btn-primary { padding: 9px 16px; font-size: 12.5px; }
 .hero { padding: 40px 0 56px; }
 .hero-inner { padding: 0 16px; }
 .hero h1 { font-size: clamp(28px, 8vw, 38px); }
 .hero-sub { font-size: 15px; }
 .hero-features { gap: 8px 16px; }
 .hero-feature { font-size: 13px; }
 .hero-actions { flex-direction: column; }
 .hero-btn-primary, .hero-btn-ghost { justify-content: center; width: 100%; padding: 13px 20px; }
 .hero-trust { gap: 18px; }
 .hero-trust-num { font-size: 20px; }
 .hero-trust-lbl { font-size: 11px; }
 .quote-form { padding: 22px 20px; border-radius: 12px; }
 .quote-title { font-size: 19px; }
 .form-row { grid-template-columns: 1fr; gap: 0; }
 .trust-bar { padding: 20px 16px; }
 .trust-bar-inner { grid-template-columns: repeat(2, 1fr); gap: 12px; }
 .trust-icon { width: 40px; height: 40px; }
 .trust-icon svg { width: 20px; height: 20px; }
 .trust-item h5 { font-size: 12px; }
 .section-wrap { padding: 50px 16px; }
 .section-head { margin-bottom: 36px; }
 .section-title { font-size: clamp(26px, 7vw, 34px); }
 .section-sub { font-size: 14.5px; }
 .services-grid { grid-template-columns: 1fr; gap: 14px; }
 .service { padding: 24px 20px; }
 .why-left h2, .coverage-left h2 { font-size: clamp(24px, 6vw, 30px); }
 .why-right { grid-template-columns: 1fr 1fr; gap: 12px; }
 .stat-card { padding: 20px 16px; }
 .stat-card:nth-child(1), .stat-card:nth-child(4) { margin-top: 0; }
 .stat-num { font-size: 28px; }
 .process-num { width: 64px; height: 64px; font-size: 22px; }
 .process-step h4 { font-size: 15px; }
 .process-step p { font-size: 13px; }
 .pricing-tabs { gap: 6px; }
 .pricing-tab { padding: 8px 14px; font-size: 12.5px; }
 .pricing-table { border-radius: 10px; font-size: 13px; }
 th, td { padding: 10px 12px; font-size: 12.5px; }
 .cities-grid { grid-template-columns: repeat(2, 1fr); }
 .city { padding: 9px 12px; font-size: 12.5px; }
 .testimonials { gap: 14px; }
 .testimonial { padding: 22px 20px; }
 .testimonial-text { font-size: 14px; }
 .iba { padding: 24px 16px; }
 .iba-inner { flex-direction: column; gap: 18px; }
 .iba-badge { width: 90px; height: 90px; font-size: 15px; }
 .iba-text { text-align: center; }
 .iba-text h3 { font-size: 20px; }
 .cta { padding: 50px 16px; }
 .cta h2 { font-size: clamp(24px, 7vw, 32px); }
 .cta p { font-size: 15px; }
 .cta-buttons { flex-direction: column; width: 100%; }
 .footer { padding: 48px 16px 0; }
 .footer-top { grid-template-columns: 1fr; gap: 28px; padding-bottom: 30px; }
 .footer-bottom { flex-direction: column; text-align: center; }
 .mobile-sticky { display: flex; }
 .whatsapp-float { display: none; }
}
.reveal {
 opacity: 0;
 transform: translateY(20px);
 transition: all 0.7s ease;
}
.reveal.visible { opacity: 1; transform: translateY(0); }
.about {
 background: #fff;
}
.about-grid {
 display: grid;
 grid-template-columns: 1fr 1.2fr;
 gap: 56px;
 align-items: center;
}
.about-visual {
 position: relative;
 border-radius: 20px;
 overflow: hidden;
 background: linear-gradient(135deg, rgba(0,86,167,0.85) 0%, rgba(0,61,122,0.90) 100%), url('../../images/hero/about-section.jpg') center/cover no-repeat;
 padding: 40px;
 min-height: 460px;
 color: #fff;
 display: flex;
 flex-direction: column;
 justify-content: space-between;
 box-shadow: var(--shadow-md);
}
.about-visual::before {
 content: '';
 position: absolute;
 top: -100px; right: -100px;
 width: 300px; height: 300px;
 background: radial-gradient(circle, rgba(0, 166, 81, 0.3) 0%, transparent 65%);
}
.about-visual::after {
 content: '';
 position: absolute;
 bottom: -80px; left: -80px;
 width: 250px; height: 250px;
 background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 65%);
}
.about-badge-top {
 display: inline-flex;
 align-items: center;
 gap: 8px;
 padding: 8px 16px;
 background: rgba(0, 166, 81, 0.25);
 border: 1px solid rgba(0, 166, 81, 0.5);
 border-radius: 100px;
 font-family: 'Poppins', sans-serif;
 font-size: 12px;
 font-weight: 600;
 width: fit-content;
 backdrop-filter: blur(8px);
 position: relative;
 z-index: 2;
}
.about-visual h3 {
 color: #fff;
 font-size: 42px;
 font-weight: 800;
 line-height: 1.1;
 letter-spacing: -0.02em;
 position: relative;
 z-index: 2;
 margin: 20px 0;
}
.about-visual h3 span { color: #4ade80; }
.about-stats-row {
 display: grid;
 grid-template-columns: 1fr 1fr 1fr;
 gap: 12px;
 position: relative;
 z-index: 2;
}
.about-stat {
 background: rgba(255,255,255,0.1);
 border: 1px solid rgba(255,255,255,0.2);
 border-radius: 10px;
 padding: 14px 12px;
 text-align: center;
 backdrop-filter: blur(8px);
}
.about-stat-num {
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 22px;
 color: #4ade80;
 line-height: 1;
}
.about-stat-lbl {
 font-size: 11px;
 color: rgba(255,255,255,0.85);
 margin-top: 4px;
}
.about-cert {
 position: absolute;
 top: 40px;
 right: 40px;
 z-index: 3;
 width: 90px;
 height: 90px;
 background: #fff;
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 text-align: center;
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 11px;
 color: var(--green-dark);
 line-height: 1.1;
 transform: rotate(10deg);
 box-shadow: 0 8px 20px rgba(0,0,0,0.15);
 border: 3px solid var(--green);
}
.about-cert::before {
 content: '';
 position: absolute;
 inset: 5px;
 border: 1.5px dashed var(--green);
 border-radius: 50%;
}
.about-text .section-label { margin-bottom: 14px; }
.about-text h2 {
 font-size: clamp(28px, 3.4vw, 40px);
 margin-bottom: 18px;
 letter-spacing: -0.02em;
}
.about-text h2 span { color: var(--green); }
.about-text p {
 color: var(--text);
 font-size: 15.5px;
 line-height: 1.75;
 margin-bottom: 16px;
}
.about-text p strong { color: var(--blue); font-weight: 700; }
.about-points {
 list-style: none;
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 10px 16px;
 margin-top: 20px;
 margin-bottom: 24px;
}
.about-points li {
 display: flex;
 align-items: center;
 gap: 10px;
 font-size: 14px;
 color: var(--text);
 font-weight: 500;
}
.about-points li::before {
 content: '✓';
 width: 22px; height: 22px;
 background: var(--green);
 color: #fff;
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 font-weight: 700;
 font-size: 12px;
 flex-shrink: 0;
}
.about-signature {
 display: flex;
 align-items: center;
 gap: 14px;
 padding-top: 20px;
 border-top: 1px solid var(--border);
}
.about-sig-icon {
 width: 50px; height: 50px;
 background: var(--blue-light);
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 color: var(--blue);
 flex-shrink: 0;
}
.about-sig-text h5 {
 font-size: 15px;
 color: var(--ink);
 margin-bottom: 2px;
}
.about-sig-text p {
 font-size: 13px;
 color: var(--text-light);
 margin: 0;
 font-style: italic;
}
.tips-section {
 background: linear-gradient(180deg, #fff 0%, var(--blue-lighter) 100%);
}
.tips-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 22px;
}
.tip-card {
 background: #fff;
 border: 1px solid var(--border);
 border-radius: 14px;
 padding: 28px 24px;
 position: relative;
 transition: all 0.3s;
 overflow: hidden;
}
.tip-card::before {
 content: '';
 position: absolute;
 top: 0; left: 0;
 width: 5px; height: 100%;
 background: linear-gradient(180deg, var(--blue) 0%, var(--green) 100%);
 transform: scaleY(0);
 transform-origin: top;
 transition: transform 0.35s;
}
.tip-card:hover {
 transform: translateY(-4px);
 box-shadow: var(--shadow-md);
 border-color: transparent;
}
.tip-card:hover::before { transform: scaleY(1); }
.tip-number {
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 54px;
 color: var(--blue-light);
 line-height: 1;
 margin-bottom: 14px;
 transition: color 0.3s;
}
.tip-card:hover .tip-number { color: var(--green-light); }
.tip-card h3 {
 font-size: 18px;
 color: var(--ink);
 margin-bottom: 10px;
 font-weight: 700;
}
.tip-card p {
 font-size: 14px;
 color: var(--text-light);
 line-height: 1.6;
}
.faq-section {
 background: #fff;
}
.faq-container {
 max-width: 900px;
 margin: 0 auto;
}
.faq-item {
 background: #fff;
 border: 1.5px solid var(--border);
 border-radius: 12px;
 margin-bottom: 14px;
 overflow: hidden;
 transition: all 0.3s;
}
.faq-item:hover { border-color: var(--blue-light); }
.faq-item.active {
 border-color: var(--blue);
 box-shadow: var(--shadow);
}
.faq-question {
 padding: 20px 24px;
 display: flex;
 align-items: center;
 justify-content: space-between;
 gap: 16px;
 cursor: pointer;
 font-family: 'Poppins', sans-serif;
 font-weight: 600;
 font-size: 15.5px;
 color: var(--ink);
 user-select: none;
 transition: color 0.2s;
}
.faq-item:hover .faq-question { color: var(--blue); }
.faq-item.active .faq-question { color: var(--blue); }
.faq-q-text {
 display: flex;
 align-items: center;
 gap: 14px;
 flex: 1;
}
.faq-q-num {
 width: 32px; height: 32px;
 background: var(--blue-light);
 color: var(--blue);
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 13px;
 font-weight: 700;
 flex-shrink: 0;
 transition: all 0.3s;
}
.faq-item.active .faq-q-num {
 background: var(--blue);
 color: #fff;
}
.faq-toggle {
 width: 32px; height: 32px;
 background: var(--green-light);
 color: var(--green);
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 flex-shrink: 0;
 transition: all 0.3s;
 font-size: 18px;
 font-weight: 700;
}
.faq-item.active .faq-toggle {
 background: var(--green);
 color: #fff;
 transform: rotate(45deg);
}
.faq-answer {
 max-height: 0;
 overflow: hidden;
 transition: max-height 0.4s ease;
}
.faq-item.active .faq-answer {
 max-height: 400px;
}
.faq-answer-inner {
 padding: 0 24px 22px 70px;
 color: var(--text-light);
 font-size: 14.5px;
 line-height: 1.7;
}
.faq-answer-inner strong { color: var(--blue); font-weight: 600; }
.faq-cta {
 text-align: center;
 margin-top: 36px;
 padding: 28px;
 background: linear-gradient(135deg, var(--blue-light) 0%, var(--green-light) 100%);
 border-radius: 12px;
}
.faq-cta p {
 font-size: 15px;
 color: var(--text);
 margin-bottom: 14px;
}
.faq-cta strong { color: var(--blue); font-weight: 700; }
.enquiry-section {
 background: linear-gradient(180deg, var(--blue-lighter) 0%, #fff 100%);
}
.enquiry-wrap {
 display: grid;
 grid-template-columns: 1fr 1.2fr;
 gap: 48px;
 align-items: flex-start;
}
.enquiry-info {
 position: sticky;
 top: 90px;
}
.enquiry-info .section-label { margin-bottom: 14px; }
.enquiry-info h2 {
 font-size: clamp(26px, 3.2vw, 36px);
 margin-bottom: 14px;
 letter-spacing: -0.02em;
}
.enquiry-info h2 span { color: var(--green); }
.enquiry-info > p {
 color: var(--text-light);
 font-size: 15.5px;
 line-height: 1.65;
 margin-bottom: 28px;
}
.enquiry-contact-card {
 background: #fff;
 border: 1px solid var(--border);
 border-radius: 14px;
 padding: 22px;
 margin-bottom: 14px;
 display: flex;
 align-items: center;
 gap: 16px;
 transition: all 0.3s;
}
.enquiry-contact-card:hover {
 transform: translateX(4px);
 box-shadow: var(--shadow);
 border-color: var(--blue);
}
.enq-contact-icon {
 width: 52px; height: 52px;
 background: linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%);
 border-radius: 12px;
 display: flex;
 align-items: center;
 justify-content: center;
 color: #fff;
 flex-shrink: 0;
 box-shadow: var(--shadow-blue);
}
.enquiry-contact-card:nth-child(3) .enq-contact-icon {
 background: linear-gradient(135deg, var(--green) 0%, var(--green-dark) 100%);
 box-shadow: var(--shadow-green);
}
.enquiry-contact-card:nth-child(4) .enq-contact-icon {
 background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
 box-shadow: 0 8px 20px rgba(37, 211, 102, 0.3);
}
.enq-contact-icon svg { width: 22px; height: 22px; }
.enq-contact-text h5 {
 font-size: 13px;
 color: var(--text-lighter);
 font-weight: 500;
 margin-bottom: 2px;
 text-transform: uppercase;
 letter-spacing: 0.04em;
}
.enq-contact-text a, .enq-contact-text p {
 font-family: 'Poppins', sans-serif;
 font-weight: 600;
 font-size: 15px;
 color: var(--ink);
 margin: 0;
}
.enq-contact-text a:hover { color: var(--blue); }
.enquiry-form-card {
 background: #fff;
 border-radius: 16px;
 padding: 40px;
 box-shadow: var(--shadow-md);
 border: 1px solid var(--border);
 position: relative;
}
.enquiry-form-card::before {
 content: '';
 position: absolute;
 top: -10px; left: 40px;
 width: 80px; height: 4px;
 background: linear-gradient(90deg, var(--blue) 0%, var(--green) 100%);
 border-radius: 2px;
}
.enquiry-form-card h3 {
 font-size: 24px;
 color: var(--ink);
 margin-bottom: 4px;
 font-weight: 700;
}
.enquiry-form-card > p {
 font-size: 14px;
 color: var(--text-light);
 margin-bottom: 24px;
}
.enq-form-row {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 14px;
}
.enq-form-grp {
 margin-bottom: 16px;
}
.enq-form-grp label {
 display: block;
 font-family: 'Poppins', sans-serif;
 font-weight: 500;
 font-size: 13px;
 color: var(--ink);
 margin-bottom: 6px;
}
.enq-form-grp label .req { color: var(--green); margin-left: 3px; }
.enq-form-grp input,
.enq-form-grp select,
.enq-form-grp textarea {
 width: 100%;
 padding: 12px 14px;
 border: 1.5px solid var(--border);
 border-radius: 8px;
 font-family: 'Roboto', sans-serif;
 font-size: 14px;
 color: var(--ink);
 transition: all 0.2s;
 background: var(--off-white);
 outline: none;
 font-weight: 400;
}
.enq-form-grp input:focus,
.enq-form-grp select:focus,
.enq-form-grp textarea:focus {
 border-color: var(--blue);
 background: #fff;
 box-shadow: 0 0 0 3px var(--blue-light);
}
.enq-form-grp textarea {
 resize: vertical;
 min-height: 100px;
 font-family: 'Roboto', sans-serif;
}
.enq-submit {
 width: 100%;
 background: linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%);
 color: #fff;
 padding: 16px;
 border-radius: 10px;
 font-family: 'Poppins', sans-serif;
 font-weight: 700;
 font-size: 15px;
 border: none;
 cursor: pointer;
 margin-top: 8px;
 transition: all 0.3s;
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 8px;
 box-shadow: var(--shadow-blue);
}
.enq-submit:hover {
 background: linear-gradient(135deg, var(--green) 0%, var(--green-dark) 100%);
 transform: translateY(-2px);
 box-shadow: var(--shadow-green);
}
.enq-form-note {
 display: flex;
 align-items: center;
 justify-content: center;
 gap: 8px;
 font-size: 12.5px;
 color: var(--text-lighter);
 margin-top: 14px;
}
.content-hub {
 background: linear-gradient(180deg, var(--blue-lighter) 0%, #fff 100%);
 position: relative;
}
.content-hub::before {
 content: '';
 position: absolute;
 top: 0; left: 0; right: 0;
 height: 4px;
 background: linear-gradient(90deg, var(--blue) 0%, var(--green) 100%);
}
.content-intro {
 text-align: center;
 max-width: 760px;
 margin: 0 auto 56px;
}
.content-intro p {
 font-size: 17px;
 color: var(--text);
 line-height: 1.75;
 margin-top: 16px;
}
.content-blocks {
 display: grid;
 gap: 28px;
 max-width: 1100px;
 margin: 0 auto;
}
.content-block {
 background: #fff;
 border: 1px solid var(--border);
 border-radius: 16px;
 padding: 40px 44px;
 display: grid;
 grid-template-columns: 80px 1fr;
 gap: 32px;
 align-items: flex-start;
 position: relative;
 overflow: hidden;
 transition: all 0.3s;
}
.content-block:hover {
 border-color: var(--blue-light);
 box-shadow: var(--shadow);
 transform: translateY(-2px);
}
.content-block::before {
 content: '';
 position: absolute;
 left: 0; top: 0; bottom: 0;
 width: 4px;
 background: linear-gradient(180deg, var(--blue) 0%, var(--green) 100%);
 opacity: 0;
 transition: opacity 0.3s;
}
.content-block:hover::before { opacity: 1; }
.content-num-wrap {
 position: relative;
}
.content-num {
 font-family: 'Poppins', sans-serif;
 font-weight: 800;
 font-size: 56px;
 background: linear-gradient(135deg, var(--blue) 0%, var(--green) 100%);
 -webkit-background-clip: text;
 -webkit-text-fill-color: transparent;
 background-clip: text;
 line-height: 1;
 letter-spacing: -0.04em;
}
.content-num-lbl {
 font-family: 'JetBrains Mono', monospace;
 font-size: 10px;
 color: var(--text-lighter);
 text-transform: uppercase;
 letter-spacing: 0.15em;
 margin-top: 8px;
 font-weight: 500;
}
.content-body h3 {
 font-family: 'Poppins', sans-serif;
 font-size: 24px;
 font-weight: 700;
 color: var(--ink);
 margin-bottom: 14px;
 letter-spacing: -0.015em;
 line-height: 1.25;
}
.content-body h3 .blue { color: var(--blue); }
.content-body h3 .green { color: var(--green); }
.content-body p {
 font-size: 15.5px;
 color: var(--text);
 line-height: 1.75;
 margin-bottom: 14px;
}
.content-body p:last-child { margin-bottom: 0; }
.content-body p strong { color: var(--blue); font-weight: 700; }
.content-body p em { color: var(--green); font-style: normal; font-weight: 600; }
.content-highlight {
 background: linear-gradient(135deg, var(--blue-light) 0%, var(--green-light) 100%);
 border-left: 4px solid var(--green);
 border-radius: 10px;
 padding: 18px 22px;
 margin: 18px 0;
 font-size: 15px;
 color: var(--ink);
 line-height: 1.65;
 font-style: italic;
}
.content-highlight strong { color: var(--blue); font-weight: 700; font-style: normal; }
.content-points {
 list-style: none;
 margin-top: 12px;
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 8px 16px;
}
.content-points li {
 position: relative;
 padding-left: 24px;
 font-size: 14px;
 color: var(--text);
 line-height: 1.6;
}
.content-points li::before {
 content: '✓';
 position: absolute;
 left: 0; top: 2px;
 width: 16px; height: 16px;
 background: var(--green);
 color: #fff;
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 10px;
 font-weight: 700;
}
.content-big-cta {
 background: linear-gradient(135deg, var(--blue) 0%, var(--blue-dark) 100%);
 color: #fff;
 border-radius: 16px;
 padding: 48px;
 margin-top: 36px;
 position: relative;
 overflow: hidden;
 text-align: center;
}
.content-big-cta::before {
 content: '';
 position: absolute;
 top: -80px; right: -80px;
 width: 300px; height: 300px;
 background: radial-gradient(circle, rgba(0,166,81,0.3) 0%, transparent 65%);
}
.content-big-cta::after {
 content: '';
 position: absolute;
 bottom: -80px; left: -80px;
 width: 300px; height: 300px;
 background: radial-gradient(circle, rgba(255,255,255,0.08) 0%, transparent 65%);
}
.content-big-cta > * { position: relative; z-index: 2; }
.content-big-cta h3 {
 color: #fff;
 font-size: clamp(24px, 3vw, 34px);
 font-weight: 800;
 margin-bottom: 12px;
 letter-spacing: -0.02em;
}
.content-big-cta h3 span { color: #4ade80; }
.content-big-cta p {
 color: rgba(255,255,255,0.9);
 font-size: 16px;
 max-width: 580px;
 margin: 0 auto 28px;
 line-height: 1.6;
}
.content-big-cta .big-cta-btns {
 display: flex;
 gap: 12px;
 justify-content: center;
 flex-wrap: wrap;
}
.cta-btn-white {
 background: #fff;
 color: var(--blue);
 padding: 14px 28px;
 border-radius: 8px;
 font-family: 'Poppins', sans-serif;
 font-weight: 700;
 font-size: 14.5px;
 text-decoration: none;
 display: inline-flex;
 align-items: center;
 gap: 8px;
 transition: all 0.25s;
 border: none;
}
.cta-btn-white:hover {
 background: var(--green);
 color: #fff;
 transform: translateY(-2px);
 box-shadow: var(--shadow-green);
}
.cta-btn-outline {
 background: transparent;
 color: #fff;
 padding: 14px 28px;
 border-radius: 8px;
 font-family: 'Poppins', sans-serif;
 font-weight: 600;
 font-size: 14.5px;
 text-decoration: none;
 display: inline-flex;
 align-items: center;
 gap: 8px;
 transition: all 0.25s;
 border: 1.5px solid rgba(255,255,255,0.4);
}
.cta-btn-outline:hover {
 background: #fff;
 color: var(--blue);
 border-color: #fff;
}
@media (max-width: 1000px) {
 .about-grid { grid-template-columns: 1fr; gap: 36px; }
 .tips-grid { grid-template-columns: repeat(2, 1fr); }
 .enquiry-wrap { grid-template-columns: 1fr; gap: 32px; }
 .enquiry-info { position: static; }
 .content-block { padding: 32px 28px; grid-template-columns: 60px 1fr; gap: 24px; }
 .content-num { font-size: 44px; }
}
@media (max-width: 720px) {
 .about-visual { padding: 28px 22px; min-height: auto; }
 .about-visual h3 { font-size: 30px; }
 .about-cert { width: 72px; height: 72px; font-size: 10px; top: 22px; right: 22px; }
 .about-stats-row { gap: 8px; }
 .about-stat { padding: 12px 8px; }
 .about-stat-num { font-size: 18px; }
 .about-stat-lbl { font-size: 10px; }
 .about-text h2 { font-size: clamp(24px, 6vw, 30px); }
 .about-text p { font-size: 14.5px; }
 .about-points { grid-template-columns: 1fr; gap: 8px; }
 .tips-grid { grid-template-columns: 1fr; gap: 14px; }
 .tip-card { padding: 24px 20px; }
 .tip-number { font-size: 44px; }
 .faq-question { padding: 16px 18px; font-size: 14px; gap: 12px; }
 .faq-q-text { gap: 10px; }
 .faq-q-num { width: 28px; height: 28px; font-size: 12px; }
 .faq-toggle { width: 28px; height: 28px; font-size: 16px; }
 .faq-answer-inner { padding: 0 18px 18px 54px; font-size: 13.5px; }
 .faq-cta { padding: 22px 18px; }
 .enquiry-form-card { padding: 28px 22px; border-radius: 14px; }
 .enquiry-form-card h3 { font-size: 20px; }
 .enq-form-row { grid-template-columns: 1fr; gap: 0; }
 .enquiry-contact-card { padding: 16px 18px; }
 .enq-contact-icon { width: 44px; height: 44px; }
 .enq-contact-text a, .enq-contact-text p { font-size: 13.5px; }
 .content-block {
 padding: 26px 20px;
 grid-template-columns: 1fr;
 gap: 14px;
 }
 .content-num-wrap {
 display: flex;
 align-items: baseline;
 gap: 10px;
 }
 .content-num { font-size: 38px; }
 .content-num-lbl { margin-top: 0; }
 .content-body h3 { font-size: 19px; }
 .content-body p { font-size: 14.5px; }
 .content-highlight { padding: 14px 16px; font-size: 14px; }
 .content-points { grid-template-columns: 1fr; gap: 6px; }
 .content-big-cta { padding: 32px 22px; border-radius: 14px; }
 .content-big-cta .big-cta-btns { flex-direction: column; }
 .cta-btn-white, .cta-btn-outline { justify-content: center; }
}
.logo-img {
 height: 48px;
 width: auto;
 max-width: 220px;
 object-fit: contain;
 display: block;
}
.logo-img-footer {
 height: 44px;
 width: auto;
 max-width: 200px;
 object-fit: contain;
 display: block;
 filter: brightness(1.1);
}
@media (max-width: 768px) {
 .logo-img, .logo-img-footer {
 height: 40px;
 max-width: 180px;
 }
}
.logo {
 display: flex;
 align-items: center;
 gap: 12px;
 text-decoration: none;
}
.logo .logo-text {
 display: none;
}
.footer-brand .logo-text {
 display: none;
}


/* Shared layout for inner pages (About, Contact, Services, Locations, Guides and Blog) */
.logo-img { display:block; width:auto; max-width:240px; max-height:62px; object-fit:contain; }
.logo-img-footer { display:block; width:auto; max-width:220px; max-height:56px; object-fit:contain; }
.header .logo { min-width:190px; }
.header-inner { column-gap:24px; }
.header .nav { gap:clamp(10px,1.5vw,24px); flex-wrap:wrap; }

main#main-content, main { min-height:45vh; }
.page-hero {
  position:relative; overflow:hidden; color:#fff;
  background:linear-gradient(125deg, #003d7a 0%, #0056a7 58%, #0a2f5f 100%);
  padding:34px 0 46px;
}
.page-hero::after { content:""; position:absolute; width:360px; height:360px; right:-100px; bottom:-220px; border-radius:50%; background:rgba(255,255,255,.08); pointer-events:none; }
.page-hero-inner { width:100%; max-width:1280px; margin:0 auto; padding:0 24px; position:relative; z-index:1; }
.page-hero .breadcrumb { background:transparent; padding:0; margin:0 0 18px; color:rgba(255,255,255,.82); font-size:13px; }
.page-hero .breadcrumb a { color:#fff; text-decoration:underline; text-underline-offset:2px; }
.page-hero h1 { color:#fff; font-size:clamp(30px,3.6vw,46px); line-height:1.15; letter-spacing:-.025em; margin:0 0 14px; max-width:1050px; }
.page-hero-sub { color:rgba(255,255,255,.9); font-size:17px; line-height:1.65; max-width:920px; margin:0 0 22px; }
.page-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-top:18px; }
.page-hero .hero-btn-primary, .page-hero .hero-btn-ghost { text-decoration:none; }
.hero-image-section { position:relative; z-index:2; }
.hero-image-section img { max-width:100%; }

.article { background:#fff; padding:0; }
.article-wrap { width:100%; max-width:1240px; margin:0 auto; padding:48px 24px 64px; }
.article-content { max-width:940px; margin:0 auto; color:#334155; font-size:16px; line-height:1.8; overflow-wrap:anywhere; }
.article-content h2 { color:#0a2f5f; font-size:clamp(23px,2.5vw,31px); line-height:1.3; margin:34px 0 14px; }
.article-content h2:first-child { margin-top:0; }
.article-content h3 { color:#123e6b; font-size:clamp(19px,2vw,23px); line-height:1.35; margin:26px 0 10px; }
.article-content h4 { color:#123e6b; font-size:17px; margin:22px 0 8px; }
.article-content p { margin:0 0 18px; line-height:1.8; }
.article-content ul, .article-content ol { margin:10px 0 22px 24px; padding-left:16px; }
.article-content li { margin:0 0 8px; padding-left:3px; }
.article-content a { color:#0056a7; text-decoration:underline; text-underline-offset:2px; }
.article-content a:hover { color:#008040; }
.article-content blockquote { border-left:4px solid #00a651; background:#f4f8fc; margin:22px 0; padding:18px 22px; border-radius:0 10px 10px 0; }
.article-content img, .article img { max-width:100%; height:auto; }
.article-content table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; margin:22px 0; }
.article-content th, .article-content td { padding:11px 14px; border:1px solid #e2e8f0; text-align:left; }
.article-content th { color:#0a2f5f; background:#f1f5f9; }
.article-content tr:nth-child(even) td { background:#fafcff; }

.quick-answer { max-width:1160px; width:calc(100% - 48px); margin:28px auto; box-sizing:border-box; }
.tldr-box, .highlight-box, .best-for, .article-methodology, .article-sources, .reviewed-by { max-width:100%; box-sizing:border-box; margin:22px 0; }
.check-list { list-style:none; padding:0; margin:18px 0; }
.check-list li { position:relative; padding:8px 0 8px 30px; border-bottom:1px solid #eef2f7; }
.check-list li::before { content:"✓"; position:absolute; left:0; top:8px; display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px; border-radius:50%; background:#dcfce7; color:#15803d; font-weight:800; font-size:12px; }

.related-services, .related-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; margin:24px 0; }
.related-card, .related-service-card { display:block; background:#fff; color:#1f2937; border:1px solid #e2e8f0; border-radius:12px; padding:18px; text-decoration:none; box-shadow:0 2px 8px rgba(15,23,42,.04); transition:transform .2s,box-shadow .2s,border-color .2s; }
.related-card:hover, .related-service-card:hover { transform:translateY(-3px); border-color:#93c5fd; box-shadow:0 10px 24px rgba(15,23,42,.09); }
.related-card h3, .related-service-card h3 { color:#0a2f5f; font-size:16px; margin:0 0 8px; }
.related-card p, .related-service-card p { font-size:14px; color:#64748b; line-height:1.55; margin:0 0 10px; }
.related-card a, .related-service-card a { color:#15803d; font-weight:600; text-decoration:none; }
.related-icon { display:inline-flex; align-items:center; justify-content:center; width:42px; height:42px; background:#e8f1f9; color:#0056a7; border-radius:10px; margin-bottom:10px; }

.enquiry-inline { display:grid; grid-template-columns:minmax(0,1fr) minmax(320px,.9fr); gap:28px; align-items:start; margin:30px 0; padding:26px; background:#f4f8fc; border:1px solid #e2e8f0; border-radius:16px; }
.enquiry-inline-info h2, .enquiry-inline-info h3 { color:#0a2f5f; }
.enquiry-form-inline { min-width:0; padding:22px; background:#fff; border:1px solid #e2e8f0; border-radius:12px; box-shadow:0 8px 24px rgba(15,23,42,.07); }
.enquiry-form-inline input, .enquiry-form-inline select, .enquiry-form-inline textarea, .enq-form-grp input, .enq-form-grp select, .enq-form-grp textarea { width:100%; min-width:0; max-width:100%; padding:11px 12px; border:1px solid #cbd5e1; border-radius:7px; background:#fff; color:#1f2937; font:inherit; font-size:14px; }
.enq-form-grp { min-width:0; margin-bottom:14px; }
.enq-form-grp label { display:block; margin-bottom:6px; font-size:13px; font-weight:600; color:#334155; }
.enq-form-row { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.enq-submit { display:inline-flex; align-items:center; justify-content:center; width:100%; padding:13px 18px; border:0; border-radius:8px; background:#00a651; color:#fff; font-weight:700; font-size:15px; cursor:pointer; }
.enq-submit:hover { background:#008040; }
.trust-badges-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:12px; margin:24px 0; }
.trust-badges-row > * { padding:14px; background:#fff; border:1px solid #e2e8f0; border-radius:10px; }
.bd-quote-section { margin:32px auto; padding:28px; max-width:1100px; border-radius:16px; background:linear-gradient(135deg,#003d7a,#0056a7); color:#fff; }
.bd-quote-section h2, .bd-quote-section h3 { color:#fff; }
.pricing-table-wrap { width:100%; overflow-x:auto; margin:22px 0; border-radius:10px; border:1px solid #e2e8f0; }
.pricing-table-wrap table { min-width:620px; width:100%; margin:0; }
.faq-accordion, .faq-container { width:100%; max-width:100%; margin:22px auto; }
.faq-item { overflow:hidden; }
.faq-question { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:17px 18px; cursor:pointer; background:#fff; color:#0a2f5f; font-weight:600; }
.faq-question:hover { background:#f8fbff; }
.faq-q-text { display:flex; gap:12px; align-items:center; }
.faq-q-num { flex:0 0 auto; display:inline-flex; width:28px; height:28px; align-items:center; justify-content:center; border-radius:50%; color:#fff; background:#0056a7; font-size:12px; }
.faq-toggle { flex:0 0 auto; color:#008040; font-size:22px; line-height:1; }
.faq-answer { color:#475569; line-height:1.7; }
.faq-answer-inner { padding:0 18px 18px; }
.back-to-top { position:fixed; right:22px; bottom:88px; z-index:1000; width:42px; height:42px; border:0; border-radius:50%; display:flex; align-items:center; justify-content:center; background:#0056a7; color:#fff; box-shadow:0 5px 16px rgba(0,0,0,.18); text-decoration:none; }
.whatsapp-float { z-index:999; }
.exit-modal-overlay { position:fixed; inset:0; z-index:10001; display:none; align-items:center; justify-content:center; padding:20px; background:rgba(15,23,42,.68); }
.exit-modal-overlay.active, .exit-modal-overlay.show { display:flex; }
.exit-modal { max-width:520px; width:100%; padding:28px; border-radius:16px; background:#fff; color:#1f2937; box-shadow:0 24px 70px rgba(0,0,0,.3); position:relative; }
.exit-modal-close { position:absolute; top:10px; right:12px; border:0; background:transparent; color:#64748b; font-size:24px; cursor:pointer; }
.exit-btn { display:inline-flex; align-items:center; justify-content:center; margin-top:12px; padding:12px 18px; border-radius:8px; background:#00a651; color:#fff; font-weight:700; text-decoration:none; }

@media (max-width:900px) {
 .header-inner { gap:16px; grid-template-columns:auto 1fr; }
 .header .nav { grid-column:1/-1; justify-content:flex-start; }
 .header-cta { justify-content:flex-end; }
 .trust-bar-inner { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .enquiry-inline { grid-template-columns:1fr; }
}
@media (max-width:768px) {
 .page-hero { padding:28px 0 34px; }
 .page-hero-inner { padding:0 18px; }
 .page-hero h1 { font-size:30px; }
 .page-hero-sub { font-size:15.5px; }
 .article-wrap { padding:32px 18px 44px; }
 .article-content { font-size:15px; }
 .article-content h2 { margin-top:28px; }
 .hero-image-section img { margin-top:-28px !important; border-radius:12px !important; }
 .quick-answer { width:calc(100% - 32px); margin:20px auto; }
 .enquiry-inline { padding:18px; gap:18px; }
 .enq-form-row { grid-template-columns:1fr; }
 .trust-bar-inner { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .header-inner { display:flex; flex-wrap:wrap; justify-content:space-between; }
 .header .logo-img { max-width:190px; max-height:54px; }
 .header .nav { width:100%; overflow-x:auto; }
 .header-cta { width:100%; justify-content:flex-start; }
}
@media (max-width:480px) {
 .page-hero h1 { font-size:26px; }
 .page-hero-actions > a { width:100%; justify-content:center; }
 .related-services, .related-grid { grid-template-columns:1fr; }
 .trust-badges-row { grid-template-columns:1fr 1fr; }
 .trust-bar-inner { grid-template-columns:1fr 1fr; gap:8px; }
 .article-content th, .article-content td { padding:8px 10px; }
}


/* ================================================================
   Express Gati visual corrections (29 Oct 2026)
   - Split text and feature imagery instead of overlapping content
   - Desktop-wide related service cards with responsive breakpoints
   ================================================================ */
.related-services {
  display: block !important;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
}
.related-services > div {
  width: min(1280px, calc(100% - 32px)) !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  box-sizing: border-box;
}
.related-services .related-grid {
  display: grid !important;
  width: 100%;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px;
  margin: 24px auto 0;
  align-items: stretch;
}
.related-services .related-card {
  min-width: 0;
  height: 100%;
  box-sizing: border-box;
  overflow-wrap: anywhere;
}
.related-services .related-card h3 { line-height: 1.35; }

.hero-image-section.feature-section {
  position: static !important;
  z-index: auto !important;
  margin: 0 !important;
  padding: clamp(24px, 3.5vw, 46px) 24px !important;
  background: #f4f8fc !important;
  overflow: visible !important;
  box-sizing: border-box;
}
.feature-split {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: clamp(18px, 2.5vw, 34px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.95fr);
  gap: clamp(24px, 3.2vw, 48px);
  align-items: center;
  background: #fff;
  border: 1px solid #e1eaf3;
  border-radius: 22px;
  box-shadow: 0 14px 34px rgba(10, 47, 95, .08);
  box-sizing: border-box;
}
.feature-split-copy { min-width: 0; color: #334155; }
.feature-split-kicker {
  display: inline-block;
  margin-bottom: 10px;
  color: #e85d04;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}
.feature-split-copy h2 {
  margin: 0 0 14px;
  color: #0a2f5f;
  font-family: 'Poppins', Arial, sans-serif;
  font-size: clamp(24px, 2.2vw, 34px);
  line-height: 1.2;
  letter-spacing: -.025em;
}
.feature-split-copy p {
  margin: 0 0 16px;
  color: #475569;
  font-size: 15.5px;
  line-height: 1.75;
  overflow-wrap: anywhere;
}
.feature-split-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px 14px;
  margin: 18px 0 20px;
  padding: 0;
  list-style: none;
}
.feature-split-points li {
  position: relative;
  padding: 10px 12px 10px 34px;
  border-radius: 10px;
  background: #f2f7fc;
  color: #173b65;
  font-size: 13.5px;
  line-height: 1.45;
}
.feature-split-points li::before {
  content: '✓';
  position: absolute;
  left: 12px;
  top: 9px;
  color: #e85d04;
  font-weight: 900;
}
.feature-quote-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  padding-top: 16px;
  border-top: 1px solid #e5edf5;
}
.feature-quote-row a {
  display: inline-flex;
  min-height: 44px;
  padding: 0 18px;
  justify-content: center;
  align-items: center;
  border-radius: 9px;
  font-size: 14px;
  font-weight: 750;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease;
}
.feature-quote-row a:hover { transform: translateY(-1px); }
.feature-quote-primary {
  color: #fff !important;
  background: #f05a0a;
  box-shadow: 0 5px 14px rgba(240,90,10,.18);
}
.feature-quote-secondary {
  color: #0a2f5f !important;
  border: 1px solid #c9d8e8;
  background: #fff;
}
.feature-split-media { min-width: 0; position: relative; }
.feature-split-media img {
  display: block !important;
  width: 100% !important;
  height: clamp(270px, 30vw, 410px) !important;
  max-height: none !important;
  margin: 0 !important;
  position: static !important;
  z-index: auto !important;
  object-fit: cover !important;
  object-position: center;
  border-radius: 16px !important;
  box-shadow: 0 12px 30px rgba(10,47,95,.14) !important;
}
.feature-media-note {
  margin-top: 10px;
  color: #64748b;
  font-size: 12px;
  line-height: 1.5;
  text-align: center;
}

@media (max-width: 1120px) {
  .related-services .related-grid { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
}
@media (max-width: 820px) {
  .related-services .related-grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 14px; }
  .feature-split { grid-template-columns: minmax(0,1fr) minmax(0,.9fr); gap: 20px; padding: 20px; }
  .feature-split-media img { height: 310px !important; }
}
@media (max-width: 640px) {
  .hero-image-section.feature-section { padding: 18px 12px !important; }
  .feature-split { grid-template-columns: minmax(0,1fr); gap: 20px; padding: 16px; border-radius: 16px; }
  .feature-split-media { grid-row: 2; }
  .feature-split-media img { height: 250px !important; border-radius: 12px !important; }
  .feature-split-points { grid-template-columns: minmax(0,1fr); gap: 8px; }
  .feature-quote-row { display: grid; grid-template-columns: minmax(0,1fr); }
  .feature-quote-row a { width: 100%; box-sizing: border-box; }
  .related-services { padding: 38px 12px !important; }
  .related-services > div { width: 100% !important; }
}
@media (max-width: 520px) {
  .related-services .related-grid { grid-template-columns: minmax(0,1fr) !important; }
}

/* Size the user-supplied horizontal logo proportionally, without color filters. */
.header .logo-img { height: auto !important; width: auto !important; max-width: 236px !important; max-height: 62px !important; object-fit: contain; }
.footer-brand .logo-img-footer, .logo-img-footer { height: auto !important; width: auto !important; max-width: 220px !important; max-height: 50px !important; filter: none !important; object-fit: contain; }
@media (max-width: 768px) { .header .logo-img { max-width: 190px !important; max-height: 48px !important; } .logo-img-footer { max-width: 180px !important; max-height: 42px !important; } }

/* Express Gati request-a-quote modal and timed prompts */
.eg-quote-trigger,
.eg-header-quote-button {
  background: #f56600 !important;
  color: #fff !important;
  border: 1px solid #f56600 !important;
  border-radius: 7px !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  padding: 12px 18px !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: 0 6px 18px rgba(245, 102, 0, .18) !important;
  transition: background .2s ease, transform .2s ease, box-shadow .2s ease !important;
}
.eg-quote-trigger:hover,
.eg-header-quote-button:hover {
  background: #dc5200 !important;
  border-color: #dc5200 !important;
  transform: translateY(-1px);
  box-shadow: 0 9px 22px rgba(245, 102, 0, .26) !important;
}
.eg-quote-trigger:focus-visible,
.eg-header-quote-button:focus-visible,
.eg-quote-close:focus-visible,
.eg-toast-close:focus-visible,
.eg-toast-action:focus-visible,
.eg-quote-submit:focus-visible {
  outline: 3px solid #ffc107 !important;
  outline-offset: 3px !important;
}
.eg-modal-open { overflow: hidden !important; }
.eg-quote-overlay[hidden], .eg-site-toast[hidden] { display: none !important; }
.eg-quote-overlay {
  position: fixed;
  inset: 0;
  z-index: 10080;
  padding: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(5, 23, 48, .72);
  backdrop-filter: blur(3px);
}
.eg-quote-panel {
  width: min(100%, 640px);
  max-height: min(92vh, 780px);
  overflow: auto;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .28);
  color: #1a1a2e;
  animation: egQuoteIn .18s ease-out;
}
.eg-quote-modal-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  padding: 23px 26px 20px;
  color: #fff;
  background: linear-gradient(120deg, #003d7a, #0056a7);
  border-bottom: 4px solid #f56600;
}
.eg-quote-modal-heading h2 {
  margin: 0 0 5px;
  color: #fff;
  font-family: 'Poppins', sans-serif;
  font-size: clamp(22px, 3vw, 27px);
  line-height: 1.25;
}
.eg-quote-modal-heading p { margin: 0; color: rgba(255,255,255,.88); font-size: 14px; }
.eg-quote-close {
  border: 0;
  border-radius: 9px;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  background: rgba(255,255,255,.15);
  color: #fff;
  cursor: pointer;
  font-size: 30px;
  line-height: 1;
}
.eg-quote-close:hover { background: rgba(255,255,255,.25); }
.eg-quote-form { padding: 23px 26px 26px; }
.eg-quote-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.eg-quote-field { min-width: 0; }
.eg-quote-field label { display: block; margin: 0 0 6px; color: #203553; font-size: 13px; font-weight: 700; }
.eg-quote-field input {
  display: block;
  width: 100%;
  min-width: 0;
  min-height: 46px;
  padding: 11px 13px;
  border: 1px solid #d6deea;
  border-radius: 8px;
  background: #fff;
  color: #17233a;
  font: inherit;
  font-size: 14px;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.eg-quote-field input:focus { outline: none; border-color: #0056a7; box-shadow: 0 0 0 3px rgba(0,86,167,.12); }
.eg-quote-field input::placeholder { color: #8a96a8; }
.eg-quote-privacy { margin: 16px 0 14px; color: #64748b; font-size: 12px; }
.eg-quote-submit {
  display: flex;
  justify-content: center;
  width: 100%;
  min-height: 48px;
  padding: 12px 18px;
  border: 0;
  border-radius: 8px;
  background: #f56600;
  color: #fff;
  font-family: 'Poppins', sans-serif;
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  transition: background .2s ease, transform .2s ease;
}
.eg-quote-submit:hover { background: #dc5200; transform: translateY(-1px); }
.eg-quote-status { margin: 12px 0 0; color: #0056a7; font-size: 13px; }
.eg-honeypot { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
.eg-site-toast {
  position: fixed;
  z-index: 10070;
  left: 22px;
  bottom: 24px;
  display: flex;
  align-items: flex-start;
  gap: 12px;
  width: min(360px, calc(100vw - 32px));
  padding: 17px 16px 16px;
  border: 1px solid rgba(0, 86, 167, .12);
  border-left: 4px solid #f56600;
  border-radius: 13px;
  background: #fff;
  color: #1a1a2e;
  box-shadow: 0 12px 36px rgba(9, 34, 68, .2);
  animation: egToastIn .25s ease-out;
}
.eg-toast-content { flex: 1; min-width: 0; }
.eg-toast-eyebrow { margin-bottom: 5px; color: #f56600; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.eg-toast-title { display: block; margin-bottom: 4px; color: #003d7a; font-family: 'Poppins', sans-serif; font-size: 15px; line-height: 1.3; }
.eg-toast-message { margin: 0; color: #4b5563; font-size: 12.5px; line-height: 1.5; }
.eg-toast-close { flex: 0 0 24px; width: 24px; height: 24px; margin: -5px -4px 0 0; border: 0; border-radius: 6px; background: transparent; color: #64748b; font-size: 23px; line-height: 1; cursor: pointer; }
.eg-toast-close:hover { background: #f1f5f9; color: #17233a; }
.eg-toast-action { margin-top: 11px; border: 0; border-radius: 6px; background: #f56600; color: #fff; padding: 9px 12px; font-size: 12px; font-weight: 700; cursor: pointer; }
.eg-toast-action:hover { background: #dc5200; }
@keyframes egQuoteIn { from { opacity: 0; transform: translateY(8px) scale(.99); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes egToastIn { from { opacity: 0; transform: translateX(-12px); } to { opacity: 1; transform: translateX(0); } }
@media (max-width: 720px) {
  .eg-quote-overlay { padding: 10px; align-items: center; }
  .eg-quote-panel { max-height: 94vh; border-radius: 13px; }
  .eg-quote-modal-head { padding: 18px 18px 16px; }
  .eg-quote-form { padding: 17px 18px 20px; }
  .eg-quote-fields { grid-template-columns: 1fr; gap: 12px; }
  .eg-quote-field input { min-height: 44px; }
  .eg-site-toast { left: 12px; bottom: 88px; width: min(350px, calc(100vw - 24px)); padding: 14px; }
  .eg-quote-trigger, .eg-header-quote-button { padding: 10px 12px !important; font-size: 11.5px !important; }
}
@media (prefers-reduced-motion: reduce) {
  .eg-quote-panel, .eg-site-toast { animation: none !important; }
  .eg-quote-trigger, .eg-header-quote-button, .eg-quote-submit { transition: none !important; }
}


/* Mobile header refinement: keep WhatsApp and Request a Quote together at the right. */
@media (max-width: 768px) {
  .header-inner { display:flex !important; flex-wrap:nowrap !important; align-items:center !important; justify-content:space-between !important; gap:8px !important; }
  .header .logo { flex:0 1 auto !important; min-width:0 !important; max-width:38vw !important; }
  .header .logo-img { max-width:clamp(108px, 34vw, 158px) !important; max-height:44px !important; }
  .header .nav { display:none !important; }
  .header-cta { width:auto !important; flex:0 0 auto !important; display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; align-items:center !important; justify-content:flex-end !important; gap:6px !important; margin-left:auto !important; }
  .header-cta .phone-block { display:none !important; }
  .header-cta .btn-whatsapp, .header-cta .eg-quote-trigger, .header-cta .eg-header-quote-button { padding:8px 9px !important; font-size:10px !important; line-height:1.1 !important; border-radius:7px !important; min-height:34px !important; gap:4px !important; }
  .header-cta .btn-whatsapp svg { width:14px !important; height:14px !important; }
}
@media (max-width: 390px) {
  .header .logo-img { max-width:108px !important; max-height:38px !important; }
  .header-cta { gap:4px !important; }
  .header-cta .btn-whatsapp, .header-cta .eg-quote-trigger, .header-cta .eg-header-quote-button { padding:7px 7px !important; font-size:9px !important; }
}


/* City landing pages and service-area directory */
.city-quick-section{padding:30px 16px 0;background:#fff}
.city-quick-answer{max-width:1120px;width:calc(100% - 20px);margin:0 auto 12px;background:linear-gradient(135deg,#eff6ff 0%,#f8fbff 100%);border:1px solid #dbeafe;border-left:5px solid #0056a7;border-radius:14px;padding:22px 26px;box-shadow:0 6px 20px rgba(15,42,80,.05);box-sizing:border-box}
.city-quick-label{font-family:'Poppins',sans-serif;font-weight:800;color:#0056a7;font-size:13px;text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}
.city-quick-answer p{margin:0;color:#334155;line-height:1.75}
.city-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:24px 0 32px}
.city-service-card{display:flex;flex-direction:column;gap:8px;min-height:186px;padding:22px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;text-decoration:none;box-shadow:0 5px 18px rgba(15,23,42,.045);transition:transform .18s,border-color .18s,box-shadow .18s}
.city-service-card:hover{transform:translateY(-3px);border-color:#93c5fd;box-shadow:0 12px 28px rgba(15,23,42,.08)}
.city-service-icon{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:12px;background:#eff6ff;font-size:23px}
.city-service-card h3{font-size:17px;margin:2px 0;color:#0a2f5f}
.city-service-card p{margin:0;color:#64748b;font-size:14px;line-height:1.6}
.city-card-link{margin-top:auto;padding-top:6px;color:#008040;font-weight:700;font-size:13px}
.city-area-list{columns:2;column-gap:32px}
.city-area-list li{break-inside:avoid}
.city-route-table{width:100%;border-collapse:collapse;min-width:540px;background:white}
.city-route-table th,.city-route-table td{border-bottom:1px solid #e2e8f0;padding:13px 15px;text-align:left;vertical-align:top;line-height:1.6}
.city-route-table th{background:#eff6ff;color:#0a2f5f;font-weight:700}
.city-moving-steps li{margin-bottom:12px}
.city-faq-section{padding:64px 20px;background:#f8fafc}
.city-faq-section .section-header{text-align:center;max-width:780px;margin:0 auto 30px}
.city-faq-section .section-header h2{font-size:clamp(25px,3vw,36px);color:#0a2f5f;margin:12px 0}
.city-faq-section .section-header p{color:#64748b;line-height:1.7}
.city-faq-section .faq-container{max-width:900px;margin:0 auto}
.city-faq-section .faq-answer{display:none}
.city-faq-section .faq-item.active .faq-answer{display:block}
.city-faq-section .faq-question{cursor:pointer}
.city-faq-section .faq-item.active .faq-toggle{transform:rotate(45deg)}
.city-faq-section .faq-toggle{transition:transform .2s}
.city-faq-section .faq-cta{max-width:900px;margin:24px auto 0;text-align:center}
.city-faq-section .faq-cta .hero-btn-primary{display:inline-flex;margin-top:12px;text-decoration:none}
.city-related-services{padding:58px 20px;background:#fff}
.city-section-heading{text-align:center;max-width:780px;margin:0 auto 30px}
.city-section-heading h2{font-size:clamp(25px,3vw,36px);margin:10px 0;color:#0a2f5f}
.city-section-heading h2 span{color:#008040}
.city-section-heading p{color:#64748b;line-height:1.7}
.city-nearby-section{padding:58px 20px;background:#f8fafc}
.city-nearby-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;max-width:1180px;margin:0 auto}
.city-nearby-grid a,.city-directory-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 15px;background:white;border:1px solid #e2e8f0;border-radius:10px;color:#0a2f5f;text-decoration:none;font-weight:600;font-size:14px;transition:border-color .18s,transform .18s}
.city-nearby-grid a:hover,.city-directory-card:hover{border-color:#93c5fd;transform:translateY(-2px)}
.city-nearby-grid .city-directory-all{color:#008040}
.city-final-cta{scroll-margin-top:90px}
.city-directory-intro{padding:30px 16px 0}
.city-directory-section{padding:48px 20px 70px;background:#f8fafc}
.city-directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1200px;margin:0 auto}
.city-directory-card{min-height:52px}
.all-locations-link{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:9px 14px;border:1px solid #bfdbfe;border-radius:999px;color:#0056a7;text-decoration:none;font-weight:700}
@media(max-width:980px){.city-service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.city-nearby-grid,.city-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.city-service-grid{grid-template-columns:1fr}.city-nearby-grid,.city-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.city-area-list{columns:1}.city-quick-answer{width:100%;padding:18px}.city-route-table{min-width:480px}.city-directory-card{padding:11px 12px;font-size:13px}}


/* Authentic Express Gati work-photo components */
.eg-work-gallery{padding:clamp(34px,5vw,66px) 18px;background:linear-gradient(180deg,#f7fbff 0%,#ffffff 100%)}
.eg-work-gallery.eg-work-gallery-compact{padding:clamp(28px,4vw,48px) 18px}
.eg-work-gallery-inner{max-width:1200px;margin:0 auto}
.eg-work-gallery-head{text-align:center;max-width:780px;margin:0 auto 26px}
.eg-work-gallery-kicker{display:inline-flex;align-items:center;gap:8px;color:#ef5b17;font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin:0 0 9px}
.eg-work-gallery-head h2{color:#0a2e58;font-size:clamp(1.5rem,2.7vw,2.25rem);line-height:1.2;margin:0 0 10px}
.eg-work-gallery-head p{color:#52647a;line-height:1.7;margin:0}
.eg-work-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}
.eg-work-card{min-width:0;background:#fff;border:1px solid #e1eaf3;border-radius:15px;overflow:hidden;box-shadow:0 7px 22px rgba(13,48,83,.07);transition:transform .22s ease,box-shadow .22s ease}
.eg-work-card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(13,48,83,.12)}
.eg-work-card img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;background:#edf3f8}
.eg-work-card figcaption{padding:11px 13px 13px;color:#30445c;font-size:.91rem;line-height:1.45}
.eg-work-gallery-action{text-align:center;margin-top:24px}
.eg-work-gallery-action a{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;border-radius:9px;background:#f05b18;color:#fff;font-weight:750;text-decoration:none;box-shadow:0 6px 15px rgba(240,91,24,.2)}
.eg-work-gallery-action a:hover{background:#d94d10}
.eg-city-work-proof{padding:22px 18px;background:#f5f9fd}
.eg-city-work-proof-inner{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(180px,300px) 1fr;gap:22px;align-items:center;background:#fff;border:1px solid #e0eaf3;border-radius:14px;padding:14px;box-shadow:0 6px 18px rgba(8,47,85,.06)}
.eg-city-work-proof img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:10px;display:block}
.eg-city-work-proof h2{font-size:1.2rem;color:#0a315c;margin:0 0 7px}
.eg-city-work-proof p{color:#52647a;line-height:1.65;margin:0}
.eg-work-gallery-link{font-weight:700}
@media(max-width:980px){.eg-work-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}}
@media(max-width:680px){.eg-work-gallery{padding:32px 14px}.eg-work-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.eg-work-card{border-radius:11px}.eg-work-card figcaption{font-size:.82rem;padding:9px 10px 11px}.eg-city-work-proof-inner{grid-template-columns:1fr;gap:12px;padding:12px}.eg-city-work-proof img{max-height:230px}}
@media(max-width:390px){.eg-work-grid{grid-template-columns:1fr}.eg-work-card img{aspect-ratio:16/10}}
@media(prefers-reduced-motion:reduce){.eg-work-card{transition:none}.eg-work-card:hover{transform:none}}


/* Express Gati — compact, consistent real-work photo layout */
.eg-work-gallery{padding:clamp(24px,3.2vw,42px) 16px!important}
.eg-work-gallery-inner{max-width:1120px!important;margin:0 auto!important}
.eg-work-gallery-head{margin:0 auto 18px!important;max-width:720px!important}
.eg-work-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;align-items:stretch!important;max-width:100%!important}
.eg-work-card{display:flex!important;flex-direction:column!important;min-width:0!important;width:100%!important;max-width:100%!important;margin:0!important;height:100%!important;border-radius:12px!important;overflow:hidden!important}
.eg-work-card img{display:block!important;width:100%!important;height:176px!important;min-height:176px!important;max-height:176px!important;aspect-ratio:3/2!important;object-fit:cover!important;object-position:center center!important;flex:0 0 176px!important;background:#edf3f8!important}
.eg-work-card figcaption{flex:1 0 auto!important;min-height:48px!important;padding:9px 11px 11px!important;font-size:.84rem!important;line-height:1.42!important}
.eg-work-gallery-action{margin-top:18px!important}
.eg-gallery-single .eg-work-grid,.eg-service-work-photos .eg-work-grid{grid-template-columns:minmax(0,320px)!important;justify-content:center!important;max-width:100%!important;margin-inline:auto!important}
.eg-gallery-single .eg-work-card img,.eg-service-work-photos .eg-work-card img{height:190px!important;min-height:190px!important;max-height:190px!important;flex-basis:190px!important}
.eg-home-work-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:960px!important;margin-inline:auto!important}
.eg-home-work-grid .eg-work-card img{height:190px!important;min-height:190px!important;max-height:190px!important;flex-basis:190px!important}
.eg-city-work-gallery-link{margin:18px 0;padding:12px 16px;background:#f3f8fd;border-left:3px solid #f05b18;border-radius:8px;font-size:.94rem}
.eg-city-work-gallery-link a{color:#0b4e91;font-weight:700;text-decoration:none}
.eg-city-work-gallery-link a:hover{text-decoration:underline}
@media(max-width:980px){.eg-work-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important}.eg-work-card img{height:160px!important;min-height:160px!important;max-height:160px!important;flex-basis:160px!important}}
@media(max-width:680px){.eg-work-gallery{padding:24px 12px!important}.eg-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.eg-work-card img{height:138px!important;min-height:138px!important;max-height:138px!important;flex-basis:138px!important}.eg-work-card figcaption{font-size:.78rem!important;padding:8px 9px 10px!important}.eg-home-work-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.eg-gallery-single .eg-work-grid,.eg-service-work-photos .eg-work-grid{grid-template-columns:minmax(0,300px)!important}.eg-gallery-single .eg-work-card img,.eg-service-work-photos .eg-work-card img{height:178px!important;min-height:178px!important;max-height:178px!important;flex-basis:178px!important}}
@media(max-width:380px){.eg-work-grid,.eg-home-work-grid{grid-template-columns:minmax(0,1fr)!important}.eg-work-card img{height:170px!important;min-height:170px!important;max-height:170px!important;flex-basis:170px!important}}
@media(prefers-reduced-motion:reduce){.eg-work-card,.eg-work-card:hover{transition:none!important;transform:none!important}}


/* Premium five-minute quote offer modal: shared across the site. */
.eg-quote-overlay[hidden]{display:none!important}
.eg-quote-overlay{position:fixed;inset:0;z-index:10080;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(4,20,43,.76);backdrop-filter:blur(5px)}
.eg-quote-panel-offer{position:relative;display:grid;grid-template-columns:minmax(235px,.82fr) minmax(380px,1.18fr);width:min(900px,100%);max-height:min(92vh,760px);overflow:auto;border-radius:22px;background:#fff;box-shadow:0 28px 90px rgba(0,15,38,.36);animation:egOfferEnter .26s cubic-bezier(.2,.8,.2,1)}
.eg-quote-panel-offer .eg-quote-close{position:absolute;right:13px;top:13px;z-index:4;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;font-size:25px}
.eg-offer-side{display:flex;flex-direction:column;justify-content:center;padding:34px 28px;background:radial-gradient(circle at 90% 0%,rgba(255,255,255,.16),transparent 32%),linear-gradient(148deg,#082d57 0%,#0757a3 65%,#087c9a 100%);color:#fff}
.eg-offer-badge{align-self:flex-start;padding:7px 11px;border:1px solid rgba(255,255,255,.28);border-radius:99px;background:rgba(255,255,255,.12);color:#ffdc80;font:800 10px/1.2 Poppins,Arial,sans-serif;letter-spacing:.12em}
.eg-offer-title{margin:19px 0 10px;color:#fff;font:800 clamp(25px,3vw,34px)/1.16 Poppins,Arial,sans-serif;letter-spacing:-.035em}
.eg-offer-copy{margin:0;color:#e0efff;font:400 14px/1.65 Roboto,Arial,sans-serif}
.eg-offer-timer-card{margin:23px 0 18px;padding:15px 16px;border:1px solid rgba(255,255,255,.28);border-radius:14px;background:rgba(255,255,255,.11)}
.eg-offer-timer-label{display:block;color:#ffe7a7;font:800 10px/1.4 Poppins,Arial,sans-serif;letter-spacing:.1em}
.eg-offer-timer{display:block;margin:5px 0 1px;color:#fff;font:800 36px/1.15 Poppins,Arial,sans-serif;font-variant-numeric:tabular-nums;letter-spacing:.04em}
.eg-offer-timer-note{display:block;color:#dcecff;font:400 11px/1.5 Roboto,Arial,sans-serif}
.eg-offer-points{display:grid;gap:9px;margin:0;padding:0;list-style:none;color:#eaf4ff;font-size:12px;line-height:1.45}
.eg-offer-points li{position:relative;padding-left:20px}
.eg-offer-points li:before{content:'✓';position:absolute;left:0;top:0;color:#ffd36b;font-weight:900}
.eg-quote-form-side{padding:32px 30px 26px;align-self:center}
.eg-quote-form-heading h3{margin:0 38px 5px 0;color:#0b315d;font:800 22px/1.25 Poppins,Arial,sans-serif}
.eg-quote-form-heading p{margin:0 0 19px;color:#65768b;font-size:13px}
.eg-quote-fields-offer{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 13px}
.eg-quote-fields-offer .eg-quote-field label{font-size:11px;margin-bottom:5px}
.eg-quote-fields-offer .eg-quote-field input{min-height:43px;padding:9px 11px;font-size:13px;border-radius:8px}
.eg-quote-form-offer .eg-quote-privacy{margin:13px 0 12px;font-size:10.5px;line-height:1.5}
.eg-quote-submit-offer{min-height:48px;border-radius:9px;background:linear-gradient(100deg,#f56600,#ff8a00);box-shadow:0 7px 18px rgba(245,102,0,.18);font-size:13px}
.eg-quote-submit-offer:hover{background:linear-gradient(100deg,#df5200,#f36b00)}
.eg-quote-status{color:#0b6a42}
@keyframes egOfferEnter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:760px){
 .eg-quote-overlay{padding:10px;align-items:center}
 .eg-quote-panel-offer{grid-template-columns:1fr;width:min(510px,100%);max-height:94dvh;overflow:auto;border-radius:16px}
 .eg-offer-side{padding:18px 19px 15px}
 .eg-offer-title{margin:10px 34px 6px 0;font-size:24px}
 .eg-offer-copy{font-size:12px;line-height:1.45}
 .eg-offer-timer-card{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:12px 0 10px;padding:9px 12px}
 .eg-offer-timer-label{font-size:9px}
 .eg-offer-timer{margin:0;font-size:27px}
 .eg-offer-timer-note{font-size:9px;text-align:right;max-width:115px}
 .eg-offer-points{grid-template-columns:1fr 1fr;gap:5px 12px;font-size:10px}
 .eg-quote-form-side{padding:17px 18px 19px}
 .eg-quote-form-heading h3{font-size:18px;margin-bottom:3px}
 .eg-quote-form-heading p{font-size:11px;margin-bottom:11px}
 .eg-quote-fields-offer{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .eg-quote-fields-offer .eg-quote-field label{font-size:10px}
 .eg-quote-fields-offer .eg-quote-field input{min-height:40px;font-size:12px;padding:8px 9px}
 .eg-quote-form-offer .eg-quote-privacy{font-size:9.5px;margin:9px 0;line-height:1.4}
 .eg-quote-submit-offer{min-height:43px;font-size:12px}
}
@media(max-width:420px){
 .eg-offer-side{padding:15px 15px 12px}
 .eg-offer-points{grid-template-columns:1fr 1fr;font-size:9px}
 .eg-quote-form-side{padding:14px 14px 16px}
 .eg-quote-fields-offer{grid-template-columns:1fr;gap:8px}
 .eg-quote-fields-offer .eg-quote-field input{min-height:38px}
 .eg-offer-title{font-size:22px}
}
@media(prefers-reduced-motion:reduce){.eg-quote-panel-offer{animation:none!important}}


/* ==========================================================
   November 2026 layout refinement: homepage header, work CTA,
   and compact multi-column quote forms across the site.
   ========================================================== */
/* Homepage now uses the same single-row header system as inner pages. */
body.eg-homepage .header-inner{
  display:grid!important;
  grid-template-columns:minmax(180px,236px) minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:clamp(12px,1.6vw,24px)!important;
  padding:13px clamp(18px,2vw,28px)!important;
  max-width:1280px!important;
}
body.eg-homepage .header .logo{min-width:0!important;max-width:100%!important;flex:0 1 auto!important}
body.eg-homepage .header .logo-img{display:block!important;width:auto!important;height:auto!important;max-width:236px!important;max-height:62px!important;object-fit:contain!important}
body.eg-homepage .header .nav{display:flex!important;min-width:0!important;flex-wrap:nowrap!important;justify-content:center!important;align-items:center!important;gap:clamp(10px,1.15vw,18px)!important;white-space:nowrap!important;overflow:visible!important}
body.eg-homepage .header .nav>a,
body.eg-homepage .header .nav>.nav-item>a{font-size:clamp(12px,.98vw,14px)!important;padding:7px 2px!important;white-space:nowrap!important}
body.eg-homepage .header-cta{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex-wrap:nowrap!important;gap:9px!important;min-width:0!important;width:auto!important}
body.eg-homepage .header-cta .phone-block{display:block!important;white-space:nowrap!important}
body.eg-homepage .header-cta .btn-whatsapp{width:40px!important;height:40px!important;min-width:40px!important;padding:9px!important;justify-content:center!important;gap:0!important;font-size:0!important;box-sizing:border-box!important}
body.eg-homepage .header-cta .btn-whatsapp svg{width:19px!important;height:19px!important}
body.eg-homepage .header-cta .eg-home-header-quote{white-space:nowrap!important;padding:11px 15px!important;font-size:12.5px!important}
body.eg-homepage .header .nav .eg-home-enquiry-link{display:none!important}
@media (min-width:901px) and (max-width:1180px){
  body.eg-homepage .header-inner{grid-template-columns:175px minmax(0,1fr) auto!important;gap:10px!important;padding:12px 14px!important}
  body.eg-homepage .header .logo-img{max-width:175px!important;max-height:56px!important}
  body.eg-homepage .header .nav{gap:9px!important}
  body.eg-homepage .header .nav>a,body.eg-homepage .header .nav>.nav-item>a{font-size:12px!important}
  body.eg-homepage .header-cta{gap:6px!important}
  body.eg-homepage .header-cta .phone-block{display:none!important}
  body.eg-homepage .header-cta .eg-home-header-quote{padding:10px 11px!important;font-size:11.5px!important}
}
@media (max-width:900px){
  body.eg-homepage .header-inner{display:flex!important;flex-wrap:nowrap!important;justify-content:space-between!important;gap:8px!important;padding:10px 14px!important}
  body.eg-homepage .header .nav{display:none!important}
  body.eg-homepage .header .logo{padding-left:48px!important;max-width:48vw!important}
  body.eg-homepage .header .logo-img{max-width:clamp(116px,30vw,170px)!important;max-height:48px!important}
  body.eg-homepage .header-cta{margin-left:auto!important;gap:7px!important}
  body.eg-homepage .header-cta .phone-block{display:none!important}
  body.eg-homepage .header-cta .btn-whatsapp{width:38px!important;height:38px!important;min-width:38px!important}
  body.eg-homepage .header-cta .eg-home-header-quote{padding:9px 11px!important;font-size:11px!important}
  body.eg-homepage .mobile-nav-toggle{display:flex!important;top:12px!important;transform:none!important;width:36px!important;height:36px!important;left:10px!important;font-size:19px!important}
}
@media (max-width:390px){
  body.eg-homepage .header-inner{padding:9px 9px!important;gap:5px!important}
  body.eg-homepage .header .logo{padding-left:42px!important;max-width:43vw!important}
  body.eg-homepage .header .logo-img{max-width:116px!important;max-height:42px!important}
  body.eg-homepage .header-cta{gap:5px!important}
  body.eg-homepage .header-cta .btn-whatsapp{width:34px!important;height:34px!important;min-width:34px!important}
  body.eg-homepage .header-cta .eg-home-header-quote{padding:8px 8px!important;font-size:10px!important}
}

/* Compact, editorial Our Work end-of-gallery CTA. */
.eg-work-inline-cta{padding:30px clamp(18px,3vw,42px)!important;margin:28px auto!important;border-radius:0!important;background:linear-gradient(112deg,#07396f 0%,#07569a 62%,#087b79 100%)!important;}
.eg-work-cta-inner{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;position:relative;z-index:1}
.eg-work-cta-copy{max-width:820px}
.eg-work-cta-kicker{display:block;color:#ffd166;font-size:11px;font-weight:800;letter-spacing:.12em;margin-bottom:6px}
.eg-work-inline-cta h2{color:#fff!important;font-size:clamp(24px,2.3vw,32px)!important;line-height:1.2!important;margin:0 0 8px!important}
.eg-work-inline-cta p{color:rgba(255,255,255,.9)!important;font-size:14px!important;line-height:1.6!important;margin:0!important;max-width:760px}
.eg-work-inline-cta .hero-btn-primary{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;background:#f56600;color:#fff;border-radius:8px;padding:13px 19px;font-weight:700;box-shadow:0 8px 20px rgba(0,0,0,.16)}
.eg-work-inline-cta .hero-btn-primary:hover{background:#df5800;transform:translateY(-1px)}
@media(max-width:680px){.eg-work-inline-cta{padding:24px 18px!important}.eg-work-cta-inner{grid-template-columns:1fr;gap:16px}.eg-work-inline-cta .hero-btn-primary{width:100%;box-sizing:border-box}}

/* Site-wide compact quote CTA: copy + wide, low-row form. */
.bd-quote-section.eg-wide-quote-cta{width:calc(100% - 40px)!important;max-width:1240px!important;margin:34px auto!important;padding:30px clamp(18px,2.5vw,34px)!important;box-sizing:border-box!important;border-radius:18px!important;background:linear-gradient(120deg,#082f5f 0%,#07549a 58%,#0a6b73 100%)!important;color:#fff!important;overflow:hidden;position:relative}
.eg-wide-quote-cta:before{content:"";position:absolute;width:330px;height:330px;right:-120px;top:-200px;border-radius:50%;background:rgba(255,255,255,.07);pointer-events:none}
.eg-wide-quote-shell{max-width:1170px;margin:0 auto;display:grid;grid-template-columns:minmax(230px,.72fr) minmax(0,1.65fr);gap:28px;align-items:center;position:relative;z-index:1}
.eg-wide-quote-copy{color:#fff;min-width:0}
.eg-quote-kicker{font-size:10px!important;letter-spacing:.13em!important;font-weight:800!important;color:#ffd166!important;margin:0 0 8px!important}
.eg-wide-quote-copy h2{font-size:clamp(23px,2.2vw,30px)!important;line-height:1.18!important;color:#fff!important;margin:0 0 10px!important}
.eg-wide-quote-copy .eg-quote-intro{font-size:13.5px!important;line-height:1.65!important;color:rgba(255,255,255,.88)!important;margin:0 0 14px!important}
.eg-quote-points{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.eg-quote-points li{position:relative;padding-left:22px;color:#f2f7ff;font-size:12px;line-height:1.45}
.eg-quote-points li:before{content:"✓";position:absolute;left:0;top:0;color:#7ee2a8;font-weight:900}
.eg-wide-quote-form{margin:0!important;padding:18px!important;background:#fff!important;border:1px solid rgba(255,255,255,.45)!important;border-radius:14px!important;box-shadow:0 14px 34px rgba(0,15,38,.2)!important;min-width:0!important}
.eg-quote-form-heading{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin:0 0 12px}
.eg-quote-form-heading h3{font-size:17px!important;color:#0a2f5f!important;margin:0!important}
.eg-quote-form-heading p{font-size:11px!important;color:#64748b!important;margin:0!important}
.eg-wide-quote-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px;align-items:end}
.eg-quote-field{min-width:0;display:flex;flex-direction:column;gap:4px}
.eg-quote-field label{font-size:10.5px;font-weight:700;color:#334155;line-height:1.2}
.eg-quote-field input,.eg-quote-field select{width:100%;min-width:0;height:40px;box-sizing:border-box;border:1px solid #d7e0ec;border-radius:7px;background:#f8fafc;color:#172b45;padding:8px 10px;font:400 12px Roboto,Arial,sans-serif;outline:none}
.eg-quote-field input:focus,.eg-quote-field select:focus{border-color:#176bb2;background:#fff;box-shadow:0 0 0 3px rgba(23,107,178,.12)}
.eg-quote-submit-wrap{display:flex;flex-direction:column;gap:5px;min-width:0}
.eg-quote-submit-inline{width:100%;height:40px;border:0;border-radius:7px;background:#f56600;color:#fff;font:700 12px Poppins,Arial,sans-serif;cursor:pointer;box-shadow:0 5px 12px rgba(245,102,0,.18)}
.eg-quote-submit-inline:hover{background:#de5700}
.eg-quote-submit-wrap small{font-size:9.5px;line-height:1.25;color:#64748b;text-align:center}
@media(max-width:980px){.eg-wide-quote-shell{grid-template-columns:minmax(190px,.65fr) minmax(0,1.5fr);gap:18px}.eg-wide-quote-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.eg-quote-service{grid-column:1}.eg-quote-submit-wrap{grid-column:2}}
@media(max-width:680px){.bd-quote-section.eg-wide-quote-cta{width:calc(100% - 24px)!important;padding:22px 14px!important;margin:24px auto!important;border-radius:14px!important}.eg-wide-quote-shell{grid-template-columns:1fr;gap:16px}.eg-wide-quote-copy h2{font-size:23px!important}.eg-quote-points{grid-template-columns:1fr 1fr;gap:7px 12px}.eg-wide-quote-form{padding:14px!important}.eg-quote-form-heading{display:block}.eg-quote-form-heading p{margin-top:3px!important}.eg-wide-quote-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.eg-quote-submit-wrap{grid-column:1/-1}.eg-quote-service{grid-column:1/-1}}
@media(max-width:340px){.eg-wide-quote-fields{grid-template-columns:1fr}.eg-quote-service,.eg-quote-submit-wrap{grid-column:1}.eg-quote-points{grid-template-columns:1fr}}

/* Prevent the full-bleed footer disclaimer from creating a small mobile horizontal overflow. */
@media (max-width: 768px) {
  .disclaimer {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 12px 16px !important;
    box-sizing: border-box !important;
  }
}
