body.gp-theme {
    background:
        radial-gradient(circle at top right, rgba(126, 204, 231, 0.22), transparent 26%),
        radial-gradient(circle at top left, rgba(67, 131, 164, 0.16), transparent 30%),
        linear-gradient(180deg, #eefaff 0%, #f5fcff 38%, #ffffff 100%);
    color: #17303b;
    font-family: "Trebuchet MS", "Segoe UI Variable", "Gill Sans", sans-serif;
}

.gp-theme main {
    padding-bottom: 4rem;
}

.gp-theme .site-header-shell {
    background: rgba(244, 252, 255, 0.9);
    backdrop-filter: blur(20px);
    border-bottom: 1px solid rgba(23, 48, 59, 0.08);
    box-shadow: 0 18px 48px rgba(33, 77, 96, 0.08);
}

.gp-theme .header-main {
    background: transparent !important;
}

.gp-theme .desktop-header,
.gp-theme .mobile-topbar {
    padding: 1rem 0;
}

.gp-theme .brand-lockup {
    gap: 0.25rem;
}

.gp-theme .header-brand-title,
.gp-theme .footer-brand-title {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: 1.25rem;
    line-height: 1;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #123244;
}

.gp-theme .header-brand-city,
.gp-theme .footer-brand-city {
    color: var(--primary-color);
}

.gp-theme .header-brand-subtitle,
.gp-theme .footer-brand-subtitle {
    margin: 0;
    font-size: 0.78rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(18, 50, 68, 0.64);
}

.gp-theme .logo-link {
    display: inline-flex;
    align-items: center;
    gap: 0.9rem;
}

.gp-theme .brand-logo-mark {
    width: 58px;
    height: 58px;
    flex: 0 0 auto;
    border-radius: 20px;
    box-shadow: 0 14px 30px rgba(66, 132, 165, 0.22);
}

.gp-theme .brand-logo-mark--sembol {
    width: 72px;
    height: 72px;
    border-radius: 18px;
    background: transparent;
    box-shadow: none;
    object-fit: cover;
    filter: drop-shadow(0 10px 20px rgba(16, 28, 46, 0.16));
}

.gp-theme .brand-logo-mark--footer {
    width: 68px;
    height: 68px;
}

.gp-theme .brand-logo-mark--sembol.brand-logo-mark--footer {
    width: 84px;
    height: 84px;
}

.gp-theme .brand-logo-mark--drawer {
    margin-inline: auto;
    margin-bottom: 0.85rem;
}

.gp-theme .mobile-logo {
    padding: 1rem 1rem 1.15rem;
    border-radius: 24px;
    background: linear-gradient(180deg, rgba(255, 250, 239, 0.98), rgba(245, 232, 198, 0.94));
    border: 1px solid rgba(201, 162, 39, 0.22);
    box-shadow: 0 16px 34px rgba(12, 30, 50, 0.12);
}

.gp-theme .mobile-logo .logo-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.8rem;
    text-decoration: none;
}

.gp-theme .mobile-logo .brand-logo-mark--drawer {
    width: 72px;
    height: 72px;
    border-radius: 24px;
    margin-bottom: 0;
    box-shadow: 0 18px 34px rgba(12, 30, 50, 0.18);
}

.gp-theme .mobile-logo .brand-logo-mark--sembol.brand-logo-mark--drawer {
    width: 92px;
    height: 92px;
    border-radius: 22px;
    background: transparent;
    box-shadow: none;
    object-fit: cover;
    filter: drop-shadow(0 12px 22px rgba(12, 30, 50, 0.18));
}

.gp-theme .mobile-logo .header-brand-title,
.gp-theme .mobile-logo .header-brand-title span {
    color: #13293f;
    font-size: 1.08rem;
    line-height: 1.08;
    letter-spacing: 0.09em;
}

.gp-theme .mobile-logo .header-brand-city,
.gp-theme .mobile-logo .header-brand-subtitle-city {
    color: #b9851f;
}

.gp-theme .mobile-logo .header-brand-subtitle,
.gp-theme .mobile-logo .header-brand-subtitle span,
.gp-theme .mobile-logo .header-brand-subtitle strong {
    color: rgba(19, 41, 63, 0.7);
    font-size: 0.72rem;
    line-height: 1.45;
    letter-spacing: 0.08em;
}

.gp-theme .mobile-drawer-services {
    margin: 0 0 1rem;
    padding: 0 0 1rem;
    border-bottom: 1px solid rgba(201, 162, 39, 0.18);
}

.gp-theme .mobile-drawer-section-title {
    display: block;
    margin-bottom: 0.75rem;
    color: rgba(246, 234, 210, 0.78);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gp-theme .mobile-drawer-service-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.6rem;
}

.gp-theme .mobile-drawer-service-chip {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-height: 42px;
    padding: 0.72rem 0.78rem;
    border-radius: 16px;
    background: rgba(24, 24, 24, 0.94);
    border: 1px solid rgba(201, 162, 39, 0.14);
    color: #f2e5c5;
    text-decoration: none;
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1.2;
    transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease;
}

.gp-theme .mobile-drawer-service-chip i {
    flex: 0 0 auto;
    width: 1rem;
    color: #d8b04c;
    text-align: center;
}

.gp-theme .mobile-drawer-service-chip.active,
.gp-theme .mobile-drawer-service-chip:hover {
    background: linear-gradient(135deg, #c9a227, #8f6a17);
    color: #120d04;
    border-color: transparent;
    transform: translateY(-1px);
}

.gp-theme .mobile-drawer-service-chip.active i,
.gp-theme .mobile-drawer-service-chip:hover i {
    color: #120d04;
}

.gp-theme .mobile-nav-menu {
    display: grid;
    gap: 0.7rem;
    margin: 0;
    padding: 0;
}

.gp-theme .mobile-nav-menu > li {
    list-style: none;
}

.gp-theme .mobile-nav-menu > li > a,
.gp-theme .mobile-dropdown-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-height: 56px;
    padding: 0.9rem 1rem;
    border-radius: 18px;
    background: rgba(22, 22, 22, 0.96);
    border: 1px solid rgba(201, 162, 39, 0.14);
    color: #f2e5c5;
    text-decoration: none;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.18);
}

.gp-theme .mobile-nav-menu > li > a i,
.gp-theme .mobile-dropdown-toggle > span i {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.95rem;
    height: 1.95rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.04);
    color: #d8b04c;
    font-size: 0.9rem;
}

.gp-theme .mobile-dropdown-toggle > span {
    display: inline-flex;
    align-items: center;
    gap: 0.72rem;
}

.gp-theme .mobile-dropdown-toggle .dropdown-arrow {
    color: #d8b04c;
    font-size: 0.9rem;
}

.gp-theme .mobile-dropdown-menu {
    margin: 0.5rem 0 0;
    padding: 0.5rem;
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(201, 162, 39, 0.1);
}

.gp-theme .mobile-dropdown-menu li {
    list-style: none;
}

.gp-theme .mobile-dropdown-menu a {
    display: block;
    min-height: 42px;
    padding: 0.75rem 0.82rem;
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.02);
    border: 1px solid transparent;
    color: #eadfbe;
    text-decoration: none;
    font-size: 0.82rem;
    font-weight: 700;
}

.gp-theme .mobile-contact {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem;
}

.gp-theme .mobile-contact .contact-cta {
    margin: 0 !important;
    min-height: 52px;
    border-radius: 18px;
}

.gp-theme .nav-menu {
    gap: 0.55rem;
}

.gp-theme .nav-menu > li > a,
.gp-theme .quick-menu-item {
    border-radius: 999px;
    padding: 0.78rem 1rem;
    background: rgba(255, 255, 255, 0.82);
    border: 1px solid rgba(61, 124, 153, 0.12);
    color: #1a4357;
    font-weight: 700;
}

.gp-theme .nav-menu > li > a:hover,
.gp-theme .nav-menu > li > a.active,
.gp-theme .quick-menu-item.active,
.gp-theme .quick-menu-item:hover {
    background: linear-gradient(135deg, var(--primary-color), color-mix(in srgb, var(--secondary-color) 35%, var(--primary-color)));
    color: #fff;
    border-color: transparent;
    transform: translateY(-1px);
}

.gp-theme .dropdown-menu,
.gp-theme .mobile-nav,
.gp-theme .contact-widget,
.gp-theme .info-widget,
.gp-theme .features-card,
.gp-theme .content-section,
.gp-theme .service-detail-card,
.gp-theme .team-card,
.gp-theme .blog-card,
.gp-theme .shared-city-gallery-shell {
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(64, 37, 31, 0.08);
    border-radius: 28px;
    box-shadow: 0 18px 44px rgba(38, 24, 20, 0.08);
}

.gp-theme .contact-cta,
.gp-theme .btn-primary,
.gp-theme .btn-outline-primary,
.gp-btn-primary,
.gp-btn-secondary {
    border-radius: 999px;
    padding: 0.88rem 1.25rem;
    font-weight: 700;
    letter-spacing: 0.01em;
    transition: transform 0.22s ease, box-shadow 0.22s ease, background 0.22s ease;
}

.gp-theme .btn-primary,
.gp-theme .contact-cta--whatsapp,
.gp-btn-primary {
    background: linear-gradient(135deg, var(--primary-color), color-mix(in srgb, var(--secondary-color) 48%, var(--primary-color)));
    border: 0;
    color: #fff;
    box-shadow: 0 14px 28px color-mix(in srgb, var(--primary-color) 24%, transparent);
}

