:root { --loc-brand-green: #0CE562;
--loc-brand-teal: #02B0B5;
--loc-brand-blue: #0089F6;
--loc-brand-gold: #BF9B45;
--loc-near-black: #0F1A2E;
--loc-dark-gray: #0F1A2E;
--loc-medium-gray: #51607A;
--loc-light-gray-text: #8B96A6;
--loc-light-gray-bg: #F7F9FC;
--loc-border: #E7EAF1;
--loc-white: #FFFFFF;
--loc-primary: #1E67E5;
--loc-primary-dark: #1A56C4;
--loc-primary-light: #3B82F6;
--loc-primary-light-bg: #E6F1FE;
--loc-success: #0AA86B;
--loc-cta-gradient: linear-gradient(180deg, #1E67E5 0%, #1A56C4 100%);
--loc-hero-text-gradient: linear-gradient(120deg, #0CE562 0%, #07B7AB 40%, #0295E2 75%, #0089F6 100%);
--loc-hero-bg-gradient: linear-gradient(90deg, #0CE562 0%, #02B0B5 48.5%, #0089F6 100%);
--loc-font-heading: Archivo, sans-serif;
--loc-font-body: Inter, sans-serif;
--loc-shadow-md: 0 4px 12px rgba(0,0,0,0.1);
--loc-section-gap: 48px;
} .loc-page {
font-family: var(--loc-font-body);
color: var(--loc-dark-gray);
background: var(--loc-white);
line-height: 1.6;
-webkit-font-smoothing: antialiased;
}
.loc-page h1, .loc-page h2, .loc-page h3, .loc-page h4 {
font-family: var(--loc-font-heading);
color: var(--loc-near-black);
line-height: 1.25;
}
.loc-section { padding: var(--loc-section-gap) 0; }
.loc-section + .loc-section { border-top: 1px solid var(--loc-border); }
.loc-section__title {
font-size: 24px;
font-weight: 700;
margin-bottom: 24px;
}
.loc-section__title span { color: var(--loc-primary); }
@media (min-width: 768px) {
:root { --loc-section-gap: 64px; }
.loc-section__title { font-size: 28px; }
} .loc-hero {
background: var(--loc-near-black);
overflow: hidden;
}
.loc-hero__content {
max-width: 1200px;
margin: 0 auto;
padding: 48px 24px 0;
display: grid;
grid-template-columns: 1fr;
gap: 24px;
align-items: end;
}
.loc-hero__text {
display: flex;
flex-direction: column;
gap: 18px;
padding-bottom: 32px;
} .loc-hero__breadcrumb {
font-size: 13px;
color: rgba(255,255,255,0.45);
animation: locFadeIn 0.5s ease both 0.1s;
}
.loc-hero__breadcrumb a {
color: rgba(255,255,255,0.45);
text-decoration: none;
transition: color 0.2s;
}
.loc-hero__breadcrumb a:hover { color: rgba(255,255,255,0.8); }
.loc-hero__breadcrumb .sep { margin: 0 5px; opacity: 0.35; }
.loc-hero__breadcrumb .current { color: rgba(255,255,255,0.65); font-weight: 500; } .loc-hero__location-badge {
display: inline-flex;
align-items: center;
gap: 8px;
background: rgba(30,103,229,0.14);
border: 1px solid rgba(30,103,229,0.28);
padding: 5px 12px;
width: fit-content;
font-size: 11px;
font-weight: 700;
color: #6EA8FF;
letter-spacing: 0.08em;
text-transform: uppercase;
animation: locFadeUp 0.5s ease both 0.2s;
} .loc-hero .loc-hero__h1 {
font-family: var(--loc-font-heading);
font-size: 28px;
font-weight: 800;
line-height: 1.1;
color: var(--loc-white);
letter-spacing: -0.02em;
animation: locFadeUp 0.5s ease both 0.3s;
}
.loc-hero .loc-hero__h1 .gradient-text {
background: var(--loc-hero-text-gradient);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
} .loc-hero .loc-hero__h2 {
font-family: var(--loc-font-body);
font-size: 15px;
font-weight: 400;
line-height: 1.6;
color: rgba(255,255,255,0.65);
max-width: 480px;
margin: 0;
animation: locFadeUp 0.5s ease both 0.4s;
}
.loc-hero .loc-hero__h2 strong { color: rgba(255,255,255,0.9); font-weight: 600; } .loc-hero__address {
display: flex;
align-items: center;
gap: 8px;
font-size: 14px;
font-weight: 500;
color: rgba(255,255,255,0.55);
animation: locFadeUp 0.5s ease both 0.45s;
}
.loc-hero__address svg { flex-shrink: 0; opacity: 0.6; } .loc-hero__ctas {
display: flex;
flex-direction: column;
align-items: stretch;
gap: 14px;
margin-top: 6px;
animation: locFadeUp 0.5s ease both 0.55s;
}
.btn-primary {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 10px;
background: var(--loc-cta-gradient);
color: var(--loc-white);
font-family: var(--loc-font-body);
font-size: 15px;
font-weight: 600;
padding: 15px 30px;
border: none;
cursor: pointer;
text-decoration: none;
transition: transform 0.2s, box-shadow 0.2s;
box-shadow: 0 4px 20px rgba(30,103,229,0.35);
}
.btn-primary:hover {
transform: translateY(-1px);
box-shadow: 0 6px 28px rgba(30,103,229,0.5);
color: var(--loc-white);
}
.btn-primary .price { font-weight: 700; }
.btn-secondary {
display: inline-flex;
align-items: center;
justify-content: center;
gap: 8px;
background: transparent;
color: var(--loc-white);
font-family: var(--loc-font-body);
font-size: 14px;
font-weight: 500;
padding: 14px 24px;
border: 1px solid rgba(255,255,255,0.22);
cursor: pointer;
text-decoration: none;
transition: border-color 0.2s, background 0.2s;
}
.btn-secondary:hover {
border-color: rgba(255,255,255,0.45);
background: rgba(255,255,255,0.05);
color: var(--loc-white);
} .loc-hero__urgency {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 4px;
font-size: 12px;
color: rgba(255,255,255,0.42);
animation: locFadeUp 0.4s ease both 0.65s;
}
.loc-hero__urgency span { display: flex; align-items: center; gap: 5px; }
.urgency-dot { display: none; } .loc-hero__image-col {
display: flex;
flex-direction: column;
align-items: flex-end;
}
.loc-hero__image-wrapper {
position: relative;
width: 100%;
max-width: 520px;
overflow: hidden;
animation: locFadeIn 0.8s ease both 0.3s;
}
.loc-hero__image-wrapper img {
display: block;
width: 100%;
height: 280px;
object-fit: cover;
}
.loc-hero__image-wrapper::after {
content: '';
position: absolute;
bottom: 0; left: 0; right: 0;
height: 80px;
background: linear-gradient(to top, var(--loc-near-black), transparent);
pointer-events: none;
}
.loc-hero__image-badges {
position: absolute;
top: 16px; left: 16px;
display: flex;
flex-direction: column;
gap: 8px;
z-index: 2;
}
.image-badge {
display: inline-flex;
align-items: center;
gap: 6px;
background: rgba(0,0,0,0.65);
backdrop-filter: blur(12px);
padding: 6px 12px;
font-size: 12px;
font-weight: 600;
color: var(--loc-white);
}
.image-badge svg { flex-shrink: 0; }
.image-badge--gold svg { color: #FBBF24; }
.image-badge--purple svg { color: var(--loc-primary-light); }
@media (min-width: 768px) {
.loc-hero .loc-hero__h1 { font-size: 36px; }
.loc-hero__ctas { flex-direction: row; align-items: center; }
.loc-hero__urgency { flex-direction: row; gap: 14px; }
.urgency-dot { display: block; width: 3px; height: 3px; border-radius: 50%; background: rgba(255,255,255,0.2); }
}
@media (min-width: 960px) {
.loc-hero__content { grid-template-columns: 1fr 1fr; gap: 40px; }
.loc-hero__text { padding-bottom: 48px; }
.loc-hero .loc-hero__h1 { font-size: 42px; }
.loc-hero .loc-hero__h2 { font-size: 16px; }
.loc-hero__image-wrapper img { height: 420px; }
} .trust-bar {
background: var(--loc-near-black);
border-top: 1px solid rgba(255,255,255,0.06);
}
.trust-bar__inner {
max-width: 1200px;
margin: 0 auto;
padding: 16px 20px;
display: flex;
align-items: center;
gap: 20px;
flex-wrap: nowrap;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
-ms-overflow-style: none;
}
.trust-bar__inner::-webkit-scrollbar {
display: none;
}
.trust-bar__item {
display: flex;
align-items: center;
gap: 8px;
flex-shrink: 0;
white-space: nowrap;
animation: locFadeUp 0.4s ease both;
}
.trust-bar__item:nth-child(1) { animation-delay: 0.5s; }
.trust-bar__item:nth-child(2) { animation-delay: 0.6s; }
.trust-bar__item:nth-child(3) { animation-delay: 0.7s; }
.trust-bar__item:nth-child(4) { animation-delay: 0.8s; }
.trust-bar__item:nth-child(5) { animation-delay: 0.9s; }
.trust-bar__icon {
width: 38px; height: 38px;
display: flex;
align-items: center;
justify-content: center;
background: rgba(30,103,229,0.1);
flex-shrink: 0;
}
.trust-bar__icon svg { color: var(--loc-primary-light); }
.trust-bar__text { display: flex; flex-direction: column; }
.trust-bar__label { font-size: 13px; font-weight: 600; color: rgba(255,255,255,0.88); }
.trust-bar__sub { font-size: 11px; color: rgba(255,255,255,0.38); }
.loc-hero__accent-strip {
height: 3px;
background: var(--loc-hero-bg-gradient);
}
@media (min-width: 992px) {
.trust-bar__inner { overflow-x: visible; justify-content: space-between; padding: 20px 24px; }
} .loc-nav {
background: var(--loc-white);
border-bottom: 1px solid var(--loc-border);
box-shadow: 0 8px 12px rgba(0,0,0,0.04);
position: sticky;
top: 0;
z-index: 1000;
transition: box-shadow 0.2s;
}
.loc-nav.scrolled { box-shadow: 0 8px 24px rgba(0,0,0,0.1); }
.loc-nav__inner {
max-width: 1200px;
margin: 0 auto;
padding: 0 24px;
display: flex;
align-items: center;
justify-content: space-between;
}
.loc-nav__links {
display: flex;
list-style: none;
padding: 0; margin: 0;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
scrollbar-width: none;
}
.loc-nav__links::-webkit-scrollbar { display: none; }
.loc-nav__links a {
display: block;
padding: 16px 18px;
font-size: 14px;
font-weight: 500;
color: var(--loc-medium-gray);
text-decoration: none;
border-bottom: 2px solid transparent;
transition: color 0.2s, border-color 0.2s;
white-space: nowrap;
}
.loc-nav__links a:hover,
.loc-nav__links a.active {
color: var(--loc-primary);
border-bottom-color: var(--loc-primary);
}
.loc-nav__cta {
display: none;
align-items: center;
gap: 8px;
background: var(--loc-cta-gradient);
color: var(--loc-white);
font-size: 13px;
font-weight: 600;
padding: 10px 20px;
border: none;
cursor: pointer;
text-decoration: none;
transition: transform 0.15s, box-shadow 0.15s;
flex-shrink: 0;
}
.loc-nav__cta:hover {
transform: translateY(-1px);
box-shadow: 0 4px 16px rgba(30,103,229,0.35);
color: var(--loc-white);
}
@media (min-width: 768px) { .loc-nav__cta { display: inline-flex; } } .loc-plans-section { background: var(--loc-light-gray-bg); }
.loc-plans-section__inner {
max-width: 1200px;
margin: 0 auto;
padding: 64px 24px;
}
.loc-plans-section__header { text-align: center; margin-bottom: 40px; }
.loc-plans-section__title {
font-family: var(--loc-font-heading);
font-size: 28px;
font-weight: 700;
color: var(--loc-near-black);
margin-bottom: 8px;
}
.loc-plans-section__sub { font-size: 15px; color: var(--loc-medium-gray); margin: 0; }
.plans-grid {
display: grid;
grid-template-columns: 1fr;
gap: 20px;
margin-bottom: 48px;
max-width: 400px;
margin-left: auto;
margin-right: auto;
}
.plan-card {
background: var(--loc-white);
border: 1px solid var(--loc-border);
padding: 32px 24px;
position: relative;
transition: box-shadow 0.2s, border-color 0.2s;
}
.plan-card:hover {
box-shadow: 0 12px 24px rgba(0,0,0,0.08);
border-color: rgba(30,103,229,0.2);
}
.plan-card--popular {
border-color: var(--loc-primary);
box-shadow: 0 12px 24px rgba(30,103,229,0.12);
}
.plan-card__badge {
position: absolute;
top: -1px; right: 24px;
background: var(--loc-cta-gradient);
color: var(--loc-white);
font-size: 11px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: 0.06em;
padding: 5px 14px;
}
.plan-card__name {
font-family: var(--loc-font-heading);
font-size: 20px;
font-weight: 700;
color: var(--loc-near-black);
margin-bottom: 4px;
}
.plan-card__price {
font-family: var(--loc-font-heading);
font-size: 36px;
font-weight: 800;
color: var(--loc-near-black);
line-height: 1.2;
margin-bottom: 20px;
}
.plan-card__price span { font-size: 15px; font-weight: 500; color: var(--loc-medium-gray); }
.plan-card__desc {
font-size: 13px;
color: var(--loc-light-gray-text);
margin-bottom: 20px;
line-height: 1.5;
min-height: 40px;
}
.plan-card__features {
list-style: none;
padding: 0; margin: 0 0 24px;
display: flex;
flex-direction: column;
gap: 10px;
}
.plan-card__features li {
display: flex;
align-items: flex-start;
gap: 10px;
font-size: 14px;
color: var(--loc-dark-gray);
line-height: 1.4;
}
.plan-card__features li svg { flex-shrink: 0; margin-top: 2px; }
.plan-card__features li.excluded { color: var(--loc-light-gray-text); opacity: 0.5; }
.plan-card__cta {
display: block;
width: 100%;
padding: 14px;
font-family: var(--loc-font-body);
font-size: 14px;
font-weight: 600;
text-align: center;
text-decoration: none;
cursor: pointer;
transition: transform 0.15s, box-shadow 0.15s;
border: none;
}
.plan-card__cta--primary {
background: var(--loc-cta-gradient);
color: var(--loc-white);
box-shadow: 0 4px 16px rgba(30,103,229,0.25);
}
.plan-card__cta--primary:hover {
transform: translateY(-1px);
box-shadow: 0 6px 24px rgba(30,103,229,0.4);
color: var(--loc-white);
}
.plan-card__cta--outline {
background: transparent;
color: var(--loc-primary);
border: 1px solid var(--loc-primary);
}
.plan-card__cta--outline:hover { background: rgba(30,103,229,0.04); }
.plan-card__note { font-size: 11px; color: var(--loc-light-gray-text); margin-top: 10px; text-align: center; } .compare-toggle {
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
padding: 14px;
background: var(--loc-white);
border: 1px solid var(--loc-border);
font-family: var(--loc-font-body);
font-size: 14px;
font-weight: 600;
color: var(--loc-primary);
cursor: pointer;
width: 100%;
max-width: 320px;
margin: 0 auto;
transition: background 0.2s, border-color 0.2s;
}
.compare-toggle:hover { background: rgba(30,103,229,0.04); border-color: var(--loc-primary); }
.compare-toggle svg { transition: transform 0.3s; }
.compare-toggle.open svg { transform: rotate(180deg); }
.compare-table-container {
max-height: 0;
overflow: hidden;
transition: max-height 0.5s ease;
}
.compare-table-container.open { max-height: 2000px; margin-top: 24px; }
.compare-table {
width: 100%;
border-collapse: collapse;
font-size: 14px;
background: var(--loc-white);
}
.compare-table thead th {
font-family: var(--loc-font-heading);
font-size: 15px;
font-weight: 700;
color: var(--loc-near-black);
padding: 16px 20px;
text-align: center;
border-bottom: 2px solid var(--loc-border);
position: sticky;
top: 56px;
background: var(--loc-white);
z-index: 10;
}
.compare-table thead th:first-child {
text-align: left;
font-weight: 600;
color: var(--loc-medium-gray);
font-family: var(--loc-font-body);
font-size: 13px;
text-transform: uppercase;
letter-spacing: 0.04em;
}
.compare-table tbody td {
padding: 14px 20px;
border-bottom: 1px solid var(--loc-border);
text-align: center;
color: var(--loc-dark-gray);
}
.compare-table tbody td:first-child { text-align: left; font-weight: 500; color: var(--loc-near-black); }
.compare-table tbody tr:hover { background: rgba(30,103,229,0.02); }
.check-icon { color: var(--loc-primary); }
.dash-icon { color: var(--loc-light-gray-text); opacity: 0.35; }
@media (min-width: 768px) {
.plans-grid { grid-template-columns: repeat(3, 1fr); max-width: none; }
} .loc-about__figure { margin: 0 0 24px; }
.loc-about__figure img { width: 100%; height: auto; display: block; }
.loc-about__content { font-size: 15px; line-height: 1.7; }
.loc-about__content p { margin-bottom: 16px; }
.loc-about__keywords {
display: flex;
flex-wrap: wrap;
gap: 8px;
margin-top: 20px;
padding-top: 16px;
border-top: 1px solid var(--loc-border);
}
.loc-about__kw-tag {
display: inline-block;
padding: 4px 12px;
background: var(--loc-primary-light-bg);
color: var(--loc-primary-dark);
font-size: 12px;
font-weight: 500;
}
.loc-about__stats-strip {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 12px;
padding: 20px;
background: var(--loc-primary-light-bg);
border-left: 4px solid var(--loc-primary);
}
.loc-about__stat { display: flex; align-items: center; gap: 10px; }
.loc-about__stat-icon {
color: var(--loc-primary);
font-size: 20px; width: 20px; height: 20px;
flex-shrink: 0;
}
.loc-about__stat strong { display: block; font-size: 13px; font-weight: 700; color: var(--loc-near-black); }
.loc-about__stat span { font-size: 11px; color: var(--loc-medium-gray); }
@media (min-width: 768px) { .loc-about__stats-strip { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 992px) { .loc-about__figure { margin: 0; } } .loc-why-city { background: var(--loc-light-gray-bg); }
.loc-why-city__content { font-size: 15px; line-height: 1.7; }
.loc-why-city__sidebar { margin-top: 32px; }
.loc-sidebar-card {
background: var(--loc-white);
border: 1px solid var(--loc-border);
padding: 20px;
margin-bottom: 16px;
}
.loc-sidebar-card__title {
font-size: 14px; font-weight: 700;
text-transform: uppercase; letter-spacing: 0.5px;
color: var(--loc-medium-gray);
margin: 0 0 12px;
display: flex; align-items: center; gap: 8px;
}
.loc-sidebar-card__title .dashicons { color: var(--loc-primary); font-size: 18px; width: 18px; height: 18px; }
.loc-sidebar-card__content { font-size: 14px; line-height: 1.6; color: var(--loc-dark-gray); }
.loc-sidebar-card__content p { margin-bottom: 8px; }
@media (min-width: 992px) { .loc-why-city__sidebar { margin-top: 0; } } .loc-why-flexy__content { font-size: 15px; line-height: 1.7; max-width: 800px; }
.loc-why-flexy__stats {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 16px;
margin-top: 32px;
}
.loc-stat {
display: flex; align-items: center; gap: 12px;
padding: 16px;
background: var(--loc-light-gray-bg);
border: 1px solid var(--loc-border);
}
.loc-stat__icon {
flex-shrink: 0; width: 40px; height: 40px;
background: var(--loc-primary-light-bg);
display: flex; align-items: center; justify-content: center;
}
.loc-stat__icon .dashicons { color: var(--loc-primary); font-size: 20px; width: 20px; height: 20px; }
.loc-stat__text { font-size: 13px; font-weight: 600; color: var(--loc-near-black); }
@media (min-width: 768px) { .loc-why-flexy__stats { grid-template-columns: repeat(4, 1fr); } } .loc-features__grid {
display: grid; grid-template-columns: repeat(2, 1fr);
gap: 16px; list-style: none; padding: 0; margin: 0;
}
.loc-features__item {
display: flex; align-items: center; gap: 12px;
padding: 14px 16px;
background: var(--loc-white);
border: 1px solid var(--loc-border);
transition: border-color 0.2s;
}
.loc-features__item:hover { border-color: var(--loc-primary); }
.loc-features__icon { width: 32px; height: 32px; flex-shrink: 0; object-fit: contain; }
.loc-features__label { font-size: 13px; font-weight: 500; color: var(--loc-near-black); }
@media (min-width: 768px) { .loc-features__grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 992px) { .loc-features__grid { grid-template-columns: repeat(4, 1fr); } } .loc-personas { background: var(--loc-light-gray-bg); }
.loc-personas__grid { display: grid; grid-template-columns: 1fr; gap: 20px; }
.loc-personas__card {
background: var(--loc-white);
border: 1px solid var(--loc-border);
overflow: hidden;
display: flex; flex-direction: column;
transition: box-shadow 0.2s;
}
.loc-personas__card:hover { box-shadow: var(--loc-shadow-md); }
.loc-personas__card-image { width: 100%; height: 180px; object-fit: cover; }
.loc-personas__card-body { padding: 20px; flex: 1; display: flex; flex-direction: column; }
.loc-personas__card-title { font-size: 16px; font-weight: 700; margin: 0 0 8px; }
.loc-personas__card-title a { color: var(--loc-near-black); text-decoration: none; }
.loc-personas__card-title a:hover { color: var(--loc-primary); }
.loc-personas__card-desc { font-size: 13px; color: var(--loc-medium-gray); flex: 1; margin-bottom: 12px; }
.loc-personas__card-link {
font-size: 13px; font-weight: 600;
color: var(--loc-primary); text-decoration: none;
display: flex; align-items: center; gap: 4px;
}
.loc-personas__card-link:hover { color: var(--loc-primary-dark); }
@media (min-width: 768px) { .loc-personas__grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 992px) { .loc-personas__grid { grid-template-columns: repeat(3, 1fr); } } .loc-personas__carousel .owl-item { display: flex; }
.loc-personas__carousel .loc-personas__card { width: 100%; }
.loc-personas__carousel .owl-nav { margin-top: 16px; }
.loc-personas__carousel .owl-dots { margin-top: 12px; } .loc-benefits__grid {
display: grid; grid-template-columns: repeat(2, 1fr);
gap: 16px; list-style: none; padding: 0; margin: 0;
}
.loc-benefits__item {
display: flex; align-items: flex-start; gap: 12px;
padding: 16px;
background: var(--loc-white);
border: 1px solid var(--loc-border);
}
.loc-benefits__icon { width: 36px; height: 36px; flex-shrink: 0; object-fit: contain; }
.loc-benefits__text h4 { font-size: 14px; font-weight: 600; margin: 0 0 4px; }
.loc-benefits__text p { font-size: 12px; color: var(--loc-medium-gray); margin: 0; line-height: 1.5; }
@media (min-width: 768px) { .loc-benefits__grid { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 992px) { .loc-benefits__grid { grid-template-columns: repeat(4, 1fr); } } .loc-map__embed {
margin: 0; height: 300px;
background: var(--loc-light-gray-bg);
border: 1px solid var(--loc-border);
overflow: hidden;
}
.loc-map__embed .acf-map { width: 100%; height: 100%; }
.loc-map__details { margin-top: 24px; }
.loc-map__details dt {
font-size: 12px; font-weight: 700;
text-transform: uppercase; letter-spacing: 0.5px;
color: var(--loc-medium-gray); margin-top: 16px;
}
.loc-map__details dt:first-child { margin-top: 0; }
.loc-map__details dd { font-size: 14px; margin: 4px 0 0; color: var(--loc-near-black); }
@media (min-width: 992px) {
.loc-map__embed { height: 360px; }
.loc-map__details { margin-top: 0; }
} .loc-testimonials { background: var(--loc-light-gray-bg); }
.loc-testimonial-card {
background: var(--loc-white);
border: 1px solid var(--loc-border);
padding: 24px; height: 100%;
display: flex; flex-direction: column;
}
.loc-testimonial-card__stars { color: #F59E0B; font-size: 14px; margin-bottom: 12px; }
.loc-testimonial-card__text {
font-size: 14px; line-height: 1.6;
font-style: italic; color: var(--loc-dark-gray);
flex: 1; margin-bottom: 16px;
}
.loc-testimonial-card__author {
display: flex; align-items: center; gap: 12px;
padding-top: 12px; border-top: 1px solid var(--loc-border);
}
.loc-testimonial-card__avatar { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.loc-testimonial-card__avatar-placeholder {
width: 40px; height: 40px; border-radius: 50%;
background: var(--loc-primary); color: #fff;
display: flex; align-items: center; justify-content: center;
font-size: 16px; font-weight: 700; flex-shrink: 0;
}
.loc-testimonial-card__name { font-size: 13px; font-weight: 600; color: var(--loc-near-black); }
.loc-testimonial-card__role { font-size: 12px; color: var(--loc-medium-gray); } .loc-gallery__carousel .loc-gallery__slide {
overflow: hidden; margin: 0;
position: relative; border-radius: 8px;
}
.loc-gallery__carousel .loc-gallery__slide img {
width: 100%; height: 320px;
object-fit: cover; display: block;
}
.loc-gallery__single {
margin: 0; position: relative; border-radius: 8px; overflow: hidden;
}
.loc-gallery__single img {
width: 100%; max-height: 400px;
object-fit: cover; display: block;
} .loc-gallery__caption {
position: absolute; left: 0; right: 0; bottom: 0;
margin: 0; padding: 24px 16px 12px;
font-family: var(--loc-font-body);
font-size: 13px; line-height: 1.4; color: var(--loc-white);
background: linear-gradient(180deg, rgba(15,26,46,0) 0%, rgba(15,26,46,0.78) 100%);
}
.loc-gallery__carousel .owl-nav {
position: absolute; top: 50%; width: 100%;
display: flex; justify-content: space-between;
transform: translateY(-50%);
pointer-events: none; padding: 0 8px;
}
.loc-gallery__carousel .owl-nav button {
pointer-events: auto;
width: 40px; height: 40px;
background: rgba(0,0,0,0.5) !important;
color: #fff !important;
border-radius: 50%;
display: flex; align-items: center; justify-content: center;
font-size: 18px; border: none;
transition: background 0.2s;
}
.loc-gallery__carousel .owl-nav button:hover { background: rgba(0,0,0,0.8) !important; }
.loc-gallery__carousel .owl-dots { text-align: center; margin-top: 16px; }
.loc-gallery__carousel .owl-dot span {
width: 10px; height: 10px;
background: var(--loc-border);
border-radius: 50%;
display: inline-block;
margin: 0 4px;
transition: background 0.2s;
}
.loc-gallery__carousel .owl-dot.active span { background: var(--loc-primary); }
@media (min-width: 768px) {
.loc-gallery__carousel .loc-gallery__slide img { height: 400px; }
} .loc-faq__accordion .accordion-item {
border: 1px solid var(--loc-border);
margin-bottom: 8px; overflow: hidden;
}
.loc-faq__accordion .accordion-button {
font-size: 14px; font-weight: 600;
color: var(--loc-near-black);
padding: 16px 20px;
background: var(--loc-white);
}
.loc-faq__accordion .accordion-button:not(.collapsed) {
background: var(--loc-light-gray-bg);
color: var(--loc-primary-dark);
box-shadow: none;
}
.loc-faq__accordion .accordion-body { font-size: 14px; line-height: 1.7; padding: 16px 20px; }
.loc-faq__paa { margin-top: 24px; border-top: 1px solid var(--loc-border); padding-top: 20px; }
.loc-faq__paa summary { font-size: 16px; font-weight: 700; color: var(--loc-near-black); cursor: pointer; padding: 8px 0; }
.loc-faq__paa-list { list-style: none; padding: 0; margin: 12px 0 0; }
.loc-faq__paa-item {
padding: 10px 0; border-bottom: 1px solid var(--loc-border);
font-size: 14px; display: flex; align-items: flex-start; gap: 8px;
}
.loc-faq__paa-item .dashicons {
color: var(--loc-primary); flex-shrink: 0;
font-size: 16px; width: 16px; height: 16px; margin-top: 3px;
} .loc-cta-banner {
background: linear-gradient(135deg, #0A0E1A 0%, #12203A 50%, #1B3252 100%);
padding: 48px 0; text-align: center; color: #fff;
} .loc-cta-banner .loc-cta-banner__title { font-size: 28px; font-weight: 800; margin: 0 0 8px; color: #fff; }
.loc-cta-banner__subtitle { font-size: 16px; color: rgba(255,255,255,0.8); margin-bottom: 24px; }
.loc-cta-banner__actions { display: flex; justify-content: center; gap: 16px; flex-wrap: wrap; }
.loc-cta-banner__btn {
display: inline-flex; align-items: center; gap: 8px;
padding: 14px 32px; font-size: 15px; font-weight: 600;
text-decoration: none; transition: all 0.2s;
}
.loc-cta-banner__btn--primary { background: var(--loc-primary); color: #fff; }
.loc-cta-banner__btn--primary:hover { background: var(--loc-primary-dark); color: #fff; }
.loc-cta-banner__btn--outline { border: 2px solid rgba(255,255,255,0.5); color: #fff; background: transparent; }
.loc-cta-banner__btn--outline:hover { border-color: #fff; background: rgba(255,255,255,0.1); color: #fff; }
.loc-cta-banner__seo-desc {
max-width: 700px; margin: 32px auto 0;
font-size: 13px; color: rgba(255,255,255,0.6); line-height: 1.6;
}
@media (min-width: 768px) {
.loc-cta-banner { padding: 64px 0; }
.loc-cta-banner__title { font-size: 36px; }
}
.loc-nearby__icons { display: flex; justify-content: center; gap: 32px; padding: 24px 0; }
.loc-nearby__icon {
display: flex; flex-direction: column; align-items: center; gap: 8px;
text-decoration: none; color: var(--loc-medium-gray);
font-size: 12px; font-weight: 500; transition: color 0.2s;
}
.loc-nearby__icon:hover { color: var(--loc-primary); }
.loc-nearby__icon img { width: 40px; height: 40px; }
.loc-seo-desc { padding: 32px 0; border-top: 1px solid var(--loc-border); }
.loc-seo-desc__content {
font-size: 14px; color: var(--loc-medium-gray);
line-height: 1.7; max-width: 800px;
} @keyframes locFadeUp {
from { opacity: 0; transform: translateY(18px); }
to   { opacity: 1; transform: translateY(0); }
}
@keyframes locFadeIn {
from { opacity: 0; }
to   { opacity: 1; }
} .loc-sr-only {
position: absolute; width: 1px; height: 1px;
padding: 0; margin: -1px; overflow: hidden;
clip: rect(0,0,0,0); white-space: nowrap; border: 0;
} .loc-section__intro {
max-width: 820px;
margin-bottom: 24px;
}
.loc-section__copy {
margin: 0;
color: var(--loc-medium-gray);
font-size: 15px;
line-height: 1.7;
}
.loc-about__body {
margin-top: 32px;
}
.loc-about__details {
display: grid;
gap: 12px;
margin: 20px 0 0;
}
.loc-about__details dt {
color: var(--loc-medium-gray);
font-size: 12px;
font-weight: 700;
letter-spacing: 0;
text-transform: uppercase;
}
.loc-about__details dd {
margin: 0 0 8px;
color: var(--loc-near-black);
font-size: 14px;
}
.loc-why-city__content--secondary {
margin-top: 20px;
}
.loc-why-flexy {
background: linear-gradient(135deg, #F6F9FE 0%, #ffffff 100%);
}
.compare-table-container {
max-height: none;
overflow: visible;
margin-top: 24px;
}
.loc-js .compare-table-container {
max-height: 0;
overflow: hidden;
margin-top: 0;
transition: max-height 0.5s ease, margin-top 0.2s ease;
}
.loc-js .compare-table-container.open {
max-height: 3000px;
margin-top: 24px;
}
.compare-toggle[aria-expanded="true"] svg {
transform: rotate(180deg);
}
.loc-intent-selector__layout {
display: grid;
gap: 20px;
}
.loc-intent-selector__cards {
display: grid;
gap: 10px;
}
.loc-intent-selector__card {
width: 100%;
min-height: 76px;
padding: 16px;
border: 1px solid var(--loc-border);
background: var(--loc-white);
color: var(--loc-near-black);
cursor: pointer;
display: flex;
flex-direction: column;
align-items: flex-start;
justify-content: center;
gap: 6px;
text-align: left;
transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
}
.loc-intent-selector__card:hover,
.loc-intent-selector__card.is-active {
border-color: var(--loc-primary);
background: #F6F9FE;
box-shadow: 0 8px 22px rgba(15,26,46,0.08);
}
.loc-intent-selector__card-title {
font-size: 15px;
font-weight: 700;
line-height: 1.3;
}
.loc-intent-selector__card-plan {
color: var(--loc-primary-dark);
font-size: 12px;
font-weight: 700;
}
.loc-intent-selector__panels {
display: grid;
gap: 16px;
}
.loc-intent-selector__panel {
border: 1px solid var(--loc-border);
background: var(--loc-white);
padding: 22px;
}
.loc-js .loc-intent-selector.is-enhanced .loc-intent-selector__panel {
display: none;
}
.loc-js .loc-intent-selector.is-enhanced .loc-intent-selector__panel.is-active {
display: block;
}
.loc-intent-selector__panel h3 {
margin: 0 0 10px;
font-size: 22px;
}
.loc-intent-selector__panel-copy {
color: var(--loc-dark-gray);
font-size: 15px;
line-height: 1.7;
}
.loc-intent-selector__recommendation {
display: inline-flex;
align-items: center;
gap: 10px;
margin: 12px 0;
padding: 8px 12px;
background: var(--loc-primary-light-bg);
color: var(--loc-primary-dark);
font-size: 13px;
}
.loc-intent-selector__recommendation span {
color: var(--loc-medium-gray);
}
.loc-intent-selector__note {
margin-top: 12px;
padding: 14px;
border-left: 3px solid var(--loc-primary);
background: var(--loc-light-gray-bg);
color: var(--loc-medium-gray);
font-size: 13px;
line-height: 1.6;
}
.loc-intent-selector__cta {
display: inline-flex;
align-items: center;
justify-content: center;
margin-top: 16px;
padding: 11px 18px;
background: var(--loc-primary);
color: var(--loc-white);
font-size: 14px;
font-weight: 700;
text-decoration: none;
}
.loc-intent-selector__cta:hover {
background: var(--loc-primary-dark);
color: var(--loc-white);
}
.loc-capability {
background: var(--loc-light-gray-bg);
}
.loc-capability__table-wrap {
overflow-x: auto;
border: 1px solid var(--loc-border);
background: var(--loc-white);
}
.loc-capability__table {
width: 100%;
min-width: 760px;
border-collapse: collapse;
font-size: 14px;
}
.loc-capability__table th,
.loc-capability__table td {
padding: 14px 16px;
border-bottom: 1px solid var(--loc-border);
text-align: left;
vertical-align: top;
}
.loc-capability__table thead th {
background: #f4f6f8;
color: var(--loc-near-black);
font-weight: 700;
}
.loc-capability__status {
display: inline-flex;
min-width: 86px;
justify-content: center;
padding: 4px 9px;
border: 1px solid var(--loc-border);
color: var(--loc-near-black);
font-size: 12px;
font-weight: 700;
}
.loc-capability__status--yes {
border-color: rgba(10,168,107,0.35);
background: rgba(10,168,107,0.08);
color: #047857;
}
.loc-capability__status--varies,
.loc-capability__status--case-by-case {
border-color: rgba(30,103,229,0.35);
background: rgba(30,103,229,0.08);
color: var(--loc-primary-dark);
}
.loc-capability__status--no {
border-color: rgba(92,95,102,0.3);
background: #f4f6f8;
color: var(--loc-medium-gray);
}
.loc-capability__caution {
margin-top: 18px;
padding: 16px;
border: 1px solid var(--loc-border);
background: var(--loc-white);
color: var(--loc-medium-gray);
font-size: 13px;
line-height: 1.6;
}
.loc-proof-band {
padding: 54px 0;
background: var(--loc-near-black);
color: var(--loc-white);
}
.loc-proof-band__inner {
display: grid;
gap: 24px;
}
.loc-proof-band h2,
.loc-proof-band h3 {
color: var(--loc-white);
}
.loc-proof-band__intro h2 {
margin: 0 0 12px;
font-size: 28px;
}
.loc-proof-band__copy {
color: rgba(255,255,255,0.78);
font-size: 15px;
line-height: 1.7;
}
.loc-proof-band__grid {
display: grid;
gap: 14px;
}
.loc-proof-band__card {
border: 1px solid rgba(255,255,255,0.16);
background: rgba(255,255,255,0.06);
padding: 18px;
}
.loc-proof-band__card h3 {
margin: 0 0 8px;
font-size: 16px;
}
.loc-proof-band__card div {
color: rgba(255,255,255,0.74);
font-size: 14px;
line-height: 1.6;
}
.loc-map__placeholder {
min-height: 260px;
padding: 28px;
border: 1px solid var(--loc-border);
background: var(--loc-light-gray-bg);
display: flex;
flex-direction: column;
justify-content: center;
}
.loc-map__placeholder h3 {
margin: 0 0 8px;
font-size: 20px;
}
.loc-map__placeholder p {
margin: 0;
color: var(--loc-medium-gray);
}
.loc-map__details address {
margin: 0;
font-style: normal;
}
.loc-map__directions {
color: var(--loc-primary);
font-weight: 700;
text-decoration: none;
}
.loc-map__directions:hover {
color: var(--loc-primary-dark);
}
.loc-map__rating {
color: #b45309;
font-weight: 700;
}
.loc-map-info-window {
max-width: 240px;
padding: 4px 0;
color: var(--loc-dark-gray);
font-family: var(--loc-font-body);
font-size: 13px;
line-height: 1.5;
}
.loc-map-info-window strong {
color: var(--loc-primary);
}
.loc-faq__details-list {
display: grid;
gap: 10px;
}
.loc-faq__details {
border: 1px solid var(--loc-border);
background: var(--loc-white);
}
.loc-faq__details summary {
cursor: pointer;
padding: 16px 20px;
color: var(--loc-near-black);
font-size: 15px;
font-weight: 700;
}
.loc-faq__details[open] summary {
border-bottom: 1px solid var(--loc-border);
background: var(--loc-light-gray-bg);
color: var(--loc-primary-dark);
}
.loc-faq__answer {
padding: 16px 20px;
color: var(--loc-dark-gray);
font-size: 14px;
line-height: 1.7;
}
.loc-nearby__areas {
display: flex;
flex-wrap: wrap;
gap: 10px;
padding: 0;
margin: 0 0 20px;
list-style: none;
}
.loc-nearby__areas li {
padding: 8px 12px;
border: 1px solid var(--loc-border);
background: var(--loc-light-gray-bg);
color: var(--loc-near-black);
font-size: 13px;
font-weight: 600;
}
.loc-nearby__city-link {
color: var(--loc-primary);
font-weight: 700;
text-decoration: none;
}
.loc-nearby__city-link:hover {
color: var(--loc-primary-dark);
}
.loc-final-cta {
padding: 58px 0;
background: #f4f6f8;
}
.loc-final-cta__inner {
max-width: 900px;
margin: 0 auto;
text-align: center;
}
.loc-final-cta__eyebrow {
margin: 0 0 8px;
color: var(--loc-primary-dark);
font-size: 12px;
font-weight: 800;
letter-spacing: 0;
text-transform: uppercase;
}
.loc-final-cta h2 {
margin: 0 0 14px;
font-size: 30px;
}
.loc-final-cta__copy {
max-width: 680px;
margin: 0 auto;
color: var(--loc-medium-gray);
font-size: 15px;
line-height: 1.7;
}
.loc-final-cta__price {
margin: 18px 0 0;
color: var(--loc-near-black);
font-weight: 700;
}
.loc-final-cta__actions {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 12px;
margin-top: 24px;
}
.loc-final-cta__button {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 46px;
padding: 12px 22px;
font-size: 14px;
font-weight: 800;
text-decoration: none;
}
.loc-final-cta__button--primary {
background: var(--loc-primary);
color: var(--loc-white);
}
.loc-final-cta__button--primary:hover {
background: var(--loc-primary-dark);
color: var(--loc-white);
}
.loc-final-cta__button--secondary {
border: 1px solid var(--loc-primary);
color: var(--loc-primary);
background: var(--loc-white);
}
.loc-final-cta__button--secondary:hover {
border-color: var(--loc-primary-dark);
color: var(--loc-primary-dark);
}
@media (min-width: 768px) {
.loc-intent-selector__cards {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.loc-proof-band__grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.loc-final-cta h2 {
font-size: 38px;
}
}
@media (min-width: 992px) {
.loc-intent-selector__layout {
grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr);
align-items: start;
}
.loc-proof-band__inner {
grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
align-items: center;
}
}  .loc-rtb__intro {
max-width: 760px;
margin-bottom: 40px;
}
.loc-rtb__eyebrow {
display: inline-block;
margin: 0 0 12px;
font-family: var(--loc-font-body);
font-size: 11px;
font-weight: 800;
letter-spacing: 0.1em;
text-transform: uppercase;
color: var(--loc-primary);
} .loc-rtb__intro .loc-section__title {
margin-bottom: 12px;
}
.loc-rtb__lede {
font-size: 15px;
line-height: 1.75;
color: var(--loc-medium-gray);
max-width: 680px;
}
.loc-rtb__lede p { margin: 0 0 12px; }
.loc-rtb__lede p:last-child { margin-bottom: 0; } .loc-rtb__proof-row {
display: grid;
grid-template-columns: 1fr;
gap: 24px;
margin-bottom: 48px;
} .loc-rtb__card {
padding: 32px 28px;
display: flex;
flex-direction: column;
gap: 18px;
} .loc-rtb__card--problem {
background: linear-gradient(145deg, var(--loc-primary) 0%, var(--loc-primary-dark) 60%, #163F8F 100%);
color: var(--loc-white);
box-shadow: 0 8px 32px rgba(30,103,229, 0.32);
} .loc-rtb__card--problem .loc-rtb__card-title {
font-family: var(--loc-font-heading);
font-size: 20px;
font-weight: 700;
line-height: 1.25;
color: var(--loc-white);
margin: 0;
}
.loc-rtb__card--problem .loc-rtb__card-copy {
font-size: 14px;
line-height: 1.7;
color: rgba(255, 255, 255, 0.85);
margin: 0;
}
.loc-rtb__card--problem .loc-rtb__card-copy p { margin: 0 0 10px; }
.loc-rtb__card--problem .loc-rtb__card-copy p:last-child { margin-bottom: 0; } .loc-rtb__points {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 12px;
border-top: 1px solid rgba(255, 255, 255, 0.18);
padding-top: 18px;
}
.loc-rtb__point {
font-size: 14px;
line-height: 1.55;
color: rgba(255, 255, 255, 0.88);
}
.loc-rtb__point-label {
display: inline;
font-weight: 700;
color: var(--loc-white);
margin-right: 6px;
}
.loc-rtb__point-label::after {
content: " —";
font-weight: 400;
opacity: 0.6;
}
.loc-rtb__point-copy {
display: inline;
} .loc-rtb__card--proof {
background: var(--loc-white);
border: 1px solid var(--loc-border);
box-shadow: var(--loc-shadow-md);
}
.loc-rtb__card--proof .loc-rtb__card-title {
font-family: var(--loc-font-heading);
font-size: 18px;
font-weight: 700;
color: var(--loc-near-black);
margin: 0;
} .loc-rtb__address {
font-style: normal;
font-size: 14px;
font-weight: 600;
color: var(--loc-primary-dark);
display: flex;
flex-direction: column;
gap: 2px;
padding: 12px 14px;
background: var(--loc-primary-light-bg);
border-left: 3px solid var(--loc-primary);
} .loc-rtb__badges {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 10px;
}
.loc-rtb__badge {
display: flex;
align-items: flex-start;
gap: 10px;
font-size: 14px;
color: var(--loc-near-black);
line-height: 1.45;
}
.loc-rtb__badge-icon {
color: var(--loc-primary);
font-size: 18px;
width: 18px;
height: 18px;
flex-shrink: 0;
margin-top: 1px; } .loc-rtb__card-cta {
display: flex;
width: 100%;
margin-top: auto; } .loc-rtb__tiles {
list-style: none;
padding: 0;
margin: 0 0 48px;
display: grid;
grid-template-columns: 1fr;
gap: 16px;
}
.loc-rtb__tile {
background: var(--loc-light-gray-bg);
border: 1px solid var(--loc-border);
padding: 22px 20px;
display: flex;
flex-direction: column;
gap: 8px;
transition: border-color 0.2s, box-shadow 0.2s;
}
.loc-rtb__tile:hover {
border-color: rgba(30,103,229, 0.3);
box-shadow: var(--loc-shadow-md);
}
.loc-rtb__tile-icon {
color: var(--loc-primary);
font-size: 22px;
width: 22px;
height: 22px;
flex-shrink: 0;
} .loc-rtb__tile-title {
font-family: var(--loc-font-heading);
font-size: 15px;
font-weight: 700;
color: var(--loc-near-black);
margin: 0;
line-height: 1.3;
}
.loc-rtb__tile-copy {
font-size: 13px;
line-height: 1.6;
color: var(--loc-medium-gray);
margin: 0;
} .loc-rtb__strip {
display: flex;
flex-direction: column;
align-items: center;
gap: 20px;
text-align: center;
padding: 36px 28px;
background: var(--loc-primary-light-bg);
border: 1px solid rgba(30,103,229, 0.18);
}
.loc-rtb__strip-text {
display: flex;
flex-direction: column;
gap: 8px;
} .loc-rtb__strip .loc-rtb__strip-heading {
font-family: var(--loc-font-heading);
font-size: 20px;
font-weight: 700;
color: var(--loc-near-black);
margin: 0;
line-height: 1.25;
}
.loc-rtb__strip-copy {
font-size: 14px;
line-height: 1.65;
color: var(--loc-medium-gray);
margin: 0;
}
.loc-rtb__strip-actions {
display: flex;
flex-direction: column;
align-items: stretch;
gap: 12px;
width: 100%;
max-width: 320px;
} @media (min-width: 600px) {
.loc-rtb__tiles {
grid-template-columns: repeat(2, 1fr);
}
.loc-rtb__strip-actions {
flex-direction: row;
align-items: center;
max-width: none;
width: auto;
}
.loc-rtb__card-cta {
width: auto;
align-self: flex-start;
}
} @media (min-width: 769px) {
.loc-rtb__intro {
margin-bottom: 48px;
}
.loc-rtb__proof-row {
grid-template-columns: 1.1fr 0.9fr;
align-items: stretch;
gap: 28px;
}
.loc-rtb__card {
padding: 36px 32px;
}
.loc-rtb__card--problem .loc-rtb__card-title {
font-size: 22px;
}
.loc-rtb__tiles {
grid-template-columns: repeat(3, 1fr);
}
.loc-rtb__strip {
flex-direction: row;
align-items: center;
justify-content: space-between;
text-align: left;
padding: 36px 40px;
}
.loc-rtb__strip-text {
flex: 1;
}
.loc-rtb__strip-actions {
flex-direction: row;
align-items: center;
gap: 12px;
flex-shrink: 0;
}
.loc-rtb__card-cta {
width: auto;
align-self: flex-start;
}
} @media (prefers-reduced-motion: reduce) {
.loc-rtb__tile { transition: none; }
}