.gp-theme .btn-primary:hover,
.gp-theme .contact-cta--whatsapp:hover,
.gp-btn-primary:hover,
.gp-btn-secondary:hover,
.gp-theme .btn-outline-primary:hover,
.gp-theme .contact-cta--phone:hover {
    transform: translateY(-2px);
}

.gp-theme .btn-outline-primary,
.gp-theme .contact-cta--phone,
.gp-btn-secondary {
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid color-mix(in srgb, var(--primary-color) 24%, white);
    color: #173c4d;
}

.gp-theme .footer-main {
    margin-top: 4rem;
    background:
        linear-gradient(135deg, rgba(11, 42, 58, 0.98), rgba(29, 81, 106, 0.98)),
        #0c2d3d;
    color: #f2fbff;
}

.gp-theme .footer-bottom {
    background: rgba(255, 255, 255, 0.04);
}

.gp-theme .footer-links a,
.gp-theme .footer-contact a,
.gp-theme .footer-bottom a {
    color: rgba(255, 247, 241, 0.88);
}

.gp-theme .footer-links a:hover,
.gp-theme .footer-bottom a:hover {
    color: #fff;
}

.gp-theme .footer-credit-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-decoration: none;
}

.gp-theme .whatsapp-float,
.gp-theme .floating-action,
.gp-theme .floating-social-link {
    border-radius: 999px;
    box-shadow: 0 18px 42px rgba(20, 18, 18, 0.18);
}

.gp-theme .floating-action-stack,
.gp-theme .floating-social-stack {
    position: fixed;
    top: auto !important;
    right: 1rem;
}

.gp-theme .floating-action-stack {
    bottom: 1.25rem;
}

.gp-theme .floating-social-stack {
    display: none;
}

.gp-page-hero,
.gp-theme .page-header {
    position: relative;
    overflow: hidden;
    padding: 7.5rem 0 4.5rem;
    background:
        linear-gradient(135deg, rgba(15, 60, 82, 0.96), rgba(55, 122, 151, 0.92)),
        radial-gradient(circle at top right, rgba(188, 235, 248, 0.28), transparent 34%);
    color: #f3fcff;
}

.gp-page-hero::after,
.gp-theme .page-header::after {
    content: "";
    position: absolute;
    inset: auto -6rem -6rem auto;
    width: 18rem;
    height: 18rem;
    border-radius: 50%;
    background: rgba(191, 240, 250, 0.22);
    filter: blur(8px);
}

.gp-page-hero .container,
.gp-theme .page-header .container {
    position: relative;
    z-index: 1;
}

.gp-page-hero h1,
.gp-theme .page-title {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: clamp(2.2rem, 4vw, 4.4rem);
    line-height: 0.98;
    margin-bottom: 1rem;
    letter-spacing: -0.04em;
}

.gp-page-hero p,
.gp-theme .page-subtitle {
    max-width: 52rem;
    margin: 0;
    font-size: 1.06rem;
    line-height: 1.75;
    color: rgba(243, 252, 255, 0.84);
}

.gp-kicker,
.gp-sidecard-kicker,
.gp-price-label {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    width: max-content;
    max-width: 100%;
    padding: 0.5rem 1rem;
    border-radius: 999px;
    border: 1px solid rgba(98, 164, 194, 0.34);
    background: linear-gradient(135deg, rgba(214, 244, 251, 0.96), rgba(255, 255, 255, 0.98));
    box-shadow: 0 12px 28px rgba(76, 144, 177, 0.14);
    color: #2c6d8e;
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gp-kicker {
    margin-bottom: 1.25rem;
}

.gp-page-hero .gp-kicker,
.gp-theme .page-header .gp-kicker {
    border-color: rgba(214, 244, 251, 0.24);
    background: rgba(214, 244, 251, 0.12);
    box-shadow: 0 14px 30px rgba(8, 29, 38, 0.14);
    color: #f0fcff;
}

.gp-marquee-section {
    overflow: hidden;
    padding: 1.1rem 0 0.75rem;
    background:
        linear-gradient(180deg, rgba(255, 247, 243, 0.92), rgba(255, 255, 255, 0));
}

.gp-marquee-top {
    display: grid;
    grid-template-columns: minmax(0, 1.4fr) minmax(18rem, 0.8fr);
    gap: 1rem;
    align-items: end;
    margin-bottom: 1rem;
}

.gp-marquee-intro h2 {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: clamp(1.8rem, 3vw, 2.7rem);
    line-height: 1.02;
    letter-spacing: -0.04em;
    margin-bottom: 0.7rem;
    color: #201614;
}

.gp-marquee-intro p {
    margin: 0;
    max-width: 44rem;
    color: #62524e;
    line-height: 1.75;
}

.gp-marquee-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.75rem;
}

.gp-marquee-badges span {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.8rem 1rem;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.88);
    border: 1px solid rgba(52, 31, 26, 0.08);
    box-shadow: 0 14px 34px rgba(38, 24, 20, 0.08);
    color: #4f403c;
    font-weight: 700;
}

.gp-marquee-badges strong {
    color: var(--primary-color);
}

.gp-marquee-viewport {
    overflow: hidden;
}

.gp-marquee-track {
    display: flex;
    gap: 1rem;
    width: max-content;
    padding-inline: 1rem;
    animation: gp-marquee-move 34s linear infinite;
}

.gp-marquee-card {
    position: relative;
    width: 20rem;
    height: 11.75rem;
    overflow: hidden;
    flex: 0 0 auto;
    margin: 0;
    border-radius: 24px;
    background: #1f1618;
    box-shadow: 0 18px 42px rgba(42, 23, 22, 0.12);
}

.gp-marquee-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gp-marquee-card figcaption {
    position: absolute;
    inset: auto 0 0 0;
    padding: 1rem 1.05rem;
    background: linear-gradient(180deg, transparent, rgba(24, 17, 18, 0.88));
    color: #fff;
    font-size: 0.96rem;
    font-weight: 700;
}

.gp-hero-section {
    padding-top: 1.4rem;
}

.gp-hero-shell {
    position: relative;
    overflow: hidden;
    padding: 2.2rem;
    border-radius: 36px;
    background:
        linear-gradient(135deg, rgba(255, 249, 244, 0.96), rgba(255, 255, 255, 0.88)),
        #fff;
    border: 1px solid rgba(60, 34, 29, 0.08);
    box-shadow: 0 26px 60px rgba(44, 26, 24, 0.12);
}

.gp-hero-shell::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(76, 144, 177, 0.08) 0, rgba(76, 144, 177, 0) 18%),
        radial-gradient(circle at top right, rgba(202, 241, 251, 0.22), transparent 32%);
    pointer-events: none;
}

.gp-hero-copy,
.gp-hero-visual {
    position: relative;
    z-index: 1;
}

.gp-hero-title {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: clamp(2.4rem, 4.8vw, 5rem);
    line-height: 0.96;
    letter-spacing: -0.05em;
    margin-bottom: 1rem;
    color: #143649;
}

.gp-hero-text {
    font-size: 1.08rem;
    line-height: 1.8;
    color: #49616d;
    max-width: 38rem;
}

.gp-cta-row,
.gp-side-actions,
.gp-district-side-actions,
.gp-section-action,
.gp-quote-submit,
.gp-theme .hero-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin-top: 1.6rem;
}

.gp-hero-metrics,
.gp-proof-grid,
.gp-service-grid,
.gp-review-grid,
.gp-price-grid,
.gp-district-grid,
.gp-gallery-grid {
    display: grid;
    gap: 1rem;
}

.gp-hero-metrics {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 1.75rem;
}

.gp-metric-card,
.gp-proof-card,
.gp-service-card,
.gp-review-card,
.gp-price-card,
.gp-district-card,
.gp-blog-card,
.gp-directory-side,
.gp-district-side,
.gp-map-copy,
.gp-seo-checklist,
.gp-seo-article,
.gp-district-story,
.gp-contact-side,
.gp-quote-shell {
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(34, 92, 117, 0.1);
    border-radius: 28px;
    box-shadow: 0 18px 44px rgba(34, 92, 117, 0.08);
}

.gp-metric-card {
    padding: 1rem;
}

.gp-metric-card strong {
    display: block;
    font-size: 1.55rem;
    color: var(--primary-color);
}

.gp-metric-card span {
    color: #4d6671;
    font-size: 0.92rem;
}

.gp-hero-flags,
.gp-district-checks {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-top: 1.25rem;
}

.gp-hero-flags span,
.gp-district-checks span {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.7rem 0.9rem;
    border-radius: 18px;
    background: rgba(76, 144, 177, 0.1);
    color: #2c5568;
    font-weight: 700;
}

.gp-hero-intent-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.9rem;
    margin-top: 1.25rem;
}

.gp-hero-intent-card {
    display: block;
    padding: 1rem 1.05rem;
    border-radius: 22px;
    text-decoration: none;
    background: rgba(255, 255, 255, 0.96);
    border: 1px solid rgba(34, 92, 117, 0.14);
    box-shadow: 0 14px 34px rgba(34, 92, 117, 0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
}

.gp-hero-intent-card:hover {
    transform: translateY(-2px);
    border-color: rgba(34, 92, 117, 0.26);
    box-shadow: 0 18px 40px rgba(34, 92, 117, 0.12);
}

.gp-hero-intent-card strong,
.gp-hero-intent-card span {
    display: block;
}

.gp-hero-intent-card strong {
    color: #143649;
    line-height: 1.35;
}

.gp-hero-intent-card span {
    margin-top: 0.35rem;
    color: #59717d;
    font-size: 0.92rem;
    line-height: 1.55;
}

.gp-hero-visual {
    display: grid;
    gap: 1rem;
}

.gp-hero-slider {
    position: relative;
    min-height: 32rem;
    border-radius: 28px;
    overflow: hidden;
    background: #12384a;
}

.gp-hero-slider .hero-slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    transition: opacity 0.45s ease;
}

.gp-hero-slider .hero-slide.active {
    opacity: 1;
}

.gp-hero-slider img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gp-hero-sidecard {
    padding: 1.35rem;
}

.gp-sidecard-kicker,
.gp-price-label {
    margin-bottom: 0.85rem;
}

.gp-hero-sidecard h2,
.gp-proof-card h2,
.gp-price-copy h2,
.gp-seo-checklist h3,
.gp-seo-article h2,
.gp-contact-side h2,
.gp-quote-top h2,
.gp-map-copy h2,
.gp-directory-side h2,
.gp-district-side h2,
.gp-district-story h2 {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: 1.5rem;
    line-height: 1.15;
    margin-bottom: 0.9rem;
    color: #173548;
}

.gp-hero-sidecard ul,
.gp-directory-side ul,
.gp-seo-checklist ul {
    display: grid;
    gap: 0.7rem;
    padding-left: 1.1rem;
    margin-bottom: 0;
    color: #49606b;
}

.gp-inline-link {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    margin-top: 1rem;
    color: var(--primary-color);
    font-weight: 800;
    text-decoration: none;
}

.gp-proof-section,
.gp-process-section,
.gp-experience-section,
.gp-service-section,
.gp-price-section,
.gp-district-section,
.gp-seo-section,
.gp-gallery-section,
.gp-review-section,
.gp-faq-section,
.gp-blog-section,
.gp-contact-section,
.gp-map-section,
.gp-district-directory,
.gp-district-detail-section {
    padding: 4.8rem 0;
}

.gp-service-section,
.gp-price-section,
.gp-district-section,
.gp-seo-section,
.gp-gallery-section,
.gp-review-section,
.gp-faq-section,
.gp-blog-section,
.gp-contact-section,
.gp-map-section,
.gp-district-directory,
.gp-district-detail-section {
    content-visibility: auto;
    contain-intrinsic-size: 900px;
}

.gp-section-head {
    text-align: center;
    margin-bottom: 2rem;
}

.gp-section-head--left {
    text-align: left;
}

.gp-section-head h2 {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: clamp(1.9rem, 3vw, 3rem);
    line-height: 1.02;
    letter-spacing: -0.04em;
    margin-bottom: 0.9rem;
    color: #173548;
}

.gp-section-head p,
.gp-proof-card p,
.gp-service-card p,
.gp-price-copy p,
.gp-contact-side p,
.gp-quote-top p,
.gp-map-copy p,
.gp-district-story p,
.gp-district-richtext,
.gp-directory-side p,
.gp-seo-article p,
.gp-seo-checklist li,
.gp-blog-card p,
.gp-review-card p,
.gp-district-card p,
.gp-price-row span,
.gp-contact-side-grid span {
    color: #4c6672;
    line-height: 1.75;
}

.gp-proof-grid,
.gp-service-grid,
.gp-review-grid,
.gp-district-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gp-review-summary {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    margin-bottom: 1.35rem;
}

.gp-review-summary-card {
    padding: 1.15rem 1.25rem;
    border-radius: 24px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(235, 248, 252, 0.96)),
        #fff;
    border: 1px solid rgba(34, 92, 117, 0.1);
    box-shadow: 0 18px 44px rgba(34, 92, 117, 0.08);
}

.gp-review-summary-card strong {
    display: block;
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: clamp(1.7rem, 3vw, 2.6rem);
    line-height: 0.95;
    letter-spacing: -0.04em;
    color: var(--primary-color);
    margin-bottom: 0.35rem;
}

.gp-review-summary-card span {
    color: #5f4e49;
    font-weight: 700;
}

.gp-process-grid,
.gp-trust-highlight-grid {
    display: grid;
    gap: 1rem;
}

.gp-process-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gp-process-card,
.gp-experience-copy,
.gp-trust-highlight-card {
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(34, 92, 117, 0.1);
    border-radius: 28px;
    box-shadow: 0 18px 44px rgba(34, 92, 117, 0.08);
}

.gp-process-card {
    padding: 1.4rem;
    min-height: 100%;
}

.gp-process-no {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    margin-bottom: 1rem;
    border-radius: 18px;
    background: linear-gradient(135deg, var(--primary-color), color-mix(in srgb, var(--secondary-color) 42%, var(--primary-color)));
    color: #fff;
    font-weight: 800;
    letter-spacing: 0.08em;
}

.gp-process-card h3 {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: 1.18rem;
    line-height: 1.12;
    margin-bottom: 0.7rem;
    color: #173548;
}

.gp-process-card p {
    color: #4c6672;
    line-height: 1.75;
    margin-bottom: 0;
}

.gp-experience-copy {
    padding: 1.6rem;
    height: 100%;
}

.gp-experience-copy h2 {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: clamp(1.9rem, 3vw, 3rem);
    line-height: 1.04;
    letter-spacing: -0.04em;
    margin-bottom: 1rem;
    color: #173548;
}

.gp-experience-copy p {
    color: #4c6672;
    line-height: 1.8;
}

.gp-service-card,
.gp-district-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.gp-service-media,
.gp-district-media {
    margin: -1.4rem -1.4rem 1rem;
    height: 13rem;
    overflow: hidden;
    border-radius: 24px 24px 0 0;
    background: #d7edf6;
}

.gp-service-media img,
.gp-district-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gp-service-note {
    margin-top: -0.15rem;
    font-size: 0.94rem;
    font-weight: 700;
    color: #2f6b84;
}

.gp-service-card .gp-inline-link,
.gp-district-card .gp-inline-link {
    margin-top: auto;
    padding-top: 0.85rem;
}

.gp-district-media--detail {
    margin: 1.1rem 0 1rem;
    height: clamp(18rem, 36vw, 24rem);
    border-radius: 24px;
    padding: 0.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 239, 229, 0.96));
}

.gp-district-media--detail img {
    object-fit: contain;
    object-position: center;
}

.gp-experience-list {
    display: grid;
    gap: 0.75rem;
    padding-left: 1.15rem;
    margin: 1.1rem 0 0;
    color: #564742;
}

.gp-experience-list li::marker {
    color: var(--primary-color);
}

.gp-trust-highlight-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    height: 100%;
}

.gp-trust-highlight-card {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding: 1.5rem;
    min-height: 10.5rem;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(254, 241, 235, 0.98)),
        #fff;
}

.gp-trust-highlight-card strong {
    display: block;
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: clamp(1.7rem, 3.5vw, 3rem);
    line-height: 0.95;
    letter-spacing: -0.04em;
    color: var(--primary-color);
    margin-bottom: 0.45rem;
}

.gp-trust-highlight-card span {
    color: #5f4e49;
    font-weight: 700;
}

.gp-universal-bottom {
    padding: 4.8rem 0 1rem;
}

.gp-bottom-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.2rem;
}

.gp-bottom-card {
    padding: 1.5rem;
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(34, 92, 117, 0.1);
    box-shadow: 0 20px 48px rgba(34, 92, 117, 0.08);
}

.gp-bottom-card h3 {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: 1.6rem;
    line-height: 1.1;
    margin-bottom: 0.8rem;
    color: #173548;
}

.gp-bottom-card p {
    color: #4c6672;
    line-height: 1.75;
}

.gp-bottom-map-frame {
    margin-top: 1rem;
    overflow: hidden;
    border-radius: 24px;
    border: 1px solid rgba(34, 92, 117, 0.1);
    min-height: 260px;
}

.gp-bottom-map-frame iframe {
    display: block;
    width: 100%;
    height: 260px;
    border: 0;
}

.gp-bottom-review-list {
    display: grid;
    gap: 0.9rem;
    margin-top: 1rem;
}

.gp-bottom-review-item {
    padding: 1rem 1.05rem;
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(234, 248, 252, 0.94));
    border: 1px solid rgba(34, 92, 117, 0.08);
}

.gp-bottom-review-item p {
    margin-bottom: 0;
}

.gp-bottom-review-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.8rem;
    margin-bottom: 0.35rem;
}

.gp-bottom-review-head strong {
    color: #173548;
}

.gp-bottom-review-head span {
    color: #f0b646;
    letter-spacing: 0.04em;
}

.gp-bottom-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    margin-top: 1rem;
}

.gp-proof-card,
.gp-service-card,
.gp-review-card,
.gp-district-card,
.gp-directory-side,
.gp-district-side,
.gp-seo-checklist,
.gp-seo-article,
.gp-map-copy {
    padding: 1.4rem;
}

.gp-proof-icon,
.gp-service-icon {
    width: 3.3rem;
    height: 3.3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 18px;
    margin-bottom: 1rem;
    background: linear-gradient(135deg, var(--primary-color), color-mix(in srgb, var(--secondary-color) 42%, var(--primary-color)));
    color: #fff;
    font-size: 1.1rem;
}

.gp-service-card h3,
.gp-review-card h3,
.gp-blog-card h3,
.gp-district-card h3 {
    font-family: "Gill Sans", "Trebuchet MS", sans-serif;
    font-size: 1.2rem;
    line-height: 1.2;
    margin-bottom: 0.8rem;
    color: #173548;
}

.gp-price-section .row {
    align-items: stretch;
}

.gp-price-copy,
.gp-price-card {
    height: 100%;
    padding: 1.6rem;
}

.gp-price-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    height: 100%;
}

.gp-price-card {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(236, 248, 252, 0.96)),
        #fff;
}

.gp-price-card--alt {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(226, 244, 250, 0.98)),
        #fff;
}

.gp-price-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem;
    padding: 0.95rem 0;
    border-top: 1px solid rgba(48, 31, 27, 0.08);
}

.gp-price-row:first-of-type {
    border-top: 0;
}

.gp-price-row strong {
    display: block;
    color: #241816;
}

.gp-price-row b {
    color: var(--primary-color);
    white-space: nowrap;
}

.gp-district-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.gp-district-count {
    width: 3rem;
    height: 3rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: rgba(76, 144, 177, 0.14);
    color: var(--primary-color);
    font-weight: 800;
}

.gp-chip-group,
.gp-neighborhood-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
    margin-top: 1rem;
}

.gp-chip-group span,
.gp-neighborhood-chip-row span,
.gp-contact-side-grid article,
.gp-fixed-city-row article {
    border-radius: 16px;
    background: rgba(76, 144, 177, 0.08);
    border: 1px solid rgba(76, 144, 177, 0.12);
}

.gp-chip-group span,
.gp-neighborhood-chip-row span {
    padding: 0.52rem 0.82rem;
    color: #2d596d;
    font-size: 0.88rem;
    font-weight: 700;
}

.gp-chip-group a,
.gp-neighborhood-chip-row a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.52rem 0.82rem;
    border-radius: 16px;
    background: rgba(76, 144, 177, 0.08);
    border: 1px solid rgba(76, 144, 177, 0.12);
    color: #2d596d;
    font-size: 0.88rem;
    font-weight: 700;
    text-decoration: none;
    transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.gp-chip-group a:hover,
.gp-neighborhood-chip-row a:hover {
    background: rgba(76, 144, 177, 0.14);
    color: #163846;
    border-color: rgba(76, 144, 177, 0.2);
    transform: translateY(-1px);
}

.gp-gallery-grid {
    grid-template-columns: repeat(12, minmax(0, 1fr));
}

.gp-gallery-card {
    position: relative;
    overflow: hidden;
    border-radius: 28px;
    min-height: 16rem;
    margin: 0;
    background: #241817;
    box-shadow: 0 20px 40px rgba(35, 20, 19, 0.16);
}

.gp-gallery-card:nth-child(1) {
    grid-column: span 7;
}

.gp-gallery-card:nth-child(2),
.gp-gallery-card:nth-child(3) {
    grid-column: span 5;
}

.gp-gallery-card:nth-child(4),
.gp-gallery-card:nth-child(5) {
    grid-column: span 6;
}

.gp-gallery-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gp-gallery-card figcaption {
    position: absolute;
    inset: auto 1rem 1rem 1rem;
    padding: 0.85rem 1rem;
    border-radius: 18px;
    background: rgba(23, 17, 18, 0.62);
    color: #fff;
    backdrop-filter: blur(10px);
}

.gp-review-top {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 0.9rem;
}

.gp-review-top span {
    color: #f0a64f;
    letter-spacing: 0.12em;
}

.gp-review-card {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(252, 244, 239, 0.98)),
        #fff;
}

.gp-blog-card {
    overflow: hidden;
}

.gp-blog-card img {
    width: 100%;
    height: 14rem;
    object-fit: cover;
}

.gp-blog-card-body {
    padding: 1.2rem 1.25rem 1.35rem;
}

.gp-blog-card-body > span {
    display: block;
    margin-bottom: 0.8rem;
    color: #7c6661;
    font-size: 0.9rem;
}

.gp-contact-side-grid,
.gp-fixed-city-row {
    display: grid;
    gap: 0.85rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 1.3rem;
}

.gp-contact-side-grid article,
.gp-fixed-city-row article {
    padding: 0.95rem;
}

.gp-contact-side-grid strong,
.gp-fixed-city-row strong,
.gp-map-note strong,
.gp-quote-estimate span {
    display: block;
    color: #241816;
    margin-bottom: 0.3rem;
}

.gp-contact-side-grid a {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 800;
}

.gp-quote-shell {
    padding: 1.5rem;
}

.gp-quote-top {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 18rem;
    gap: 1rem;
    align-items: start;
    margin-bottom: 1.4rem;
}

.gp-quote-estimate,
.gp-map-note {
    padding: 1rem;
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(76, 144, 177, 0.1), rgba(215, 242, 251, 0.7));
}

.gp-quote-estimate strong {
    display: block;
    color: var(--primary-color);
    font-size: 1.25rem;
    margin: 0.35rem 0 0.55rem;
}

.gp-form-control {
    min-height: 3.35rem;
    border-radius: 18px;
    border: 1px solid rgba(53, 32, 28, 0.12);
    background: rgba(255, 255, 255, 0.96);
    box-shadow: none !important;
}

.gp-form-control:focus {
    border-color: rgba(76, 144, 177, 0.38);
    box-shadow: 0 0 0 0.25rem rgba(76, 144, 177, 0.14) !important;
}

.gp-neighborhood-preview {
    margin-top: 0.7rem;
    min-height: 1rem;
}

.gp-neighborhood-preview strong {
    display: block;
    margin-bottom: 0.4rem;
    font-size: 0.85rem;
    color: #5a4742;
}

.gp-map-frame {
    height: 100%;
    min-height: 26rem;
    overflow: hidden;
    border-radius: 30px;
    box-shadow: 0 20px 48px rgba(36, 22, 20, 0.12);
}

.gp-map-frame iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

.gp-directory-shell,
.gp-district-story {
    padding: 1.6rem;
}

.gp-district-directory-grid {
    display: grid;
    gap: 1rem;
}

.gp-district-card--directory {
    padding: 1.25rem;
}

.gp-district-story .gp-district-richtext {
    margin-top: 1rem;
}

.gp-chip-group--stacked {
    margin-top: 0;
}

.gp-chip-group--stacked span {
    width: 100%;
}

.gp-theme .accordion-item {
    border: 1px solid rgba(56, 35, 30, 0.08);
    border-radius: 20px !important;
    overflow: hidden;
    margin-bottom: 0.8rem;
    background: rgba(255, 255, 255, 0.92);
}

.gp-theme .accordion-button {
    background: rgba(255, 255, 255, 0.96);
    color: #241817;
    font-weight: 700;
    box-shadow: none !important;
}

.gp-theme .accordion-button:not(.collapsed) {
    background: rgba(76, 144, 177, 0.1);
    color: var(--primary-color);
}

.gp-theme .shared-city-gallery-section {
    padding-top: 0;
}

.gp-theme .shared-city-gallery-shell {
    padding: 1.5rem;
}

.gp-theme .shared-city-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.gp-theme .shared-city-gallery-card {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    min-height: 14rem;
}

.gp-theme .shared-city-gallery-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gp-theme .shared-city-gallery-overlay {
    position: absolute;
    inset: auto 0 0 0;
    padding: 1rem;
    background: linear-gradient(180deg, transparent, rgba(20, 17, 18, 0.9));
    color: #fff;
}

@media (max-width: 1199.98px) {
    .gp-proof-grid,
    .gp-process-grid,
    .gp-service-grid,
    .gp-review-grid,
    .gp-district-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .gp-price-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 991.98px) {
    .gp-hero-metrics,
    .gp-hero-intent-grid,
    .gp-contact-side-grid,
    .gp-fixed-city-row,
    .gp-quote-top {
        grid-template-columns: 1fr;
    }

    .gp-quote-top {
        display: grid;
    }

    .gp-hero-slider {
        min-height: 24rem;
    }

    .gp-theme .mobile-quick-menu {
        background: rgba(255, 249, 244, 0.94);
        backdrop-filter: blur(18px);
        border-top: 1px solid rgba(48, 28, 24, 0.08);
    }

    .gp-theme .mobile-nav {
        background: rgba(255, 252, 249, 0.98);
    }
}

@media (max-width: 767.98px) {
    .gp-marquee-top {
        grid-template-columns: 1fr;
    }

    .gp-marquee-badges {
        justify-content: flex-start;
    }

    .gp-theme .desktop-header,
    .gp-theme .mobile-topbar {
        padding: 0.85rem 0;
    }

    .gp-theme .mobile-header-brand .header-brand-title {
        font-size: 0.92rem;
        letter-spacing: 0.05em;
    }

    .gp-theme .mobile-header-brand .header-brand-subtitle {
        display: none;
    }

    .gp-hero-shell,
    .gp-proof-card,
    .gp-service-card,
    .gp-review-card,
    .gp-district-card,
    .gp-price-copy,
    .gp-price-card,
    .gp-contact-side,
    .gp-quote-shell,
    .gp-directory-shell,
    .gp-directory-side,
    .gp-district-story,
    .gp-district-side,
    .gp-seo-article,
    .gp-seo-checklist,
    .gp-map-copy {
        padding: 1.15rem;
        border-radius: 24px;
    }

    .gp-proof-grid,
    .gp-process-grid,
    .gp-service-grid,
    .gp-review-grid,
    .gp-review-summary,
    .gp-bottom-grid,
    .gp-district-grid,
    .gp-theme .shared-city-gallery-grid {
        grid-template-columns: 1fr;
    }

    .gp-gallery-grid {
        grid-template-columns: 1fr;
    }

    .gp-gallery-card:nth-child(1),
    .gp-gallery-card:nth-child(2),
    .gp-gallery-card:nth-child(3),
    .gp-gallery-card:nth-child(4),
    .gp-gallery-card:nth-child(5) {
        grid-column: auto;
        min-height: 13rem;
    }

    .gp-page-hero,
    .gp-theme .page-header {
        padding: 6rem 0 3.4rem;
    }

    .gp-marquee-card {
        width: 15rem;
        height: 9rem;
    }

    .gp-trust-highlight-grid {
        grid-template-columns: 1fr;
    }

    .gp-service-media,
    .gp-district-media {
        height: 11rem;
    }

    .gp-district-media--detail {
        height: 17rem;
        padding: 0.6rem;
    }

    .gp-hero-title {
        font-size: clamp(2rem, 10vw, 3rem);
    }

    .gp-theme .header-brand-title {
        font-size: 1.05rem;
    }

    .gp-theme .floating-action-stack,
    .gp-theme .floating-social-stack {
        right: 0.75rem;
        bottom: 5.25rem;
    }

    .gp-theme .floating-action-stack {
        display: none;
    }

    .gp-theme .mobile-service-cards {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0.55rem;
    }

    .gp-theme .mobile-service-card {
        min-height: 44px;
        padding: 0.65rem 0.7rem;
        border-radius: 14px;
    }

    .gp-theme .mobile-service-card span {
        font-size: 0.76rem;
    }
}

@keyframes gp-marquee-move {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-50%);
    }
}

.gp-chip-group--dense {
    gap: 0.55rem;
}

.gp-chip-group--dense a {
    display: inline-flex;
    align-items: center;
    padding: 0.55rem 0.8rem;
    border-radius: 999px;
    background: rgba(14, 42, 71, 0.08);
    color: #0e2a47;
    font-size: 0.84rem;
    font-weight: 700;
    text-decoration: none;
    transition: transform 0.18s ease, background 0.18s ease, color 0.18s ease;
}

.gp-chip-group--dense a:hover {
    background: var(--primary-color);
    color: #fff;
    transform: translateY(-1px);
}

.sembol-mini-quote {
    padding: 1.25rem;
    border-radius: 24px;
    background:
        linear-gradient(160deg, rgba(14, 42, 71, 0.98), rgba(10, 24, 43, 0.96)),
        var(--primary-color);
    color: #fff;
    box-shadow: 0 26px 60px rgba(9, 20, 34, 0.18);
}

.sembol-mini-quote .gp-kicker {
    color: rgba(255, 255, 255, 0.76);
}

.sembol-mini-quote h2 {
    margin: 0.35rem 0 0.55rem;
    font-size: clamp(1.22rem, 2.4vw, 1.6rem);
    line-height: 1.15;
    color: #fff;
}

.sembol-mini-quote p {
    margin: 0;
    color: rgba(255, 255, 255, 0.82);
}

.sembol-mini-quote__form {
    margin-top: 1rem;
}

.sembol-mini-quote__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
    margin-bottom: 1rem;
}

.sembol-mini-quote__grid label {
    display: flex;
    flex-direction: column;
    gap: 0.42rem;
    font-size: 0.84rem;
    font-weight: 700;
    color: rgba(255, 255, 255, 0.86);
}

.sembol-mini-quote__grid select,
.sembol-mini-quote__grid input {
    width: 100%;
    min-height: 3rem;
    padding: 0.82rem 0.95rem;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    outline: none;
    box-shadow: none;
}

.sembol-mini-quote__grid select option {
    color: #122133;
}

.sembol-mini-quote__grid select:focus,
.sembol-mini-quote__grid input:focus {
    border-color: rgba(255, 255, 255, 0.4);
    background: rgba(255, 255, 255, 0.12);
}

.sembol-local-hero {
    padding: 8rem 0 3rem;
}

.sembol-local-hero__shell {
    padding: 1.5rem;
    border-radius: 30px;
    background:
        radial-gradient(circle at top left, rgba(246, 139, 31, 0.18), transparent 42%),
        linear-gradient(145deg, rgba(255, 250, 245, 0.98), rgba(247, 250, 255, 0.92));
    box-shadow: 0 30px 70px rgba(15, 38, 66, 0.08);
}

.sembol-local-hero__content h1 {
    margin: 0.4rem 0 0.8rem;
    font-size: clamp(2.2rem, 4.8vw, 4rem);
    line-height: 1.02;
    color: #0e2a47;
}

.sembol-local-hero__content p {
    font-size: 1.03rem;
    color: #30455e;
}

.sembol-local-hero__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    margin: 1.15rem 0 1rem;
}

.sembol-local-hero__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
}

.sembol-local-hero__badges span {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.72rem 0.88rem;
    border-radius: 999px;
    background: rgba(14, 42, 71, 0.08);
    color: #17385b;
    font-size: 0.86rem;
    font-weight: 700;
}

.sembol-local-hero__visual {
    display: grid;
    gap: 1rem;
}

.sembol-local-hero__figure {
    margin: 0;
    overflow: hidden;
    border-radius: 26px;
    min-height: 24rem;
    background: #e7edf4;
}

.sembol-local-hero__figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.sembol-link-matrix {
    padding: 0 0 4rem;
}

.sembol-link-matrix__panel {
    padding: 1.35rem;
    border-radius: 26px;
    background: rgba(255, 255, 255, 0.94);
    border: 1px solid rgba(14, 42, 71, 0.08);
    box-shadow: 0 24px 60px rgba(10, 24, 43, 0.06);
}

.sembol-link-matrix__panel h2 {
    margin: 0.35rem 0 1rem;
    color: #0e2a47;
}

.sembol-link-matrix__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.95rem;
}

.sembol-link-matrix__card {
    display: grid;
    gap: 0.35rem;
    padding: 1rem;
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(14, 42, 71, 0.03), rgba(246, 139, 31, 0.08));
    text-decoration: none;
    color: #163452;
    border: 1px solid rgba(14, 42, 71, 0.08);
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease;
}

.sembol-link-matrix__card strong {
    font-size: 0.98rem;
}

.sembol-link-matrix__card span {
    color: #51677f;
    font-size: 0.88rem;
}

.sembol-link-matrix__card:hover {
    transform: translateY(-2px);
    border-color: rgba(14, 42, 71, 0.18);
    box-shadow: 0 20px 35px rgba(10, 24, 43, 0.08);
}

@media (max-width: 991.98px) {
    .sembol-mini-quote__grid,
    .sembol-link-matrix__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767.98px) {
    .sembol-local-hero {
        padding-top: 6rem;
    }

    .sembol-local-hero__shell,
    .sembol-link-matrix__panel {
        padding: 1.1rem;
        border-radius: 22px;
    }

    .sembol-local-hero__figure {
        min-height: 16rem;
    }

    .sembol-local-hero__actions,
    .sembol-local-hero__badges {
        display: grid;
    }

    .sembol-mini-quote__grid {
        grid-template-columns: 1fr;
    }
}

/* Antep gold-black theme */
body.gp-theme {
    background:
        radial-gradient(circle at top right, rgba(201, 162, 39, 0.18), transparent 24%),
        radial-gradient(circle at left center, rgba(122, 91, 19, 0.14), transparent 32%),
        linear-gradient(180deg, #050505 0%, #0d0d0d 42%, #14110b 100%);
    color: #f5ead0;
    font-family: "Segoe UI Variable", "Trebuchet MS", sans-serif;
}

.gp-theme main {
    padding-bottom: 2rem;
}

.gp-theme .site-header-shell {
    background: rgba(8, 8, 8, 0.92);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(201, 162, 39, 0.22);
    box-shadow: 0 20px 44px rgba(0, 0, 0, 0.34);
}

.gp-theme .header-brand-title,
.gp-theme .footer-brand-title,
.gp-theme .header-brand-subtitle,
.gp-theme .footer-brand-subtitle,
.gp-theme .footer-city-kicker,
.gp-theme .footer-city-summary,
.gp-theme .footer-city-fact,
.gp-theme .footer-links a,
.gp-theme .footer-contact a,
.gp-theme .footer-contact span,
.gp-theme .footer-bottom {
    color: #f6ead2;
}

.gp-theme .header-brand-city,
.gp-theme .footer-brand-city,
.gp-theme .header-brand-subtitle-city,
.gp-theme .footer-brand-subtitle-city,
.gp-theme .footer-links a:hover,
.gp-theme .footer-bottom a:hover {
    color: #d8b04c;
}

.gp-theme .nav-menu > li > a,
.gp-theme .quick-menu-item,
.gp-theme .dropdown-menu a,
.gp-theme .mobile-nav-menu a {
    background: rgba(20, 20, 20, 0.96);
    border: 1px solid rgba(201, 162, 39, 0.14);
    color: #f2e5c5;
}

.gp-theme .mobile-service-cards-item {
    list-style: none;
    margin: 0.85rem 0 0.25rem;
}

.gp-theme .mobile-nav-section-label {
    display: block;
    margin: 0 0 0.8rem;
    padding: 0 0.2rem;
    color: rgba(242, 229, 197, 0.72);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.gp-theme .mobile-service-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.65rem;
}

.gp-theme .mobile-service-card {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    min-height: 46px;
    padding: 0.7rem 0.78rem;
    border-radius: 16px;
    border: 1px solid rgba(201, 162, 39, 0.16);
    background: linear-gradient(180deg, rgba(24, 24, 24, 0.96), rgba(33, 27, 16, 0.98));
    color: #f2e5c5;
    text-decoration: none;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.18);
    transition: transform 0.2s ease, border-color 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
}

.gp-theme .mobile-service-card i {
    flex: 0 0 auto;
    width: 1rem;
    color: #d8b04c;
    font-size: 0.92rem;
    text-align: center;
}

.gp-theme .mobile-service-card span {
    display: block;
    min-width: 0;
    font-size: 0.79rem;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0.01em;
}

.gp-theme .mobile-service-card:hover,
.gp-theme .mobile-service-card.active {
    background: linear-gradient(135deg, #c9a227, #8f6a17);
    border-color: transparent;
    color: #120d04;
    transform: translateY(-1px);
    box-shadow: 0 16px 34px rgba(201, 162, 39, 0.16);
}

.gp-theme .mobile-service-card:hover i,
.gp-theme .mobile-service-card.active i {
    color: #120d04;
}

.gp-theme .nav-menu > li > a:hover,
.gp-theme .nav-menu > li > a.active,
.gp-theme .quick-menu-item.active,
.gp-theme .quick-menu-item:hover {
    background: linear-gradient(135deg, #c9a227, #8f6a17);
    color: #120d04;
    border-color: transparent;
}

.gp-theme .dropdown-menu,
.gp-theme .mobile-nav,
.gp-theme .contact-widget,
.gp-theme .info-widget,
.gp-theme .features-card,
.gp-theme .content-section,
.gp-theme .service-detail-card,
.gp-theme .team-card,
.gp-theme .blog-card,
.gp-theme .shared-city-gallery-shell {
    background: linear-gradient(180deg, rgba(18, 18, 18, 0.98), rgba(27, 23, 14, 0.98));
    border: 1px solid rgba(201, 162, 39, 0.14);
    box-shadow: 0 20px 42px rgba(0, 0, 0, 0.26);
}

.gp-theme .contact-cta--phone,
.gp-btn-secondary,
.gp-theme .btn-outline-primary {
    background: rgba(13, 13, 13, 0.92);
    color: #f3e3be;
    border: 1px solid rgba(201, 162, 39, 0.26);
}

.gp-theme .contact-cta--whatsapp,
.gp-btn-primary,
.gp-theme .btn-primary {
    background: linear-gradient(135deg, #c9a227, #8a6512);
    color: #130e05;
    border: 0;
    box-shadow: 0 16px 34px rgba(201, 162, 39, 0.16);
}

.gp-theme .footer-main {
    background: linear-gradient(180deg, #060606 0%, #110f0b 100%);
    color: #f8edd5;
}

.gp-theme .footer-bottom {
    background: rgba(255, 215, 140, 0.05);
}

.gp-theme .whatsapp-float,
.gp-theme .floating-action,
.gp-theme .floating-social-link {
    background: rgba(15, 15, 15, 0.96);
    border: 1px solid rgba(201, 162, 39, 0.18);
    color: #f2e2b8;
}

.gp-theme .whatsapp-float:hover,
.gp-theme .floating-action:hover,
.gp-theme .floating-social-link:hover {
    background: linear-gradient(135deg, #c9a227, #8a6512);
    color: #120d04;
}

.gold-home {
    padding: 7.5rem 0 3rem;
}

.gold-hero,
.gold-content-card,
.gold-proof-card,
.gold-service-card,
.gold-district-card,
.gold-keyword-card,
.gold-review-card,
.gold-blog-card {
    border: 1px solid rgba(201, 162, 39, 0.14);
    background: linear-gradient(180deg, rgba(18, 18, 18, 0.98), rgba(24, 19, 11, 0.98));
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.28);
}

.gold-hero {
    padding: 2rem;
    border-radius: 32px;
    margin-bottom: 1.5rem;
}

.gold-kicker {
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 0.95rem;
    border-radius: 999px;
    background: rgba(201, 162, 39, 0.12);
    border: 1px solid rgba(201, 162, 39, 0.24);
    color: #f1d892;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gold-title {
    margin: 1rem 0;
    color: #fff5dc;
    font-size: clamp(2.3rem, 5vw, 4.8rem);
    line-height: 0.95;
    letter-spacing: -0.05em;
}

.gold-text,
.gold-section-head p,
.gold-service-card span,
.gold-proof-card p,
.gold-district-card p,
.gold-copy-list li,
.gold-faq-item p,
.gold-review-card p,
.gold-blog-card span {
    color: rgba(246, 234, 210, 0.82);
    line-height: 1.75;
}

.gold-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.9rem;
    margin: 1.4rem 0 1.3rem;
}

.gold-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3.25rem;
    padding: 0.85rem 1.25rem;
    border-radius: 999px;
    font-weight: 800;
    text-decoration: none;
    transition: transform 0.2s ease, background 0.2s ease, color 0.2s ease;
}

.gold-btn:hover {
    transform: translateY(-2px);
}

.gold-btn--primary,
.gold-btn--whatsapp {
    background: linear-gradient(135deg, #c9a227, #8f6a17);
    color: #140f05;
}

.gold-btn--ghost {
    background: rgba(15, 15, 15, 0.96);
    color: #f5e6c4;
    border: 1px solid rgba(201, 162, 39, 0.24);
}

.gold-trust-list,
.gold-copy-list,
.gold-district-links,
.gold-blog-list,
.gold-review-list,
.gold-faq-list {
    display: grid;
    gap: 0.85rem;
}

.gold-trust-list {
    padding: 0;
    margin: 0 0 1.4rem;
    list-style: none;
}

.gold-trust-list li,
.gold-copy-list li {
    position: relative;
    padding-left: 1.15rem;
}

.gold-trust-list li::before,
.gold-copy-list li::before {
    content: "";
    position: absolute;
    top: 0.7rem;
    left: 0;
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 50%;
    background: #c9a227;
}

.gold-stat-grid,
.gold-proof-grid,
.gold-service-grid,
.gold-district-grid,
.gold-keyword-grid,
.gold-gallery-grid,
.gold-map-grid {
    display: grid;
    gap: 1rem;
}

.gold-stat-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gold-stat-card,
.gold-visual-chip {
    padding: 1rem;
    border-radius: 22px;
    background: rgba(255, 215, 140, 0.06);
    border: 1px solid rgba(201, 162, 39, 0.14);
}

.gold-stat-card strong,
.gold-visual-chip strong,
.gold-proof-card strong,
.gold-service-card strong,
.gold-district-card h3,
.gold-keyword-card strong,
.gold-content-card h2,
.gold-blog-card strong,
.gold-review-card strong {
    display: block;
    color: #f8e9be;
}

.gold-stat-card strong {
    font-size: 1.4rem;
}

.gold-visual-card {
    position: relative;
    overflow: hidden;
    border-radius: 28px;
    min-height: 100%;
    padding: 0.9rem;
    background: linear-gradient(180deg, rgba(255, 248, 227, 0.08), rgba(255, 255, 255, 0.03));
    border: 1px solid rgba(201, 162, 39, 0.14);
}

.gold-visual-card img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 4.8;
    object-fit: contain;
    object-position: center;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.04);
}

.gold-visual-stack {
    position: absolute;
    inset: auto 1rem 1rem 1rem;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.7rem;
}

.gold-visual-chip span {
    color: rgba(246, 234, 210, 0.72);
    font-size: 0.84rem;
}

.gold-section {
    margin-top: 1.4rem;
}

.gold-section-head {
    margin-bottom: 1rem;
}

.gold-section-head h2 {
    margin: 0.95rem 0 0.55rem;
    color: #fff2d5;
    font-size: clamp(1.7rem, 3vw, 3rem);
    line-height: 1.02;
}

.gold-service-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gold-service-card,
.gold-keyword-card,
.gold-blog-card {
    display: grid;
    gap: 0.55rem;
    padding: 1.15rem;
    border-radius: 24px;
    text-decoration: none;
}

.gold-service-card,
.gold-keyword-card,
.gold-district-card {
    overflow: hidden;
}

.gold-card-media {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 11;
    object-fit: cover;
    border-radius: 18px;
    border: 1px solid rgba(201, 162, 39, 0.14);
    background: rgba(255, 215, 140, 0.04);
}

.gold-card-copy {
    display: grid;
    gap: 0.45rem;
}

.gold-service-card:hover,
.gold-keyword-card:hover,
.gold-blog-card:hover,
.gold-district-links a:hover {
    border-color: rgba(201, 162, 39, 0.36);
    transform: translateY(-2px);
}

.gold-proof-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gold-proof-card,
.gold-content-card,
.gold-district-card,
.gold-review-card {
    padding: 1.25rem;
    border-radius: 24px;
}

.gold-district-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gold-gallery-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.gold-gallery-card {
    margin: 0;
    padding: 0.85rem;
    border-radius: 24px;
    border: 1px solid rgba(201, 162, 39, 0.14);
    background: linear-gradient(180deg, rgba(18, 18, 18, 0.98), rgba(24, 19, 11, 0.98));
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.28);
}

.gold-gallery-card img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 18px;
}

.gold-gallery-caption {
    display: grid;
    gap: 0.35rem;
    padding: 0.95rem 0.15rem 0.1rem;
}

.gold-gallery-caption strong {
    color: #f8e9be;
}

.gold-gallery-caption span {
    color: rgba(246, 234, 210, 0.78);
    line-height: 1.7;
    font-size: 0.92rem;
}

.gold-district-links a,
.gold-keyword-card span,
.gold-blog-card span {
    color: #d6b56e;
    text-decoration: none;
    font-size: 0.92rem;
}

.gold-keyword-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.gold-keyword-card strong {
    font-size: 1rem;
}

.gold-map-grid {
    grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
    align-items: stretch;
}

.gold-map-frame {
    overflow: hidden;
    border-radius: 24px;
    border: 1px solid rgba(201, 162, 39, 0.14);
    background: linear-gradient(180deg, rgba(18, 18, 18, 0.98), rgba(24, 19, 11, 0.98));
    box-shadow: 0 24px 48px rgba(0, 0, 0, 0.28);
}

.gold-map-frame iframe {
    display: block;
    width: 100%;
    min-height: 420px;
    height: 100%;
    border: 0;
}

.gold-faq-item {
    padding: 1rem 1.1rem;
    border-radius: 20px;
    background: rgba(255, 215, 140, 0.05);
    border: 1px solid rgba(201, 162, 39, 0.12);
}

.gold-faq-item summary {
    cursor: pointer;
    color: #f4e1ab;
    font-weight: 700;
    list-style: none;
}

.gold-faq-item summary::-webkit-details-marker {
    display: none;
}

.gold-faq-item p {
    margin: 0.8rem 0 0;
}

.gold-review-card span {
    color: #d6b56e;
    margin: 0.15rem 0 0.35rem;
}

@media (max-width: 1199.98px) {
    .gold-service-grid,
    .gold-proof-grid,
    .gold-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .gold-home {
        padding-top: 6.5rem;
    }

    .gold-hero,
    .gold-content-card,
    .gold-proof-card,
    .gold-service-card,
    .gold-district-card,
    .gold-keyword-card,
    .gold-review-card,
    .gold-blog-card {
        border-radius: 24px;
    }

    .gold-stat-grid,
    .gold-visual-stack,
    .gold-service-grid,
    .gold-proof-grid,
    .gold-district-grid,
    .gold-keyword-grid,
    .gold-gallery-grid,
    .gold-map-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 767.98px) {
    .gold-hero {
        padding: 1.2rem;
    }

    .gold-actions,
    .gold-stat-grid,
    .gold-visual-stack,
    .gold-service-grid,
    .gold-proof-grid,
    .gold-district-grid,
    .gold-keyword-grid,
    .gold-gallery-grid,
    .gold-map-grid {
        grid-template-columns: 1fr;
    }

    .gold-btn {
        width: 100%;
    }

    .gold-title {
        font-size: 2.35rem;
    }

    .gold-visual-card {
        padding: 0.7rem;
    }

    .gold-visual-card img {
        aspect-ratio: 4 / 4.6;
    }

    .gold-gallery-card img {
        aspect-ratio: 4 / 3;
    }

    .gold-map-frame iframe {
        min-height: 320px;
    }
}

/* Performance-first red-white refresh */
body.gp-theme {
    background: linear-gradient(180deg, #ffffff 0%, #fff7f7 100%);
    color: #2f181b;
}

.gp-theme .site-header-shell {
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: none;
    border-bottom: 1px solid rgba(182, 31, 36, 0.08);
    box-shadow: 0 8px 18px rgba(182, 31, 36, 0.08);
}

.gp-theme .brand-logo-mark,
.gp-theme .brand-logo-mark--sembol,
.gp-theme .brand-logo-mark--sembol.brand-logo-mark--footer,
.gp-theme .mobile-logo .brand-logo-mark--sembol.brand-logo-mark--drawer {
    filter: none;
    box-shadow: none;
}

.gp-theme .mobile-logo,
.gp-theme .mobile-nav,
.gp-theme .mobile-quick-menu {
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: none;
    box-shadow: 0 10px 22px rgba(182, 31, 36, 0.08);
}

.gp-theme .mobile-logo {
    border: 1px solid rgba(182, 31, 36, 0.1);
}

.gp-theme .mobile-drawer-services {
    border-bottom-color: rgba(182, 31, 36, 0.12);
}

.gp-theme .mobile-drawer-section-title {
    color: rgba(125, 18, 24, 0.72);
}

.gp-theme .mobile-drawer-service-chip,
.gp-theme .mobile-nav-menu > li > a,
.gp-theme .mobile-dropdown-toggle,
.gp-theme .mobile-dropdown-menu,
.gp-theme .mobile-dropdown-menu a {
    background: #ffffff;
    color: #311a1d;
    border-color: rgba(182, 31, 36, 0.1);
    box-shadow: 0 8px 18px rgba(182, 31, 36, 0.06);
}

.gp-theme .mobile-drawer-service-chip i,
.gp-theme .mobile-nav-menu > li > a i,
.gp-theme .mobile-dropdown-toggle > span i,
.gp-theme .mobile-dropdown-toggle .dropdown-arrow {
    color: #b61f24;
}

.gp-theme .mobile-drawer-service-chip.active,
.gp-theme .mobile-drawer-service-chip:hover,
.gp-theme .mobile-nav-menu > li > a:hover,
.gp-theme .mobile-nav-menu > li > a.active,
.gp-theme .mobile-dropdown-toggle:hover,
.gp-theme .mobile-dropdown.active > .mobile-dropdown-toggle,
.gp-theme .mobile-dropdown-menu a:hover {
    background: #b61f24 !important;
    color: #ffffff !important;
    border-color: #b61f24 !important;
    box-shadow: 0 10px 22px rgba(182, 31, 36, 0.14);
}

.gp-theme .mobile-drawer-service-chip.active i,
.gp-theme .mobile-drawer-service-chip:hover i,
.gp-theme .mobile-nav-menu > li > a:hover i,
.gp-theme .mobile-nav-menu > li > a.active i,
.gp-theme .mobile-dropdown-toggle:hover i,
.gp-theme .mobile-dropdown.active > .mobile-dropdown-toggle i,
.gp-theme .mobile-dropdown-toggle:hover .dropdown-arrow,
.gp-theme .mobile-dropdown.active > .mobile-dropdown-toggle .dropdown-arrow {
    color: #ffffff !important;
}

.gp-theme .hamburger-menu,
.gp-theme .mobile-header-cta.contact-cta--phone,
.gp-theme .contact-cta--phone,
.gp-theme .quick-menu-item,
.gp-theme .nav-menu > li > a {
    background: #ffffff;
    color: #8f161b;
    border-color: rgba(182, 31, 36, 0.12);
    box-shadow: 0 8px 18px rgba(182, 31, 36, 0.06);
}

.gp-theme .hamburger-menu span {
    background: #8f161b;
}

.gp-theme .quick-menu-item.active,
.gp-theme .quick-menu-item:hover,
.gp-theme .nav-menu > li > a.active,
.gp-theme .nav-menu > li > a:hover,
.gp-theme .mobile-header-cta.contact-cta--phone:hover,
.gp-theme .contact-cta--phone:hover,
.gp-theme .hamburger-menu:hover {
    background: #b61f24;
    color: #ffffff;
    border-color: #b61f24;
    box-shadow: 0 10px 20px rgba(182, 31, 36, 0.12);
}

.gp-theme .hamburger-menu:hover span {
    background: #ffffff;
}

.gp-theme .contact-cta--whatsapp,
.gp-theme .gold-btn--whatsapp {
    background: #14866d;
    color: #ffffff;
    box-shadow: 0 10px 20px rgba(20, 134, 109, 0.12);
}

.gold-home {
    padding: 7rem 0 3rem;
    background: linear-gradient(180deg, #fffefe 0%, #fff6f6 100%);
}

.gold-section {
    content-visibility: auto;
    contain-intrinsic-size: 1px 820px;
}

.gold-hero,
.gold-content-card,
.gold-proof-card,
.gold-service-card,
.gold-district-card,
.gold-keyword-card,
.gold-review-card,
.gold-blog-card,
.gold-gallery-card,
.gold-map-frame {
    border: 1px solid rgba(182, 31, 36, 0.1);
    background: #ffffff;
    box-shadow: 0 10px 24px rgba(182, 31, 36, 0.06);
}

.gold-kicker {
    background: #fff1f2;
    border-color: #f2c9cc;
    color: #94171c;
}

.gold-title {
    color: #8f161b;
}

.gold-text,
.gold-section-head p,
.gold-service-card span,
.gold-proof-card p,
.gold-district-card p,
.gold-copy-list li,
.gold-faq-item p,
.gold-review-card p,
.gold-blog-card span,
.gold-gallery-caption span {
    color: #5f4548;
}

.gold-btn {
    transition: transform 0.16s ease, background-color 0.16s ease, color 0.16s ease, border-color 0.16s ease;
}

.gold-btn:hover {
    transform: translateY(-1px);
}

.gold-btn--primary {
    background: #b61f24;
    color: #ffffff;
}

.gold-btn--ghost {
    background: #ffffff;
    color: #94171c;
    border: 1px solid #efc7ca;
}

.gold-trust-list li::before,
.gold-copy-list li::before {
    background: #c72a30;
}

.gold-stat-card,
.gold-visual-chip,
.gold-faq-item {
    background: #fff7f7;
    border: 1px solid #f1d7d9;
}

.gold-stat-card strong,
.gold-visual-chip strong,
.gold-proof-card strong,
.gold-service-card strong,
.gold-district-card h3,
.gold-keyword-card strong,
.gold-content-card h2,
.gold-blog-card strong,
.gold-review-card strong,
.gold-gallery-caption strong,
.gold-faq-item summary {
    color: #2d1a1d;
}

.gold-visual-card {
    background: #fff7f7;
    border: 1px solid #f1d7d9;
    box-shadow: 0 8px 20px rgba(182, 31, 36, 0.05);
}

.gold-visual-card img {
    background: #ffffff;
}

.gold-visual-chip span,
.gold-review-card span,
.gold-district-links a,
.gold-keyword-card span,
.gold-blog-card span {
    color: #a11d22;
}

.gold-section-head h2 {
    color: #821217;
}

.gold-card-media {
    border-color: #f0dcdc;
    background: #fffafa;
}

.gold-service-card:hover,
.gold-keyword-card:hover,
.gold-blog-card:hover,
.gold-district-links a:hover,
.gold-district-card:hover,
.gold-gallery-card:hover {
    border-color: rgba(182, 31, 36, 0.24);
    box-shadow: 0 12px 24px rgba(182, 31, 36, 0.08);
    transform: translateY(-1px);
}

.gold-map-frame iframe {
    background: #ffffff;
}

/* Performance tuned Sembol red-white finish */
.gp-theme {
    --fast-red-50: #fff8f8;
    --fast-red-100: #fff1f2;
    --fast-red-200: #f7d8dc;
    --fast-red-500: #c62828;
    --fast-red-600: #b61f24;
    --fast-red-700: #94171c;
    --fast-ink: #2e1719;
    --fast-muted: #6d5052;
}

.gp-theme .site-header-shell,
.gp-theme .mobile-logo,
.gp-theme .mobile-nav,
.gp-theme .mobile-quick-menu,
.gp-theme .gold-hero,
.gp-theme .gold-content-card,
.gp-theme .gold-proof-card,
.gp-theme .gold-service-card,
.gp-theme .gold-district-card,
.gp-theme .gold-keyword-card,
.gp-theme .gold-review-card,
.gp-theme .gold-blog-card,
.gp-theme .gold-gallery-card,
.gp-theme .gold-map-frame,
.gp-theme .gold-stat-card,
.gp-theme .gold-visual-card,
.gp-theme .gold-visual-chip,
.gp-theme .gold-faq-item {
    background-image: none !important;
    backdrop-filter: none !important;
}

.gp-theme .site-header-shell,
.gp-theme .mobile-logo,
.gp-theme .mobile-nav,
.gp-theme .mobile-quick-menu {
    box-shadow: 0 6px 16px rgba(182, 31, 36, 0.06) !important;
}

.gp-theme .gold-home {
    background: linear-gradient(180deg, #ffffff 0%, var(--fast-red-50) 62%, #ffffff 100%);
}

.gp-theme .gold-hero,
.gp-theme .gold-content-card,
.gp-theme .gold-proof-card,
.gp-theme .gold-service-card,
.gp-theme .gold-district-card,
.gp-theme .gold-keyword-card,
.gp-theme .gold-review-card,
.gp-theme .gold-blog-card,
.gp-theme .gold-gallery-card,
.gp-theme .gold-map-frame {
    box-shadow: 0 8px 18px rgba(182, 31, 36, 0.05) !important;
    border-color: rgba(182, 31, 36, 0.12) !important;
}

.gp-theme .gold-stat-card,
.gp-theme .gold-visual-card,
.gp-theme .gold-visual-chip,
.gp-theme .gold-faq-item {
    box-shadow: none !important;
}

.gp-theme .gold-title,
.gp-theme .gold-section-head h2 {
    color: var(--fast-red-700) !important;
}

.gp-theme .gold-text,
.gp-theme .gold-section-head p,
.gp-theme .gold-service-card span,
.gp-theme .gold-proof-card p,
.gp-theme .gold-district-card p,
.gp-theme .gold-copy-list li,
.gp-theme .gold-faq-item p,
.gp-theme .gold-review-card p,
.gp-theme .gold-blog-card span,
.gp-theme .gold-gallery-caption span {
    color: var(--fast-muted) !important;
}

.gp-theme .gold-proof-card strong,
.gp-theme .gold-service-card strong,
.gp-theme .gold-district-card h3,
.gp-theme .gold-keyword-card strong,
.gp-theme .gold-content-card h2,
.gp-theme .gold-blog-card strong,
.gp-theme .gold-review-card strong,
.gp-theme .gold-gallery-caption strong,
.gp-theme .gold-faq-item summary,
.gp-theme .gold-stat-card strong,
.gp-theme .gold-visual-chip strong {
    color: var(--fast-ink) !important;
}

.gp-theme .gold-kicker,
.gp-theme .gold-stat-card,
.gp-theme .gold-visual-chip,
.gp-theme .gold-faq-item {
    background: var(--fast-red-100) !important;
    border-color: var(--fast-red-200) !important;
}

.gp-theme .gold-btn--primary {
    background: var(--fast-red-600) !important;
    color: #ffffff !important;
}

.gp-theme .gold-btn--primary:hover {
    background: var(--fast-red-700) !important;
}

.gp-theme .gold-btn--ghost {
    background: #ffffff !important;
    color: var(--fast-red-700) !important;
    border-color: var(--fast-red-200) !important;
}

.gp-theme .gold-trust-list li::before,
.gp-theme .gold-copy-list li::before {
    background: var(--fast-red-500) !important;
}

.gp-theme .gold-card-media,
.gp-theme .gold-visual-card img,
.gp-theme .gold-gallery-card img {
    background: #ffffff !important;
    border-color: #f2dddf !important;
}

.gp-theme .gold-district-links a,
.gp-theme .gold-keyword-card span,
.gp-theme .gold-blog-card span,
.gp-theme .gold-review-card span {
    color: var(--fast-red-600) !important;
}

.gp-theme .gold-district-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    margin: 0 0 1rem;
}

.gp-theme .gold-district-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-height: 44px;
    padding: 0.72rem 1rem;
    border-radius: 999px;
    background: #fffaf7;
    border: 1px solid rgba(182, 31, 36, 0.14);
    color: #9a6b12;
    text-decoration: none;
    font-size: 0.92rem;
    font-weight: 800;
    box-shadow: 0 8px 18px rgba(182, 31, 36, 0.04);
    transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
}

.gp-theme .gold-district-pill i {
    color: #b37a12;
    font-size: 0.88rem;
}

.gp-theme .gold-district-pill:hover {
    background: #b61f24;
    color: #ffffff;
    border-color: #b61f24;
    transform: translateY(-1px);
}

.gp-theme .gold-district-pill:hover i {
    color: #ffffff;
}

.gp-theme .gold-district-title-link {
    color: inherit;
    text-decoration: none;
}

.gp-theme .gold-district-title-link:hover {
    color: var(--fast-red-600);
}

.gp-theme .gold-service-card:hover,
.gp-theme .gold-keyword-card:hover,
.gp-theme .gold-blog-card:hover,
.gp-theme .gold-district-card:hover,
.gp-theme .gold-gallery-card:hover,
.gp-theme .gold-district-links a:hover {
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(182, 31, 36, 0.07) !important;
}

.gp-theme .gold-actions,
.gp-theme .gold-service-grid,
.gp-theme .gold-proof-grid,
.gp-theme .gold-district-grid,
.gp-theme .gold-keyword-grid,
.gp-theme .gold-gallery-grid,
.gp-theme .gold-map-grid,
.gp-theme .gold-review-list,
.gp-theme .gold-blog-list,
.gp-theme .gold-faq-list {
    content-visibility: auto;
    contain-intrinsic-size: 1px 560px;
}

@media (max-width: 767.98px) {
    .gp-theme .gold-home {
        padding-top: 6.25rem;
    }

    .gp-theme .gold-hero {
        padding: 1.35rem;
        border-radius: 26px;
    }

    .gp-theme .gold-title {
        font-size: clamp(2rem, 9vw, 3rem);
        line-height: 0.98;
    }

    .gp-theme .gold-btn,
    .gp-theme .mobile-drawer-service-chip,
    .gp-theme .mobile-nav-menu > li > a,
    .gp-theme .mobile-dropdown-toggle {
        box-shadow: none !important;
    }

    .gp-theme .gold-district-pills {
        gap: 0.6rem;
    }

    .gp-theme .gold-district-pill {
        min-height: 42px;
        padding: 0.68rem 0.88rem;
        font-size: 0.85rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    .gp-theme .gold-btn,
    .gp-theme .gold-service-card,
    .gp-theme .gold-keyword-card,
    .gp-theme .gold-blog-card,
    .gp-theme .gold-district-card,
    .gp-theme .gold-gallery-card,
    .gp-theme .mobile-drawer-service-chip,
    .gp-theme .mobile-nav-menu > li > a,
    .gp-theme .mobile-dropdown-toggle {
        transition: none !important;
        transform: none !important;
    }
}

.gp-theme .desktop-brand .header-brand-title,
.gp-theme .mobile-header-brand .header-brand-title,
.gp-theme .mobile-logo .header-brand-title,
.gp-theme .desktop-brand .header-brand-title span,
.gp-theme .mobile-header-brand .header-brand-title span,
.gp-theme .mobile-logo .header-brand-title span {
    color: #9b141f !important;
    text-shadow: none;
}

.gp-theme .desktop-brand .header-brand-city,
.gp-theme .mobile-header-brand .header-brand-city,
.gp-theme .mobile-logo .header-brand-city {
    color: #c78614 !important;
}

.gp-theme .desktop-brand .header-brand-subtitle,
.gp-theme .mobile-header-brand .header-brand-subtitle,
.gp-theme .mobile-logo .header-brand-subtitle,
.gp-theme .desktop-brand .header-brand-subtitle span,
.gp-theme .mobile-header-brand .header-brand-subtitle span,
.gp-theme .mobile-logo .header-brand-subtitle span,
.gp-theme .desktop-brand .header-brand-subtitle strong,
.gp-theme .mobile-header-brand .header-brand-subtitle strong,
.gp-theme .mobile-logo .header-brand-subtitle strong {
    color: rgba(133, 28, 37, 0.78) !important;
}
