/* GloVerify Hero V4.1 - 已隔离 CSS。所有组件样式限定在 .gv-app 内。
 * 不要添加 html、body、.elementor-* 等全局选择器，以免影响其他页面。 */
.gv-app { width: 100%; max-width: 100%; position: relative; isolation: isolate; color: #fff; }
.gv-app .gloverify-hero { width: 100%; max-width: 100%; margin: 0; }
/* ============================================
   GloVerify Hero Section Styles
   For WordPress GeneratePress + Elementor
   ============================================ */

/* Import Font Awesome for icons */

/* ===== ELEMENTOR FULL-WIDTH FIX (AGRESSIVE, ALL LAYOUTS) ===== */
/* Force hero section to be true full width, flush with browser edges and header */

/* Reset all possible Elementor container paddings/margins that cause side gaps */



/* Fallback: when class not applied, the widget itself forces full width */


/* Hero Section Container - Full Width */
.gv-app .gloverify-hero{
    position: relative;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    background: #0A192F;
    color: #fff;
    overflow: hidden;
    /* Top elegant gold separator line */
    border-top: 1px solid transparent;
    box-shadow: 0 1px 0 rgba(201, 169, 97, 0.4) inset;
}

/* Background grid effect */
.gv-app .hero-bg{
    position: relative;
    overflow: hidden;
    padding: 80px 0 60px;
}

.gv-app .hero-bg::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        linear-gradient(rgba(201, 169, 97, 0.03) 1px, transparent 1px),
        linear-gradient(90deg, rgba(201, 169, 97, 0.03) 1px, transparent 1px);
    background-size: 50px 50px;
    z-index: 0;
}

.gv-app .hero-bg::after{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(ellipse at center top, rgba(0, 210, 255, 0.08) 0%, transparent 60%);
    z-index: 0;
}

.gv-app .hero-content{
    position: relative;
    z-index: 10;
    max-width: 1200px;
    margin: 0 auto;
    padding: 50px 24px 0;
}

/* Title Area */
.gv-app .hero-title-area{
    text-align: center;
    margin-bottom: 40px;
}

.gv-app .hero-badge{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 16px;
    border-radius: 999px;
    border: 1px solid rgba(201, 169, 97, 0.2);
    background: rgba(201, 169, 97, 0.05);
    margin-bottom: 24px;
}

.gv-app .hero-badge-dot{
    width: 8px;
    height: 8px;
    background: #10B981;
    border-radius: 50%;
    animation: pulse 2s infinite;
}

@keyframes pulse {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

.gv-app .hero-badge-text{
    color: #C9A961;
    font-size: 14px;
    font-weight: 500;
}

.gv-app .hero-title{
    font-size: clamp(40px, 5vw, 64px);
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 20px;
    letter-spacing: -0.02em;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .gv-app .hero-title{
        white-space: normal;
    }
}

.gv-app .hero-title-gradient{
    background: linear-gradient(135deg, #00D2FF 0%, #C9A961 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.gv-app .hero-subtitle{
    font-size: clamp(16px, 1.5vw, 19px);
    color: rgba(255, 255, 255, 0.6);
    max-width: 700px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Search Container */
.gv-app .search-container-wrapper{
    max-width: 900px;
    margin: 0 auto 24px;
}

.gv-app .search-container{
    background: rgba(17, 34, 64, 0.8);
    border: 1px solid rgba(201, 169, 97, 0.2);
    backdrop-filter: blur(10px);
    border-radius: 4px;
    display: flex;
    align-items: stretch;
    position: relative;
    transition: all 0.3s ease;
}

.gv-app .search-container:focus-within{
    border-color: rgba(0, 210, 255, 0.5);
    box-shadow: 0 0 30px rgba(0, 210, 255, 0.15);
}

.gv-app .search-input-wrapper{
    flex: 1;
    display: flex;
    align-items: center;
    padding: 0 20px;
    background: transparent !important;
}

.gv-app .search-container .search-input-wrapper input, .gv-app .search-container .search-input-wrapper input:focus{
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
    border: none !important;
    outline: none !important;
}

.gv-app .search-icon{
    color: rgba(255, 255, 255, 0.3);
    margin-right: 16px;
    font-size: 16px;
}

.gv-app .search-input{
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    outline: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    caret-color: #ffffff !important;
    width: 100%;
    padding: 20px 0;
    font-size: 16px;
    font-family: inherit;
    opacity: 1 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* Kill browser/Elementor autofill white background - all vendor prefixes */
.gv-app .search-input:-webkit-autofill, .gv-app .search-input:-webkit-autofill:hover, .gv-app .search-input:-webkit-autofill:focus, .gv-app .search-input:-webkit-autofill:active{
    -webkit-text-fill-color: #ffffff !important;
    -webkit-box-shadow: 0 0 0px 1000px rgba(17, 34, 64, 0.8) inset !important;
    box-shadow: 0 0 0px 1000px rgba(17, 34, 64, 0.8) inset !important;
    background-color: rgba(17, 34, 64, 0.8) !important;
    transition: background-color 9999s ease-in-out 0s;
    caret-color: #ffffff !important;
}
.gv-app .search-input:-moz-autofill{
    background-color: rgba(17, 34, 64, 0.8) !important;
    color: #ffffff !important;
}


/* Country Selector */
.gv-app .country-selector{
    background: rgba(10, 25, 47, 0.9);
    border-left: 1px solid rgba(201, 169, 97, 0.2);
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    padding: 0 20px;
    min-width: 220px;
    gap: 10px;
}

.gv-app .country-selector:hover{
    background: rgba(0, 210, 255, 0.1);
}

.gv-app .country-selector-flag{
    font-size: 20px;
}

.gv-app .country-selector-text{
    color: rgba(255, 255, 255, 0.7);
    font-size: 14px;
    flex: 1;
}

.gv-app .country-selector-code{
    color: rgba(255, 255, 255, 0.4);
    font-size: 12px;
    font-weight: 600;
    background: rgba(255, 255, 255, 0.05);
    padding: 2px 6px;
    border-radius: 3px;
}

.gv-app .country-selector-arrow{
    color: rgba(255, 255, 255, 0.4);
    font-size: 10px;
    margin-left: auto;
}

/* Country Dropdown */
.gv-app .dropdown-menu{
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 8px;
    background: #112240;
    border: 1px solid rgba(201, 169, 97, 0.2);
    border-radius: 4px;
    max-height: 350px;
    overflow-y: auto;
    z-index: 100;
    display: none;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
}

.gv-app .dropdown-menu.active{
    display: block;
}

.gv-app .dropdown-search{
    padding: 12px;
    border-bottom: 1px solid rgba(201, 169, 97, 0.1);
    position: sticky;
    top: 0;
    background: #112240;
    z-index: 2;
}

.gv-app .dropdown-search input{
    width: 100%;
    background: rgba(10, 25, 47, 0.8);
    border: 1px solid rgba(201, 169, 97, 0.2);
    border-radius: 4px;
    padding: 10px 14px;
    color: white;
    outline: none;
    font-size: 14px;
    font-family: inherit;
}

.gv-app .dropdown-search input:focus{
    border-color: #00D2FF;
}

.gv-app .dropdown-item{
    padding: 10px 16px;
    cursor: pointer;
    transition: all 0.15s ease;
    display: flex;
    align-items: center;
    gap: 10px;
}

.gv-app .dropdown-item:hover{
    background: rgba(0, 210, 255, 0.1);
    color: #00D2FF;
}

.gv-app .dropdown-item-flag{
    font-size: 18px;
}

.gv-app .dropdown-item-name{
    flex: 1;
    font-size: 14px;
}

.gv-app .dropdown-item-code{
    font-size: 11px;
    color: rgba(255, 255, 255, 0.4);
    font-weight: 600;
    background: rgba(255, 255, 255, 0.05);
    padding: 2px 6px;
    border-radius: 3px;
}

/* Search Button - fixed hover contrast issue */
.gv-app .search-btn{
    background: linear-gradient(135deg, #C9A961 0%, #AB812D 100%);
    color: #fff;
    font-weight: 600;
    font-size: 15px;
    transition: all 0.3s ease;
    padding: 0 32px;
    display: flex;
    align-items: center;
    gap: 8px;
    border: none;
    cursor: pointer;
    font-family: inherit;
}

.gv-app .search-btn:hover{
    background: linear-gradient(135deg, #D4B97A 0%, #C9A961 100%);
    color: #fff;
    box-shadow: 0 0 25px rgba(201, 169, 97, 0.5);
}

/* Hot Picks */
.gv-app .hot-picks-wrapper{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 20px;
    flex-wrap: wrap;
}

.gv-app .hot-picks-label{
    color: rgba(255, 255, 255, 0.4);
    font-size: 14px;
}

.gv-app .hot-pick{
    padding: 6px 14px;
    border: 1px solid rgba(201, 169, 97, 0.3);
    border-radius: 20px;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 6px;
    color: rgba(255, 255, 255, 0.7);
}

.gv-app .hot-pick:hover{
    border-color: #00D2FF;
    background: rgba(0, 210, 255, 0.1);
    color: #00D2FF;
}

.gv-app .hot-pick.active{
    border-color: #00D2FF;
    background: rgba(0, 210, 255, 0.15);
    color: #00D2FF;
}

/* Trust Metrics */
.gv-app .trust-metrics-wrapper{
    max-width: 900px;
    margin: 40px auto 0;
}

.gv-app .gold-line{
    height: 1px;
    background: linear-gradient(90deg, transparent, #C9A961, transparent);
}

.gv-app .trust-metrics{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    padding: 24px 0;
    text-align: center;
}

@media (min-width: 768px) {
    .gv-app .trust-metrics{
        grid-template-columns: repeat(4, 1fr);
    }
}

.gv-app .trust-metric-value{
    font-size: 28px;
    font-weight: 700;
    color: #00D2FF;
    margin-bottom: 4px;
}

.gv-app .trust-metric-label{
    color: rgba(255, 255, 255, 0.5);
    font-size: 14px;
}

/* Loading Overlay */
.gv-app .loading-overlay{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(10, 25, 47, 0.95);
    backdrop-filter: blur(8px);
    z-index: 9999;
    display: none;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.gv-app .loading-overlay.active{
    display: flex;
}

.gv-app .loader-ring{
    width: 80px;
    height: 80px;
    border: 3px solid transparent;
    border-top-color: #00D2FF;
    border-radius: 50%;
    animation: spin 1s linear infinite;
    position: relative;
}

.gv-app .loader-ring::before{
    content: "";
    position: absolute;
    top: 5px;
    left: 5px;
    right: 5px;
    bottom: 5px;
    border: 3px solid transparent;
    border-top-color: #C9A961;
    border-radius: 50%;
    animation: spin 2s linear infinite reverse;
}

.gv-app .loader-ring::after{
    content: "";
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    border: 3px solid transparent;
    border-top-color: #00D2FF;
    border-radius: 50%;
    opacity: 0.5;
    animation: spin 1.5s linear infinite;
}

@keyframes spin {
    to { transform: rotate(360deg); }
}

.gv-app .loading-text{
    margin-top: 30px;
    font-size: 18px;
    color: #fff;
    font-weight: 500;
}

.gv-app .loading-subtext{
    margin-top: 10px;
    font-size: 14px;
    color: rgba(255, 255, 255, 0.6);
}

.gv-app .progress-bar{
    width: 300px;
    height: 2px;
    background: rgba(255, 255, 255, 0.1);
    margin-top: 25px;
    border-radius: 2px;
    overflow: hidden;
}

.gv-app .progress-fill{
    height: 100%;
    background: linear-gradient(90deg, #00D2FF, #C9A961);
    width: 0%;
    animation: progress 2.5s ease-out forwards;
}

@keyframes progress {
    0% { width: 0%; }
    100% { width: 100%; }
}

/* Result Modal */
.gv-app .result-modal{
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(10, 25, 47, 0.9);
    backdrop-filter: blur(8px);
    z-index: 9998;
    display: none;
    align-items: flex-start;
    justify-content: center;
    padding: 2rem 1rem;
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
}

.gv-app .result-modal.active{
    display: flex;
}

.gv-app .result-container{
    background: white;
    border-radius: 16px;
    width: 100%;
    max-width: 900px;
    color: #0A192F;
    margin: auto 0;
    flex-shrink: 0;
    animation: modalSlideUp 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    /* Remove internal scrollbar – outer modal scrolls instead */
    overflow-y: visible;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.5);
}

@keyframes modalSlideUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.gv-app .result-header{
    background: linear-gradient(135deg, #0A192F 0%, #112240 100%);
    color: white;
    padding: 24px 32px;
    border-radius: 16px 16px 0 0;
    position: relative;
    z-index: 5;
}

/* ===== FIXED: Close button X is clearly visible ===== */
.gv-app .result-close{
    position: absolute;
    top: 16px;
    right: 16px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.2);
    border: 2px solid rgba(255, 255, 255, 0.5);
    border-radius: 50%;
    color: #ffffff !important;
    cursor: pointer;
    transition: all 0.2s ease;
    padding: 0;
    z-index: 10;
    overflow: visible;
}

.gv-app .result-close:hover{
    background: rgba(255, 255, 255, 0.35);
    border-color: #ffffff;
    transform: rotate(90deg);
}

.gv-app .result-close svg{
    stroke: #ffffff !important;
    stroke-width: 3 !important;
    width: 20px !important;
    height: 20px !important;
    display: block !important;
    fill: none !important;
    opacity: 1 !important;
    overflow: visible !important;
}
.gv-app .result-close svg path{
    stroke: #ffffff !important;
    stroke-width: 3 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
    opacity: 1 !important;
}

.gv-app .result-status{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px 12px;
    background: rgba(16, 185, 129, 0.2);
    border: 1px solid rgba(16, 185, 129, 0.3);
    border-radius: 999px;
    font-size: 12px;
    color: #10B981;
    margin-bottom: 12px;
}

.gv-app .result-title{
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 8px;
    line-height: 1.3;
}

.gv-app .result-company{
    color: #C9A961;
    font-weight: 600;
}

.gv-app .result-subtitle{
    font-size: 15px;
    color: #CCD6F6;
    opacity: 0.8;
}

/* Not Supported State */
.gv-app .result-not-supported{
    text-align: center;
    padding: 60px 32px;
}

.gv-app .result-not-supported-icon{
    font-size: 64px;
    color: rgba(201, 169, 97, 0.3);
    margin-bottom: 20px;
}

.gv-app .result-not-supported-title{
    font-size: 20px;
    font-weight: 700;
    color: #0A192F;
    margin-bottom: 12px;
}

.gv-app .result-not-supported-desc{
    font-size: 15px;
    color: #64748B;
    max-width: 500px;
    margin: 0 auto 24px;
    line-height: 1.6;
}

.gv-app .result-body{
    padding: 32px;
}

.gv-app .result-section-title{
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #64748B;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}

.gv-app .result-section-title::after{
    content: "";
    flex: 1;
    height: 1px;
    background: #E2E8F0;
}

/* Document Accordion */
.gv-app .doc-accordion{
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 32px;
}

.gv-app .doc-item{
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.2s ease;
}

.gv-app .doc-item:hover{
    border-color: #C9A961;
}

.gv-app .doc-item.open{
    border-color: #C9A961;
    box-shadow: 0 4px 12px rgba(201, 169, 97, 0.1);
}

.gv-app .doc-header{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    cursor: pointer;
    background: #F8FAFC;
    transition: background 0.2s ease;
}

.gv-app .doc-header:hover{
    background: #F1F5F9;
}

.gv-app .doc-header-left{
    display: flex;
    align-items: center;
    gap: 14px;
}

.gv-app .doc-icon{
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(201, 169, 97, 0.12) 0%, rgba(201, 169, 97, 0.05) 100%);
    border-radius: 8px;
    color: #AB812D;
    font-size: 18px;
}

.gv-app .doc-icon.icon-certificate{
    background: linear-gradient(135deg, rgba(0, 210, 255, 0.12) 0%, rgba(0, 210, 255, 0.05) 100%);
    color: #00A8CC;
}

.gv-app .doc-icon.icon-report{
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.12) 0%, rgba(16, 185, 129, 0.05) 100%);
    color: #059669;
}

.gv-app .doc-icon.icon-legal{
    background: linear-gradient(135deg, rgba(139, 92, 246, 0.12) 0%, rgba(139, 92, 246, 0.05) 100%);
    color: #7C3AED;
}

.gv-app .doc-info{
    flex: 1;
}

.gv-app .doc-name{
    font-weight: 600;
    font-size: 15px;
    color: #0A192F;
    margin-bottom: 4px;
}

.gv-app .doc-meta{
    display: flex;
    align-items: center;
    gap: 16px;
    font-size: 12px;
    color: #64748B;
}

.gv-app .doc-meta-item{
    display: flex;
    align-items: center;
    gap: 4px;
}

.gv-app .registry-direct-badge{
    color: #10B981;
    font-weight: 500;
}

.gv-app .doc-chevron{
    width: 20px;
    height: 20px;
    color: #64748B;
    transition: transform 0.2s ease;
}

.gv-app .doc-item.open .doc-chevron{
    transform: rotate(180deg);
    color: #C9A961;
}

.gv-app .doc-content{
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
}

.gv-app .doc-item.open .doc-content{
    max-height: 5000px;
    transition: max-height 0.5s ease;
}

.gv-app .doc-content-inner{
    padding: 20px;
    border-top: 1px solid #E2E8F0;
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 24px;
}

@media (max-width: 768px) {
    .gv-app .doc-content-inner{
        grid-template-columns: 1fr;
    }
}

/* Sample Area - Three Zones */
.gv-app .doc-sample-area{
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    overflow: hidden;
}

/* Zone 1: PDF Preview */
.gv-app .sample-preview-zone{
    background: linear-gradient(135deg, #F8FAFC 0%, #F1F5F9 100%);
    padding: 24px 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    border-bottom: 1px solid #E2E8F0;
}

.gv-app .sample-preview-thumb{
    width: 100px;
    height: 140px;
    background: white;
    border: 1px solid #E2E8F0;
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    position: relative;
}

.gv-app .sample-preview-thumb::before{
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 20px;
    background: linear-gradient(90deg, #C9A961 0%, #D4B97A 100%);
    border-radius: 3px 3px 0 0;
}

.gv-app .sample-preview-thumb i{
    font-size: 36px;
    color: #AB812D;
    margin-top: 16px;
}

.gv-app .sample-preview-title{
    font-size: 13px;
    font-weight: 600;
    color: #0A192F;
    margin-bottom: 4px;
}

.gv-app .sample-preview-desc{
    font-size: 11px;
    color: #64748B;
}

/* No Sample State */
.gv-app .sample-no-preview{
    background: #FFFBF0;
    border: 1px dashed #E6D5A8;
    border-radius: 6px;
    padding: 20px 16px;
    text-align: center;
}

.gv-app .sample-no-preview i{
    font-size: 32px;
    color: rgba(201, 169, 97, 0.4);
    margin-bottom: 8px;
}

.gv-app .sample-no-preview-title{
    font-size: 13px;
    font-weight: 600;
    color: #0A192F;
    margin-bottom: 4px;
}

.gv-app .sample-no-preview-desc{
    font-size: 11px;
    color: #64748B;
    line-height: 1.5;
}

/* Zone 2 & 3: Preview and Download Buttons */
.gv-app .sample-actions{
    display: flex;
    gap: 8px;
    padding: 12px;
    background: white;
}

.gv-app .sample-btn{
    flex: 1;
    padding: 8px 12px;
    font-size: 12px;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
    border: 1px solid;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-family: inherit;
}

.gv-app .sample-btn-preview{
    background: #C9A961;
    color: white;
    border-color: #C9A961;
}

.gv-app .sample-btn-preview:hover:not(:disabled){
    background: #AB812D;
    border-color: #AB812D;
}

.gv-app .sample-btn-download{
    background: white;
    color: #64748B;
    border-color: #E2E8F0;
}

.gv-app .sample-btn-download:hover:not(:disabled){
    background: #F8FAFC;
    color: #0A192F;
}

.gv-app .sample-btn:disabled{
    opacity: 0.5;
    cursor: not-allowed;
}

/* Document Details */
.gv-app .doc-details{
    font-size: 14px;
    line-height: 1.6;
    color: #475569;
}

.gv-app .doc-detail-row{
    margin-bottom: 14px;
}

.gv-app .doc-detail-label{
    font-size: 11px;
    font-weight: 600;
    color: #0A192F;
    margin-bottom: 4px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.gv-app .doc-detail-value{
    color: #475569;
    font-size: 14px;
}

.gv-app .official-name{
    color: #AB812D;
    font-weight: 600;
    font-size: 15px;
}

.gv-app .doc-detail-list{
    list-style: none;
    padding: 0;
    margin: 8px 0 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.gv-app .doc-detail-tag{
    padding: 4px 10px;
    background: #F1F5F9;
    border: 1px solid #E2E8F0;
    border-radius: 4px;
    font-size: 12px;
    color: #475569;
}

.gv-app .doc-detail-badges{
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 4px;
}

.gv-app .doc-detail-badge{
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
}

.gv-app .badge-yes{
    color: #10B981;
}

.gv-app .badge-no{
    color: #94A3B8;
}

.gv-app .badge-icon{
    width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gv-app .doc-notes{
    font-size: 12px;
    color: #64748B;
    font-style: italic;
    margin-top: 4px;
    padding: 8px 12px;
    background: #FEF3C7;
    border-radius: 4px;
    border-left: 3px solid #C9A961;
}

/* Inquiry Form */
.gv-app .inquiry-form{
    background: #F8FAFC;
    border-radius: 12px;
    padding: 24px;
    border: 1px solid #E2E8F0;
}

.gv-app .form-title{
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 8px;
    color: #0A192F;
}

.gv-app .form-subtitle{
    font-size: 14px;
    color: #64748B;
    margin-bottom: 20px;
    line-height: 1.5;
}

.gv-app .form-grid{
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

@media (max-width: 768px) {
    .gv-app .form-grid{
        grid-template-columns: 1fr;
    }
}

.gv-app .form-group{
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.gv-app .form-group.full-width{
    grid-column: 1 / -1;
}

.gv-app .form-label{
    font-size: 13px;
    font-weight: 600;
    color: #0A192F;
}

.gv-app .form-input, .gv-app .form-select, .gv-app .form-textarea{
    padding: 12px 16px;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    font-size: 14px;
    color: #0A192F;
    background: white;
    transition: all 0.2s ease;
    outline: none;
    font-family: inherit;
}

.gv-app .form-input:focus, .gv-app .form-select:focus, .gv-app .form-textarea:focus{
    border-color: #C9A961;
    box-shadow: 0 0 0 3px rgba(201, 169, 97, 0.1);
}

.gv-app .form-input::placeholder{
    color: #94A3B8;
}

.gv-app .form-textarea{
    resize: vertical;
    min-height: 80px;
}

.gv-app .form-submit{
    grid-column: 1 / -1;
    padding: 14px;
    background: linear-gradient(135deg, #C9A961 0%, #AB812D 100%);
    color: white;
    border: none;
    border-radius: 8px;
    font-weight: 600;
    font-size: 15px;
    cursor: pointer;
    transition: all 0.3s ease;
    margin-top: 8px;
    font-family: inherit;
}

.gv-app .form-submit:hover{
    transform: translateY(-1px);
    box-shadow: 0 10px 20px rgba(171, 129, 45, 0.25);
}

.gv-app .form-note{
    font-size: 12px;
    color: #94A3B8;
    text-align: center;
    margin-top: 12px;
    white-space: nowrap;
    grid-column: 1 / -1;
}

@media (max-width: 600px) {
    .gv-app .form-note{
        white-space: normal;
    }
}

/* Contact Options */
.gv-app .contact-options{
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #E2E8F0;
    text-align: center;
}

.gv-app .contact-options-title{
    font-size: 12px;
    color: #64748B;
    margin-bottom: 12px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.gv-app .contact-buttons{
    display: flex;
    gap: 12px;
    justify-content: center;
    flex-wrap: wrap;
}

.gv-app .contact-btn-whatsapp{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: #25D366;
    color: white;
    border-radius: 8px;
    font-weight: 500;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.gv-app .contact-btn-whatsapp:hover{
    background: #128C7E;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
}

.gv-app .contact-btn-email{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: white;
    color: #0A192F;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    font-weight: 500;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.gv-app .contact-btn-email:hover{
    border-color: #00D2FF;
    color: #00D2FF;
    background: rgba(0, 210, 255, 0.05);
}

/* Scrollbar styling */
.gv-app .dropdown-menu::-webkit-scrollbar{
    width: 6px;
}

.gv-app .dropdown-menu::-webkit-scrollbar-track{
    background: #0A192F;
}

.gv-app .dropdown-menu::-webkit-scrollbar-thumb{
    background: rgba(201, 169, 97, 0.3);
    border-radius: 3px;
}

.gv-app .dropdown-menu::-webkit-scrollbar-thumb:hover{
    background: rgba(201, 169, 97, 0.5);
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .gv-app .hero-bg{
        padding: 48px 0 40px;
    }
    
    .gv-app .country-selector{
        min-width: auto;
        padding: 0 12px;
    }
    
    .gv-app .country-selector-text{
        display: none;
    }
    
    .gv-app .search-btn{
        padding: 0 20px;
    }
    
    .gv-app .search-btn-text{
        display: none;
    }
    
    .gv-app .result-header, .gv-app .result-body{
        padding: 20px;
    }
    
    .gv-app .result-container{
        margin-top: 20px;
    }
}
/* V3 新增组件：司法辖区弹窗、运行状态提示。 */
.gv-app .gv-jurisdiction-modal { display:none; position:fixed; inset:0; z-index:999998; background:rgba(4,13,28,.78); backdrop-filter:blur(6px); align-items:center; justify-content:center; padding:20px; }
.gv-app .gv-jurisdiction-modal.active { display:flex; }
.gv-app .gv-jurisdiction-card { position:relative; width:min(560px,100%); background:#fff; color:#0A192F; border-radius:18px; padding:34px; box-shadow:0 25px 80px rgba(0,0,0,.3); }
.gv-app .gv-jurisdiction-close { position:absolute; top:12px; right:16px; border:0; background:transparent; font-size:30px; cursor:pointer; color:#64748b; }
.gv-app .gv-jurisdiction-kicker { color:#ab812d; letter-spacing:.12em; font-size:11px; font-weight:800; margin-bottom:10px; }
.gv-app .gv-jurisdiction-card h2 { color:#0A192F; font-size:25px; margin:0 0 12px; }
.gv-app .gv-jurisdiction-card p { color:#64748b; line-height:1.65; margin-bottom:22px; }
.gv-app .gv-jurisdiction-card label { display:block; font-weight:700; margin-bottom:8px; }
.gv-app .gv-jurisdiction-card select { width:100%; margin-bottom:16px; min-height:46px; }
.gv-app .gv-jurisdiction-confirm { width:100%; border:0; border-radius:999px; padding:14px 20px; background:#0A192F; color:#fff; font-weight:700; cursor:pointer; }
.gv-app .gv-runtime-message { display:none; margin:12px auto 0; max-width:900px; padding:12px 16px; border-radius:8px; background:#fff7e6; color:#6b4e16; font-size:14px; }
.gv-app .gv-runtime-message.active { display:block; }
.gv-app .loading-overlay { z-index:999997; }
.gv-app .result-modal { z-index:999999; }
.gv-app .sample-preview-thumb iframe { width:100%; height:180px; border:0; pointer-events:none; }
.gv-app .gv-cert-badge { display:inline-block; vertical-align:middle; margin-left:8px; padding:3px 7px; border-radius:4px; background:rgba(201,169,97,.14); color:#ab812d; font-size:10px; letter-spacing:.06em; font-weight:800; }
.gv-app .gv-doc-empty { padding:24px; color:#64748b; background:#f8fafc; border-radius:10px; line-height:1.6; }
.gv-app .gv-doc-actions { display:flex; gap:10px; flex-wrap:wrap; margin-top:12px; }
.gv-app .gv-doc-action { display:inline-flex; align-items:center; gap:7px; padding:9px 13px; border:1px solid #dbe3ee; border-radius:7px; color:#0A192F; text-decoration:none; font-size:13px; font-weight:700; }
.gv-app .gv-doc-action:hover { border-color:#00a9d0; color:#007e9e; }
.gv-app .gv-contact-form { margin-top:28px; }
.gv-app .gv-form-success { padding:14px; background:#ecfdf5; color:#065f46; border-radius:8px; }
@media (max-width: 600px) { .gv-app .gv-jurisdiction-card { padding:26px 20px; } }

/* ================================================================
   GloVerify Hero V3.3
   中文说明：
   1. Hero 真正全宽，抵消 GeneratePress/Elementor 常见的内容区留白。
   2. 不修改 html/body/Elementor 全局样式，避免影响页面其它模块。
   3. 搜索结果中的样本预览按 A4 纵横比 210:297 展示。
   ================================================================ */
.gv-app {
    width: calc(100% + 80px) !important;
    max-width: none !important;
    margin-left: -40px !important;
    margin-right: -40px !important;
    /* GeneratePress 默认桌面 Content Padding 约 40px。
       取消负顶部外边距，避免不同浏览器对父级布局计算不同而导致 Hero 贴住页眉。 */
    margin-top: 0 !important;
    margin-bottom: -40px !important;
    box-sizing: border-box;
}

@media (max-width: 768px) {
    .gv-app {
        width: calc(100% + 60px) !important;
        margin-left: -30px !important;
        margin-right: -30px !important;
        /* GeneratePress 默认移动端 Content Padding 约 30px，取消负顶部外边距，统一移动端顶部布局。 */
        margin-top: 0 !important;
        margin-bottom: -30px !important;
    }
}

/* V3.3：运行诊断不再显示在 Hero 底部，避免把数据连接问题误认为页面内容。 */
.gv-app .gv-runtime-message {
    display: none !important;
}

/* V3.3：结果弹窗在打开时提高组件层级，减少被固定页眉遮挡的可能。 */
.gv-app.gv-modal-active {
    position: relative;
    z-index: 2147483000 !important;
}
.gv-app.gv-modal-active .result-modal,
.gv-app.gv-modal-active .gv-jurisdiction-modal,
.gv-app.gv-modal-active .loading-overlay {
    z-index: 2147483001 !important;
}
.gv-app.gv-modal-active .result-modal {
    padding-top: 88px;
    padding-bottom: 32px;
}

/* V3.3：样本左侧区域直接铺满，取消旧版 100×140px 的缩略图限制。 */
.gv-app .doc-sample-area {
    border: 0;
    border-radius: 0;
    overflow: visible;
}
.gv-app .sample-preview-zone {
    background: transparent;
    padding: 0;
    border-bottom: 0;
    align-items: stretch;
    text-align: left;
}
.gv-app .sample-preview-thumb {
    width: 100% !important;
    height: auto !important;
    aspect-ratio: 210 / 297;
    min-height: 0;
    margin: 0 0 14px;
    padding: 0;
    background: #fff;
    border: 1px solid rgba(201, 169, 97, .72);
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 0 0 1px rgba(201, 169, 97, .18),
                0 0 14px rgba(201, 169, 97, .42),
                0 0 28px rgba(201, 169, 97, .16);
    position: relative;
}
.gv-app .sample-preview-thumb::before,
.gv-app .sample-preview-thumb i {
    display: none !important;
}
.gv-app .sample-preview-thumb iframe {
    display: block;
    position: absolute;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
    pointer-events: auto;
    background: #fff;
}
.gv-app .sample-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-start;
}

@media (max-width: 768px) {
    .gv-app .doc-content-inner {
        grid-template-columns: 1fr;
    }
    .gv-app .sample-preview-thumb {
        max-width: 100%;
    }
}

/* V3.3：交付时间明确写出 working day / working days。 */
.gv-app .doc-meta-item {
    white-space: nowrap;
}

/* ================================================================
   V3.3.3 精修：二级司法辖区 / 图标 / PDF 第一页 / Content Includes
   ================================================================ */
.gv-app .gv-jurisdiction-card {
    max-height: min(760px, calc(100vh - 40px));
    overflow: visible;
}
.gv-app .gv-jurisdiction-picker {
    position: relative;
    margin-bottom: 18px;
}
.gv-app .doc-icon.icon-report {
    background: linear-gradient(135deg, rgba(71,85,105,.13), rgba(71,85,105,.05));
    color: #475569;
    border: 1px solid rgba(71,85,105,.14);
}

/* PDF 第一页：由 PDF.js 绘制到 canvas，不调用浏览器自带 PDF viewer。 */
.gv-app .sample-preview-thumb {
    aspect-ratio: 210 / 297;
    background: #fff;
    display: flex;
    align-items: flex-start;
    justify-content: center;
}
.gv-app .sample-preview-thumb canvas.gv-pdf-canvas {
    display: block;
    width: 100% !important;
    height: auto !important;
    max-width: 100%;
}
.gv-app .gv-pdf-loading {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #64748B;
    font-size: 12px;
    background: rgba(255,255,255,.92);
}
.gv-app .sample-preview-thumb:has(canvas.gv-pdf-canvas) { height: auto !important; min-height: 280px; }

/* Content Includes：智能把“字段：说明”转换成标题 + 说明的结构化列表。 */
.gv-app .doc-content-includes { margin-top: 9px; }
.gv-app .doc-content-structured {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.gv-app .doc-content-structured li {
    position: relative;
    padding: 9px 11px 9px 15px;
    border-left: 2px solid #C9A961;
    background: #F8FAFC;
    border-radius: 0 7px 7px 0;
    color: #475569;
    font-size: 13px;
    line-height: 1.55;
}
.gv-app .doc-content-structured li strong {
    display: block;
    margin-bottom: 2px;
    color: #0A192F;
    font-size: 12px;
    font-weight: 800;
}
.gv-app .doc-content-structured li span { display: block; }
.gv-app .doc-content-empty { color: #64748B; font-size: 13px; }

.gv-app .doc-content-structured li.content-section-heading {
    margin-top: 4px;
    padding: 7px 0 3px;
    border-left: 0;
    background: transparent;
    color: #AB812D;
}
.gv-app .doc-content-structured li.content-section-heading strong {
    margin: 0;
    color: #AB812D;
    font-size: 12px;
    letter-spacing: .01em;
    text-transform: none;
}


/* ================================================================
   GloVerify V4.0 - Cross-browser hardening
   目标：
   1) 二级司法辖区使用纯 DIV 自定义下拉，避免 Elementor / theme 的 button
      默认样式在 Chrome / Firefox 中覆盖 Edge 的显示效果。
   2) 证照 / 信息报告图标使用 inline SVG，完全脱离 Font Awesome 图标缓存。
   3) PDF sample 固定为桌面端约 465 × 655px 的 A4 预览区。
   4) Content Includes 由 JSON 的 contentItems 直接呈现，避免浏览器差异。
   ================================================================ */

/* ---------- 二级司法辖区弹窗 ---------- */
.gv-app .gv-jurisdiction-modal {
    box-sizing: border-box !important;
    overflow: auto !important;
    overscroll-behavior: contain !important;
    padding: 20px !important;
}

.gv-app .gv-jurisdiction-card {
    box-sizing: border-box !important;
    width: min(560px, calc(100vw - 40px)) !important;
    max-width: calc(100vw - 40px) !important;
    max-height: calc(100vh - 40px) !important;
    overflow: visible !important;
    isolation: isolate !important;
}

.gv-app .gv-jurisdiction-picker {
    position: relative !important;
    width: 100% !important;
    box-sizing: border-box !important;
    z-index: 20 !important;
}

.gv-app .gv-jurisdiction-flag {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 19px !important;
    line-height: 1 !important;
}

.gv-app .gv-jurisdiction-code {
    padding: 4px 4px !important;
    border-radius: 5px !important;
    background: #F1F5F9 !important;
    color: #475569 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: .05em !important;
    line-height: 1.2 !important;
    text-align: center !important;
}

/* ---------- 官方证照 / 信息报告图标 ---------- */
.gv-app .doc-icon {
    flex: 0 0 40px !important;
    width: 40px !important;
    height: 40px !important;
    box-sizing: border-box !important;
}

.gv-app .doc-icon.icon-certificate {
    background: linear-gradient(135deg, rgba(171,129,45,.18), rgba(201,169,97,.06)) !important;
    color: #AB812D !important;
    border: 1px solid rgba(171,129,45,.35) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.45), 0 4px 12px rgba(171,129,45,.10) !important;
}

.gv-app .doc-icon.icon-report {
    background: linear-gradient(135deg, rgba(10,25,47,.10), rgba(100,116,139,.04)) !important;
    color: #334155 !important;
    border: 1px solid rgba(51,65,85,.20) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.55), 0 4px 12px rgba(15,23,42,.08) !important;
}

.gv-app .gv-official-icon {
    width: 25px !important;
    height: 25px !important;
    display: block !important;
    overflow: visible !important;
}

/* ---------- Sample：统一 A4 第一页预览尺寸 ---------- */
.gv-app .doc-content-inner {
    grid-template-columns: minmax(320px, 465px) minmax(0, 1fr) !important;
    align-items: start !important;
}

.gv-app .doc-sample-area,
.gv-app .sample-preview-zone {
    width: 100% !important;
    max-width: 465px !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.gv-app .sample-preview-thumb {
    position: relative !important;
    width: 465px !important;
    max-width: 100% !important;
    height: 655px !important;
    min-height: 0 !important;
    aspect-ratio: auto !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    display: block !important;
    padding: 0 !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(201,169,97,.72) !important;
    border-radius: 8px !important;
    box-shadow: 0 0 0 1px rgba(255,255,255,.75) inset, 0 0 18px rgba(201,169,97,.16), 0 10px 28px rgba(15,23,42,.10) !important;
}

.gv-app .sample-preview-thumb canvas.gv-pdf-canvas {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: fill !important;
    background: #FFFFFF !important;
}

.gv-app .gv-pdf-loading {
    position: absolute !important;
    inset: 0 !important;
    z-index: 2 !important;
}

@media (max-width: 900px) {
    .gv-app .doc-content-inner {
        grid-template-columns: minmax(0, 1fr) !important;
    }
    .gv-app .doc-sample-area,
    .gv-app .sample-preview-zone {
        max-width: 465px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

@media (max-width: 520px) {
    .gv-app .sample-preview-thumb {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 210 / 297 !important;
    }
}

/* ---------- Content Includes：固定为“信息项 + 信息描述” ---------- */
.gv-app .doc-content-includes {
    width: 100% !important;
    box-sizing: border-box !important;
}

.gv-app .doc-content-structured {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.gv-app .content-info-item {
    width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 10px 12px 10px 15px !important;
    border-left: 2px solid #C9A961 !important;
    border-radius: 0 7px 7px 0 !important;
    background: #F8FAFC !important;
    color: #475569 !important;
    font-size: 13px !important;
    line-height: 1.55 !important;
}

.gv-app .content-info-title {
    margin: 0 0 3px !important;
    padding: 0 !important;
    color: #0A192F !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1.45 !important;
}

.gv-app .content-info-description {
    margin: 0 !important;
    padding: 0 !important;
    color: #475569 !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.55 !important;
}

.gv-app .doc-content-empty {
    color: #64748B !important;
    font-size: 13px !important;
}

/* ---------- No-data 状态 ---------- */
.gv-app .gv-coverage-development {
    margin: 0 0 24px !important;
    padding: 18px 20px !important;
    border: 1px solid #E7D7AE !important;
    border-left: 3px solid #AB812D !important;
    border-radius: 8px !important;
    background: #FFFCF4 !important;
}

.gv-app .gv-coverage-development-title {
    margin-bottom: 6px !important;
    color: #0A192F !important;
    font-size: 15px !important;
    font-weight: 750 !important;
    line-height: 1.5 !important;
}

.gv-app .gv-coverage-development-text {
    color: #64748B !important;
    font-size: 13px !important;
    line-height: 1.65 !important;
}


/* =====================================================================
   GloVerify V4.3.4 — CLEAN FINAL UI LAYER
   ===================================================================== */

/* Stable Hero/header spacing: CSS only, no runtime measurement. */
.gv-app { position: relative !important; box-sizing: border-box !important; margin-top: 0 !important; }
.gv-app .gloverify-hero, .gv-app .hero-bg { margin-top: 0 !important; }

/* Native jurisdiction picker: V4.3.0 proven interaction model. */
.gv-app .gv-jurisdiction-picker { position: relative !important; margin-bottom: 18px !important; }
.gv-app .search-input-wrapper { position:relative !important; }
.gv-app .search-input-wrapper { position:relative !important; }
/* Content Includes: plain bullet list. */
.gv-app .doc-content-structured { display:block !important; width:100% !important; margin:0 !important; padding:0 !important; }
.gv-app .content-info-intro { display:block !important; margin:0 0 9px !important; padding:0 !important; color:#52627A !important; font-size:14px !important; font-weight:400 !important; line-height:1.65 !important; }
.gv-app ul.content-info-list { display:block !important; width:100% !important; margin:0 !important; padding:0 0 0 20px !important; list-style:disc outside !important; }
.gv-app ul.content-info-list > li.content-info-item { display:list-item !important; width:auto !important; margin:0 !important; padding:0 0 7px 2px !important; border:0 !important; border-radius:0 !important; background:transparent !important; box-shadow:none !important; color:#52627A !important; font-size:14px !important; font-weight:400 !important; line-height:1.6 !important; }
.gv-app ul.content-info-list > li.content-info-item::before { display:none !important; content:none !important; }
.gv-app ul.content-info-list .content-info-title { display:inline !important; margin:0 !important; padding:0 !important; color:#0A192F !important; font-size:14px !important; font-weight:700 !important; line-height:inherit !important; }
.gv-app ul.content-info-list .content-info-description { display:inline !important; margin:0 !important; padding:0 !important; color:#52627A !important; font-size:14px !important; font-weight:400 !important; line-height:inherit !important; }

/* Official icons: pure SVG, transparent, bright-gold certificate. */
.gv-app .doc-icon, .gv-app .doc-icon.icon-certificate, .gv-app .doc-icon.icon-report { display:inline-flex !important; align-items:center !important; justify-content:center !important; width:40px !important; height:40px !important; padding:0 !important; margin:0 !important; background:transparent !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; }
.gv-app .gv-official-icon { width:31px !important; height:31px !important; display:block !important; overflow:visible !important; }
.gv-app .doc-icon.icon-certificate, .gv-app .gv-official-icon-certificate { color:#F2C14E !important; }
.gv-app .gv-official-icon-certificate { filter:drop-shadow(0 0 2px rgba(255,239,166,.95)) drop-shadow(0 0 6px rgba(242,193,78,.34)) !important; }
.gv-app .doc-icon.icon-report, .gv-app .gv-official-icon-report { color:#53657A !important; filter:none !important; }

/* PDF sample: fixed A4 ratio. */
.gv-app .doc-content-inner { grid-template-columns:minmax(300px,380px) minmax(0,1fr) !important; align-items:start !important; }
.gv-app .doc-sample-area, .gv-app .sample-preview-zone { width:100% !important; max-width:380px !important; min-width:0 !important; box-sizing:border-box !important; }
.gv-app .sample-preview-thumb { position:relative !important; width:100% !important; max-width:380px !important; height:auto !important; aspect-ratio:210/297 !important; min-height:0 !important; box-sizing:border-box !important; overflow:hidden !important; display:block !important; padding:0 !important; background:#FFFFFF !important; }
.gv-app .sample-preview-thumb canvas.gv-pdf-canvas { display:block !important; width:100% !important; height:auto !important; max-width:100% !important; margin:0 !important; padding:0 !important; background:#FFFFFF !important; }
@media (max-width:900px) { .gv-app .doc-content-inner { grid-template-columns:1fr !important; } .gv-app .doc-sample-area, .gv-app .sample-preview-zone { max-width:380px !important; margin-left:auto !important; margin-right:auto !important; } }
@media (max-width:520px) { .gv-app .sample-preview-thumb { max-width:100% !important; aspect-ratio:210/297 !important; } }



/* V4.3.5 FINAL — one native jurisdiction control + stable visual search hint. */
.gv-app .gv-jurisdiction-picker { position:relative !important; width:100% !important; margin:0 0 18px !important; box-sizing:border-box !important; }
.gv-app .gv-jurisdiction-native-select {
    display:block !important; width:100% !important; height:54px !important; min-height:54px !important; box-sizing:border-box !important;
    margin:0 !important; padding:0 46px 0 16px !important; border:1px solid #CBD5E1 !important; border-radius:10px !important;
    outline:0 !important; background:#FFFFFF !important; color:#0A192F !important; font:inherit !important; font-weight:600 !important;
    line-height:normal !important; cursor:pointer !important; appearance:auto !important; -webkit-appearance:auto !important;
    box-shadow:0 2px 8px rgba(15,23,42,.04) !important;
}
.gv-app .gv-jurisdiction-native-select:hover { border-color:#B8C4D4 !important; }
.gv-app .gv-jurisdiction-native-select:focus { border-color:#C9A961 !important; box-shadow:0 0 0 3px rgba(201,169,97,.12) !important; }
.gv-app .search-input-wrapper { position:relative !important; }
.gv-app .search-placeholder-hint {
    position:absolute !important;
    left:52px !important;
    right:12px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:1 !important;
    display:block !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    pointer-events:none !important;
    color:rgba(255,255,255,.24) !important;
    font-size:15px !important;
    font-weight:400 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    word-break:normal !important;
    overflow-wrap:normal !important;
    letter-spacing:0 !important;
    transition:opacity .15s ease !important;
}
.gv-app .search-placeholder-hint.is-hidden { opacity:0 !important; }



/* =========================================================
   GLOBAL — Prevent horizontal scrollbar on the entire page
   (This is safe for index.css because it only targets the homepage)
   ========================================================= */

html,
body {
  overflow-x: hidden;
}



/* =========================================================
   GLOBAL — remove horizontal overflow the CORRECT way.
   'clip' does NOT turn <body> into a scroll container, unlike
   'hidden' (which forces overflow-y:auto and can leave a strip
   of space at the very bottom of the page).
   ========================================================= */

html {
  overflow-x: clip;
}

@supports not (overflow: clip) {
  html {
    overflow-x: hidden;
  }
}


/* =========================================================
   GLOBAL — 横向防溢出的正确写法。
   'clip' 与 'hidden' 的裁剪效果一样，但 'clip' 不会把 <body>
   变成滚动容器（'hidden' 会强制 overflow-y:auto，可能在页面
   最底部留下一截多余空间）。
   ========================================================= */

html {
  overflow-x: clip;
}

@supports not (overflow: clip) {
  html {
    overflow-x: hidden;
  }
}



/* =========================================================
   SHARED LAYOUT FIX —— 同时作用于 SECTION 03 / SECTION 04
   （第四部分的 CSS 里也有同一段，是为了让两段代码各自独立、
     无论你先粘贴哪一段修复都立即生效，重复出现无副作用。）
   ========================================================= */

/* (1) 干掉容器自带的 flex gap —— 这就是两个板块之间那道缝。
       只用 :has() 锁定「包含本板块」的容器，不波及其他位置。 */
.e-con-inner:has(.gv-about-section),
.e-con-inner:has(.gv-services-section) {
  row-gap: 0 !important;
  column-gap: 0 !important;
  gap: 0 !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* (2) 把 widget 及其内层容器钉成容器宽度：
       既不被 100vw 撑大（保证 left:calc(-50vw + 50%) 精确对齐），
       也不留任何下边距 / 下内边距（保证底部无缝）。 */
.elementor-widget-html:has(.gv-about-section),
.elementor-widget-html:has(.gv-services-section),
.elementor-widget-html:has(.gv-about-section) > .elementor-widget-container,
.elementor-widget-html:has(.gv-services-section) > .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}


/* =========================================================
   SECTION 03 — WHAT IS GLOVERIFY?
   全宽突破（WordPress / GeneratePress / Elementor）
   用 left: calc(-50vw + 50%) 而不是 transform，
   避免产生额外层叠上下文与横向滚动条问题。
   ========================================================= */

html {
  overflow-x: clip;
}
@supports not (overflow: clip) {
  html { overflow-x: hidden; }
}


/* =========================================================
   SHARED LAYOUT FIX — 参考 Hero .gv-app 同款负 margin 方案
   同时解决三件事：
   1) 左右满宽：把 widget 钉回 100%，不被 100vw 子元素撑大，
      保证 left:calc(-50vw + 50%) 参照系正确。
   2) 板块之间 20px gap：给非最后一个板块加 margin-bottom:-20px，
      把下方 widget 拉上来，两板块背景色相同，重叠处无缝。
   3) 与页脚之间 40px padding：给最后一个板块加 margin-bottom:-40px，
      与 Hero 的 margin-bottom:-40px 对称，吃掉容器底部 padding。
   ========================================================= */

/* widget 本体：宽度钉死，清除所有可能的边距/内边距 */
.elementor-widget-html:has(.gv-about-section),
.elementor-widget-html:has(.gv-services-section),
.elementor-widget-html:has(.gv-about-section) > .elementor-widget-container,
.elementor-widget-html:has(.gv-services-section) > .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-top: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
}

/* S3 不是最后一个板块：向下伸出 20px，吃掉 flex gap */
.elementor-widget-html:has(.gv-about-section) {
  margin-bottom: -20px !important;
}

/* S4 目前是最后一个板块（直接接页脚）：向下伸出 40px，
   吃掉 .site-content 的 padding-bottom:40px */
.elementor-widget-html:has(.gv-services-section) {
  margin-bottom: -40px !important;
}

/* 外层容器：清除可能的额外间距 */
.e-con:has(.gv-about-section),
.e-con:has(.gv-services-section),
.e-con-inner:has(.gv-about-section),
.e-con-inner:has(.gv-services-section) {
  row-gap: 0 !important;
  column-gap: 0 !important;
  gap: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* =========================================================
   SECTION 03 — WHAT IS GLOVERIFY?
   全宽突破（WordPress / GeneratePress / Elementor）
   用 left: calc(-50vw + 50%) 实现视口满宽；垂直方向参考 Hero
   采用负 margin 吞噬相邻间距（详见 SHARED LAYOUT FIX 注释）。
   ========================================================= */

.gv-about-section {
  position: relative;

  width: 100vw;
  max-width: none;

  /* 从 Elementor 盒式容器里「破框」出来：把 100vw 的元素
     精确居中到视口上，不使用 transform。 */
  left: calc(-50vw + 50%);

  margin: 0 !important;
  padding: 0 !important;

  background: #0A192F;

  color: #FFFFFF;

  box-sizing: border-box;

  /* 兜住内部光晕 / 轨道环的溢出，避免渗到相邻板块；
     同时不影响自身满宽铺满。 */
  overflow: hidden;

  /* 消除底边的亚像素渲染缝。 */
  display: block;
}


/* =========================================================
   Container
   ========================================================= */

.gv-about-container {
  width: 100%;
  max-width: 1240px;

  margin: 0 auto;

  padding: 72px 40px 72px;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 55px;

  box-sizing: border-box;
}


/* =========================================================
   Left Content
   ========================================================= */

.gv-about-content {
  flex: 1 1 0;

  min-width: 0;

  max-width: 650px;
}


/* =========================================================
   Eyebrow
   ========================================================= */

.gv-about-eyebrow {
  display: flex;
  align-items: center;

  gap: 12px;

  margin-bottom: 20px;

  font-size: 13px;
  font-weight: 600;

  letter-spacing: 2.2px;
  line-height: 1.4;

  color: #AB812D;

  text-transform: uppercase;
}


.gv-about-eyebrow-line {
  width: 34px;
  height: 1px;

  flex: 0 0 34px;

  background: #AB812D;
}


/* =========================================================
   Main Title
   强制桌面端两行
   ========================================================= */

.gv-about-title {
  margin: 0 0 27px;

  font-size: clamp(38px, 4vw, 58px);

  font-weight: 600;

  line-height: 1.12;

  letter-spacing: -1.5px;

  color: #FFFFFF;
}


.gv-about-title > span {
  display: block;

  white-space: nowrap;
}


.gv-about-title > span:last-child {
  color: #AB812D;
}


/* =========================================================
   Description
   ========================================================= */

.gv-about-text {
  max-width: 620px;

  margin: 0 0 20px;

  font-size: 17px;
  font-weight: 400;

  line-height: 1.8;

  color: rgba(255, 255, 255, 0.72);
}


.gv-about-text-last {
  margin-bottom: 0;
}


/* =========================================================
   CTA
   ========================================================= */

.gv-about-cta {
  display: inline-flex;
  align-items: center;

  gap: 8px;

  margin-left: 8px;

  color: #00D9FF;

  font-size: 15px;
  font-weight: 600;

  line-height: 1.4;

  text-decoration: none;

  white-space: nowrap;

  transition:
    color 0.25s ease,
    gap 0.25s ease;
}


.gv-about-cta:hover {
  color: #5CEBFF;

  gap: 11px;
}


.gv-about-cta-arrow {
  font-size: 18px;
  line-height: 1;
}


/* =========================================================
   Globe Area
   缩小后的尺寸
   ========================================================= */

.gv-about-visual {
  position: relative;

  flex: 0 0 450px;

  width: 450px;
  height: 450px;

  display: flex;
  align-items: center;
  justify-content: center;

  box-sizing: border-box;

  /* 防止 SVG 滤镜发光区外溢导致意外的横向溢出。 */
  overflow: hidden;
}


.gv-about-glow {
  position: absolute;

  width: 350px;
  height: 350px;

  left: 50%;
  top: 50%;

  transform: translate(-50%, -50%);

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(0, 217, 255, 0.10) 0%,
      rgba(0, 217, 255, 0.04) 38%,
      rgba(0, 217, 255, 0) 72%
    );

  filter: blur(9px);

  pointer-events: none;
}


.gv-about-globe {
  position: relative;

  width: 450px;
  height: 450px;

  display: flex;
  align-items: center;
  justify-content: center;
}


.gv-about-globe-svg {
  width: 100%;
  height: 100%;

  display: block;

  /* 用 hidden 而非 visible，避免滤镜发光区在右边缘产生幻影溢出。 */
  overflow: hidden;
}


/* =========================================================
   Globe Lines
   ========================================================= */

.gv-globe-outline {
  fill: none;

  stroke: rgba(0, 217, 255, 0.62);

  stroke-width: 1.7;

  filter: url(#gv-cyan-glow);
}


.gv-globe-grid {
  fill: none;

  stroke: rgba(0, 217, 255, 0.095);

  stroke-width: 1;
}


.gv-globe-network {
  fill: none;

  stroke: rgba(0, 217, 255, 0.42);

  stroke-width: 1.45;

  stroke-linecap: round;
  stroke-linejoin: round;
}


/* =========================================================
   Data Routes
   ========================================================= */

.gv-globe-data-routes {
  fill: none;

  stroke: #00D9FF;

  stroke-width: 2;

  stroke-linecap: round;

  filter: url(#gv-cyan-glow);
}


.gv-data-route {
  stroke-dasharray: 90 260;

  animation:
    gvDataRoute 5s linear infinite;
}


.gv-data-route-2 {
  animation-delay: -1.8s;
}


.gv-data-route-3 {
  animation-delay: -3.2s;
}


@keyframes gvDataRoute {

  0% {
    stroke-dashoffset: 350;
    opacity: 0.1;
  }

  15% {
    opacity: 1;
  }

  65% {
    opacity: 0.95;
  }

  100% {
    stroke-dashoffset: 0;
    opacity: 0.1;
  }

}


/* =========================================================
   Nodes
   ========================================================= */

.gv-node {
  fill: rgba(0, 217, 255, 0.9);

  filter: url(#gv-node-glow);
}


.gv-node-core {
  fill: #5CEBFF;
}


.gv-node-pulse {
  transform-box: fill-box;

  transform-origin: center;

  animation:
    gvNodePulse 2.8s ease-in-out infinite;
}


@keyframes gvNodePulse {

  0%,
  100% {
    opacity: 0.45;

    transform: scale(0.85);
  }

  50% {
    opacity: 1;

    transform: scale(1.12);
  }

}


.gv-node-main {
  fill: rgba(171, 129, 45, 0.22);

  stroke: #AB812D;

  stroke-width: 1;

  filter: url(#gv-node-glow);
}


.gv-node-main .gv-node-core {
  fill: #FFE5A1;
}


/* =========================================================
   Scan Ring
   ========================================================= */

.gv-globe-scan-ring {
  fill: none;

  stroke: rgba(0, 217, 255, 0.30);

  stroke-width: 1.5;

  stroke-dasharray: 30 220;

  transform-box: fill-box;

  transform-origin: center;

  animation:
    gvGlobeScanRing 7s linear infinite;

  filter: url(#gv-cyan-glow);
}


@keyframes gvGlobeScanRing {

  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }

}


/* =========================================================
   Scan Line
   ========================================================= */

.gv-globe-scan-line {
  stroke: url(#gv-route-gradient);

  stroke-width: 2;

  opacity: 0.8;

  filter: url(#gv-cyan-glow);

  animation:
    gvGlobeScanLine 4.5s ease-in-out infinite;
}


@keyframes gvGlobeScanLine {

  0% {
    transform: translateY(-210px);

    opacity: 0;
  }

  15% {
    opacity: 0.8;
  }

  50% {
    opacity: 1;
  }

  85% {
    opacity: 0.8;
  }

  100% {
    transform: translateY(210px);

    opacity: 0;
  }

}


/* =========================================================
   Central Ring
   ========================================================= */

.gv-globe-center-ring {
  fill: none;

  stroke: rgba(171, 129, 45, 0.78);

  stroke-width: 1.4;

  stroke-dasharray: 12 8;

  animation:
    gvCenterRing 8s linear infinite;
}


@keyframes gvCenterRing {

  from {
    transform: rotate(0deg);
    transform-origin: 350px 350px;
  }

  to {
    transform: rotate(360deg);
    transform-origin: 350px 350px;
  }

}


/* =========================================================
   Orbit
   ========================================================= */

.gv-globe-orbit {
  position: absolute;

  left: 50%;
  top: 50%;

  width: 350px;
  height: 130px;

  border: 1px solid rgba(0, 217, 255, 0.16);

  border-radius: 50%;

  pointer-events: none;
}


.gv-globe-orbit-1 {
  transform:
    translate(-50%, -50%)
    rotate(25deg);

  animation:
    gvOrbitOne 12s linear infinite;
}


.gv-globe-orbit-2 {
  transform:
    translate(-50%, -50%)
    rotate(-35deg);

  border-color: rgba(171, 129, 45, 0.16);

  animation:
    gvOrbitTwo 15s linear infinite reverse;
}


@keyframes gvOrbitOne {

  from {
    transform:
      translate(-50%, -50%)
      rotate(25deg);
  }

  to {
    transform:
      translate(-50%, -50%)
      rotate(385deg);
  }

}


@keyframes gvOrbitTwo {

  from {
    transform:
      translate(-50%, -50%)
      rotate(-35deg);
  }

  to {
    transform:
      translate(-50%, -50%)
      rotate(-395deg);
  }

}


/* =========================================================
   Responsive
   ========================================================= */

@media (max-width: 1000px) {

  .gv-about-container {
    padding: 60px 30px;

    gap: 35px;
  }


  .gv-about-visual {
    flex: 0 0 380px;

    width: 380px;
    height: 380px;
  }


  .gv-about-globe {
    width: 380px;
    height: 380px;
  }


  .gv-globe-orbit {
    width: 295px;
    height: 110px;
  }

}


@media (max-width: 820px) {

  .gv-about-container {
    flex-direction: column;

    align-items: center;

    text-align: left;
  }


  .gv-about-content {
    width: 100%;

    max-width: 680px;
  }


  .gv-about-visual {
    flex: 0 0 auto;

    width: 390px;
    height: 390px;
  }


  .gv-about-globe {
    width: 390px;
    height: 390px;
  }

}


@media (max-width: 767px) {

  .gv-about-container {
    padding: 48px 22px 55px;

    gap: 30px;
  }


  .gv-about-title {
    font-size: clamp(34px, 9vw, 44px);

    letter-spacing: -1px;
  }


  .gv-about-title > span {
    white-space: normal;
  }


  .gv-about-text {
    font-size: 16px;

    line-height: 1.75;
  }


  .gv-about-cta {
    margin-left: 0;

    margin-top: 8px;
  }


  .gv-about-visual {
    width: min(100%, 360px);

    height: min(100vw, 360px);
  }


  .gv-about-globe {
    width: 100%;
    height: 100%;
  }


  .gv-globe-orbit {
    width: 78%;
    height: 29%;
  }

}


@media (prefers-reduced-motion: reduce) {

  .gv-data-route,
  .gv-node-pulse,
  .gv-globe-scan-ring,
  .gv-globe-scan-line,
  .gv-globe-center-ring,
  .gv-globe-orbit-1,
  .gv-globe-orbit-2 {
    animation: none !important;
  }

}




/* =========================================================
   SECTION 04 — WHAT YOU CAN GET
   全宽突破（WordPress / GeneratePress / Elementor）
   用 left: calc(-50vw + 50%) 而不是 transform，
   避免产生额外层叠上下文与横向滚动条问题。
   ========================================================= */


html {
  overflow-x: clip;
}
@supports not (overflow: clip) {
  html { overflow-x: hidden; }
}


/* =========================================================
   SHARED LAYOUT FIX — 参考 Hero .gv-app 同款负 margin 方案
   1) 左右满宽：把 widget 钉回 100%，保证 left:calc(-50vw+50%) 精确。
   2) S3 底部 -20px：吃掉 Elementor flex gap:20px，两板块无白缝。
   3) S4 底部 -40px：吃掉 .site-content padding-bottom:40px，与页脚无缝。
   ========================================================= */
.elementor-widget-html:has(.gv-about-section),
.elementor-widget-html:has(.gv-services-section),
.elementor-widget-html:has(.gv-about-section) > .elementor-widget-container,
.elementor-widget-html:has(.gv-services-section) > .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-top: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
}
.elementor-widget-html:has(.gv-about-section) {
  margin-bottom: -20px !important;
}
.elementor-widget-html:has(.gv-services-section) {
  margin-bottom: -40px !important;
}
.e-con:has(.gv-about-section),
.e-con:has(.gv-services-section),
.e-con-inner:has(.gv-about-section),
.e-con-inner:has(.gv-services-section) {
  row-gap: 0 !important;
  column-gap: 0 !important;
  gap: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}


/* ---------------------------------------------------------
   全宽（背景色 #0A192F 与第三部分完全一致 → 天然无缝）
   --------------------------------------------------------- */
.gv-services-section {
  position: relative;

  width: 100vw;
  max-width: none;

  left: calc(-50vw + 50%);

  margin: 0 !important;
  padding: 0 !important;

  background: #0A192F;
  color: #FFFFFF;

  box-sizing: border-box;

  overflow: hidden;

  display: block;
}

/* 章节识别用的极细金→青分割线（1px，不构成任何"空隙"） */
.gv-services-section::before {
  content: "";

  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);

  width: min(1240px, calc(100% - 80px));
  height: 1px;

  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(171, 129, 45, 0.30) 25%,
    rgba(0, 217, 255, 0.22) 75%,
    transparent 100%
  );

  pointer-events: none;
}


/* ---------------------------------------------------------
   Container
   --------------------------------------------------------- */
.gv-services-container {
  width: 100%;
  max-width: 1240px;

  margin: 0 auto;

  padding: 0 40px 84px;

  box-sizing: border-box;
}


/* ---------------------------------------------------------
   Header（标题 + 静态数据立方体）
   --------------------------------------------------------- */
.gv-services-header {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 54px;

  margin: 52px 0 62px;
}

.gv-services-header-text {
  flex: 1 1 0;
  min-width: 0;

  max-width: 700px;
}


/* Eyebrow */
.gv-services-eyebrow {
  display: flex;
  align-items: center;

  gap: 12px;

  margin-bottom: 20px;

  font-size: 13px;
  font-weight: 600;

  letter-spacing: 2.2px;
  line-height: 1.4;

  color: #AB812D;

  text-transform: uppercase;
}

.gv-services-eyebrow-line {
  width: 34px;
  height: 1px;

  flex: 0 0 34px;

  background: #AB812D;
}


/* Title */
.gv-services-title {
  margin: 0 0 24px;

  font-size: clamp(34px, 3.6vw, 52px);
  font-weight: 600;

  line-height: 1.15;
  letter-spacing: -1.3px;

  color: #FFFFFF;
}

.gv-services-title span {
  color: #AB812D;
}


/* Description */
.gv-services-desc {
  max-width: 660px;

  margin: 0;

  font-size: 17px;
  font-weight: 400;

  line-height: 1.8;

  color: rgba(255, 255, 255, 0.70);
}


/* ---------------------------------------------------------
   Static Data Cube（静态 · 无滤镜 · 细线）
   --------------------------------------------------------- */
.gv-services-visual {
  position: relative;

  flex: 0 0 300px;
  width: 300px;
  height: 300px;

  display: flex;
  align-items: center;
  justify-content: center;

  box-sizing: border-box;

  overflow: hidden;
}

.gv-services-cube-svg {
  width: 100%;
  height: 100%;

  display: block;

  overflow: hidden;
}


/* 四角取景框 */
.gv-cube-frame,
.gv-cube-frame path {
  fill: none;

  stroke: rgba(0, 217, 255, 0.26);
  stroke-width: 1;

  stroke-linecap: square;

  vector-effect: non-scaling-stroke;
}


/* 面：极淡填充，无描边 */
.gv-cube-face {
  stroke: none;
}


/* 轮廓：青→金渐变，最亮的一圈线 */
.gv-cube-outline {
  fill: none;

  stroke: url(#gvCubeStroke);
  stroke-width: 1.3;

  stroke-linejoin: round;

  vector-effect: non-scaling-stroke;
}


/* 可见棱线 */
.gv-cube-edge,
.gv-cube-edge line {
  stroke: rgba(0, 217, 255, 0.52);
  stroke-width: 1;

  stroke-linecap: round;

  vector-effect: non-scaling-stroke;
}


/* 面内细网格 / 细纹 */
.gv-cube-hair,
.gv-cube-hair line {
  stroke: rgba(92, 235, 255, 0.17);
  stroke-width: 1;

  stroke-linecap: round;

  vector-effect: non-scaling-stroke;
}


/* 右面数据柱（金→浅金渐变） */
.gv-cube-bars,
.gv-cube-bars line {
  stroke: url(#gvCubeBar);
  stroke-width: 2.6;

  stroke-linecap: round;

  vector-effect: non-scaling-stroke;
}


/* 顶点 */
.gv-dot-c {
  fill: #5CEBFF;
}

.gv-dot-g {
  fill: #FFE5A1;
}


/* ---------------------------------------------------------
   Services Grid（2 × 2）
   --------------------------------------------------------- */
.gv-services-grid {
  display: grid;

  grid-template-columns: repeat(2, minmax(0, 1fr));

  gap: 24px;
}


/* ---------------------------------------------------------
   Service Card
   --------------------------------------------------------- */
.gv-service-card {
  position: relative;

  display: flex;
  flex-direction: column;

  padding: 36px 34px 30px;

  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(0, 217, 255, 0.12);
  border-radius: 3px;

  box-sizing: border-box;

  overflow: hidden;

  transition:
    transform 0.35s ease,
    border-color 0.35s ease,
    background-color 0.35s ease,
    box-shadow 0.35s ease;
}

/* 顶部金边→青边进度条（hover 展开） */
.gv-service-card::before {
  content: "";

  position: absolute;
  top: 0;
  left: 0;

  width: 0;
  height: 2px;

  background: linear-gradient(90deg, #AB812D, #00D9FF);

  transition: width 0.4s ease;
}

/* 右上角斜切高光 */
.gv-service-card::after {
  content: "";

  position: absolute;
  top: 0;
  right: 0;

  width: 90px;
  height: 90px;

  background: linear-gradient(
    135deg,
    rgba(0, 217, 255, 0.08) 0%,
    transparent 70%
  );

  opacity: 0;

  transition: opacity 0.35s ease;

  pointer-events: none;
}

.gv-service-card:hover {
  border-color: rgba(0, 217, 255, 0.30);
  background: rgba(0, 217, 255, 0.035);

  transform: translateY(-3px);

  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.25);
}

.gv-service-card:hover::before {
  width: 100%;
}

.gv-service-card:hover::after {
  opacity: 1;
}


/* Card Head：图标 + 编号 */
.gv-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;

  gap: 20px;

  margin-bottom: 22px;
}


/* 图标底板 */
.gv-card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 76px;
  height: 76px;

  flex: 0 0 76px;

  border: 1px solid rgba(0, 217, 255, 0.18);
  border-radius: 4px;

  background: linear-gradient(
    140deg,
    rgba(0, 217, 255, 0.075) 0%,
    rgba(0, 217, 255, 0.012) 100%
  );

  color: #00D9FF;

  box-sizing: border-box;

  transition:
    border-color 0.35s ease,
    color 0.35s ease,
    background-color 0.35s ease;
}

.gv-card-icon svg {
  width: 44px;
  height: 44px;

  display: block;

  overflow: visible;
}

.gv-service-card:hover .gv-card-icon {
  border-color: rgba(0, 217, 255, 0.44);

  color: #5CEBFF;
}


/* 编号 */
.gv-card-num {
  display: flex;
  align-items: center;

  gap: 10px;

  padding-top: 5px;

  font-family: "SF Mono", Consolas, "Courier New", monospace;
  font-size: 12.5px;
  font-weight: 500;

  letter-spacing: 2px;

  color: #AB812D;

  white-space: nowrap;
}

.gv-card-num::before {
  content: "";

  display: inline-block;
  width: 18px;
  height: 1px;

  flex: 0 0 18px;

  background: #AB812D;
}


/* Card Title */
.gv-card-title {
  margin: 0 0 8px;

  font-size: 20.5px;
  font-weight: 600;

  line-height: 1.3;
  letter-spacing: -0.3px;

  color: #FFFFFF;
}


/* Tagline */
.gv-card-tagline {
  margin: 0 0 16px;

  font-size: 14.5px;
  font-weight: 500;

  letter-spacing: 0.2px;

  color: #00D9FF;
}


/* Description */
.gv-card-desc {
  margin: 0 0 24px;

  font-size: 14.5px;
  font-weight: 400;

  line-height: 1.8;

  color: rgba(255, 255, 255, 0.62);
}


/* Tags */
.gv-card-tags {
  display: flex;
  flex-wrap: wrap;

  gap: 0;

  margin: 0 0 28px;
  padding: 0;

  list-style: none;
}

.gv-card-tag {
  display: inline-block;

  font-size: 12px;
  font-weight: 500;

  letter-spacing: 0.3px;

  color: rgba(255, 255, 255, 0.52);
}

.gv-card-tag + .gv-card-tag {
  padding-left: 8px;
  margin-left: 8px;

  border-left: 1px solid rgba(0, 217, 255, 0.20);
}


/* Explore 按钮（margin-top:auto → 同一行卡片按钮底部对齐） */
.gv-card-link {
  margin-top: auto;

  align-self: flex-start;

  display: inline-flex;
  align-items: center;

  gap: 9px;

  padding: 11px 19px;

  border: 1px solid rgba(0, 217, 255, 0.26);
  border-radius: 3px;

  color: #00D9FF;

  font-size: 12.5px;
  font-weight: 600;

  letter-spacing: 1.6px;
  text-transform: uppercase;

  text-decoration: none;

  transition:
    color 0.28s ease,
    border-color 0.28s ease,
    background-color 0.28s ease;
}

.gv-service-card:hover .gv-card-link,
.gv-card-link:hover {
  color: #5CEBFF;

  border-color: rgba(0, 217, 255, 0.55);
  background: rgba(0, 217, 255, 0.06);
}

.gv-card-link-arrow {
  font-size: 15px;
  line-height: 1;

  transition: transform 0.28s ease;
}

.gv-service-card:hover .gv-card-link-arrow,
.gv-card-link:hover .gv-card-link-arrow {
  transform: translateX(4px);
}


/* ---------------------------------------------------------
   Responsive
   --------------------------------------------------------- */
@media (max-width: 1080px) {

  .gv-services-container {
    padding: 0 30px 68px;
  }

  .gv-services-section::before {
    width: calc(100% - 60px);
  }

  .gv-services-header {
    gap: 38px;
    margin: 46px 0 52px;
  }

  .gv-services-visual {
    flex: 0 0 250px;
    width: 250px;
    height: 250px;
  }

  .gv-services-grid {
    gap: 18px;
  }

  .gv-service-card {
    padding: 30px 28px 26px;
  }

}


@media (max-width: 860px) {

  .gv-services-header {
    flex-direction: column-reverse;
    align-items: center;

    gap: 28px;

    margin: 44px 0 46px;
  }

  .gv-services-header-text {
    width: 100%;
    max-width: 680px;
  }

  .gv-services-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }

}


@media (max-width: 767px) {

  .gv-services-container {
    padding: 0 22px 56px;
  }

  .gv-services-section::before {
    width: calc(100% - 44px);
  }

  .gv-services-header {
    margin: 38px 0 38px;
  }

  .gv-services-title {
    font-size: clamp(28px, 7.5vw, 38px);
    letter-spacing: -0.8px;
  }

  .gv-services-title span {
    display: block;
  }

  .gv-services-desc {
    font-size: 15px;
    line-height: 1.7;
  }

  .gv-services-visual {
    flex: 0 0 auto;
    width: min(100%, 230px);
    height: min(100%, 230px);
  }

  .gv-service-card {
    padding: 26px 22px 24px;
  }

  .gv-card-icon {
    width: 62px;
    height: 62px;

    flex: 0 0 62px;
  }

  .gv-card-icon svg {
    width: 36px;
    height: 36px;
  }

  .gv-card-title {
    font-size: 18.5px;
  }

}



/* ============================================================
   SECTION 05 — GLOBAL COVERAGE CSS V3 (完整版)
   本次严格对齐 S3/S4 样式：
   - 容器 max-width 1240px，padding 40px（桌面端）
   - 品牌色：金 #AB812D / 主青 #00D9FF / 亮青 #5CEBFF
   - 标题字号：clamp(34px, 3.6vw, 52px)（与 S4 一致）
   - 眉题：13px / 600 / letter-spacing 2.2px / 金色短线
   - 顶部 1px 金→青渐变分割线（与 S3→S4 之间那条一模一样）
   ============================================================ */

/* ============ 全宽 Section 本体 ============ */
.gv-cov{
  position:relative;
  width:100vw;
  max-width:none;
  left:calc(-50vw + 50%);
  margin:0!important;
  padding:0!important;
  background:#0A192F;       /* 与 S3/S4 完全一致的深色底 */
  color:#FFFFFF;
  box-sizing:border-box;
  overflow:hidden;
  display:block;
}

/* 顶部金→青分割线（与 S4::before 一模一样） */
.gv-cov::before{
  content:"";
  position:absolute;
  top:0;left:50%;
  transform:translateX(-50%);
  width:min(1240px,calc(100% - 80px));
  height:1px;
  background:linear-gradient(90deg,
    transparent 0%,
    rgba(171,129,45,.30) 25%,
    rgba(0,217,255,.22) 75%,
    transparent 100%);
  pointer-events:none;
}


/* ============ Container（与 S3/S4 的 gv-about-container/gv-services-container 参数一致） ============ */
.gv-cov-container{
  width:100%;
  max-width:1240px;
  margin:0 auto;
  padding:0 40px 84px;      /* 与 S4 容器 padding 一致 */
  box-sizing:border-box;
}


/* ============ HEADER：标题（左） + 世界地图（右） ============ */
.gv-cov-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:54px;
  margin:52px 0 62px;       /* 与 S4 .gv-services-header 一致 */
}

.gv-cov-header-text{
  flex:1 1 0;
  min-width:0;
  max-width:700px;
}

/* 眉题 */
.gv-cov-eyebrow{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:20px;
  font-size:13px;
  font-weight:600;
  letter-spacing:2.2px;
  line-height:1.4;
  color:#AB812D;
  text-transform:uppercase;
}
.gv-cov-eyebrow-line{
  width:34px;height:1px;
  flex:0 0 34px;
  background:#AB812D;
}

/* 大标题（与 S4 标题参数严格一致） */
.gv-cov-title{
  margin:0 0 24px;
  font-size:clamp(34px,3.6vw,52px);
  font-weight:600;
  line-height:1.15;
  letter-spacing:-1.3px;
  color:#FFFFFF;
}
.gv-cov-title span{
  color:#AB812D;           /* 与 S4 标题高亮色一致（金色，不再用渐变） */
}

/* 说明文字 */
.gv-cov-desc{
  max-width:660px;
  margin:0;
  font-size:17px;
  font-weight:400;
  line-height:1.8;
  color:rgba(255,255,255,.70);
}


/* ============ 右侧：平面线稿世界地图（静态，无动效，精致细线） ============ */
.gv-cov-visual{
  position:relative;
  flex:0 0 340px;
  width:340px;
  height:220px;
  display:flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
  overflow:hidden;
}
.gv-worldmap-svg{
  width:100%;
  height:100%;
  display:block;
  overflow:hidden;
}
/* 网格 */
.gv-wm-grid line{
  fill:none;
  stroke:rgba(0,217,255,.07);
  stroke-width:.8;
  vector-effect:non-scaling-stroke;
}
/* 赤道 */
.gv-wm-equator{
  stroke:rgba(0,217,255,.18);
  stroke-width:1;
  vector-effect:non-scaling-stroke;
}
/* 大陆：淡青色填充 + 细线描边，体现"数据网格"质感 */
.gv-wm-land path{
  fill:url(#gvWmLandFill);
  stroke:rgba(0,217,255,.35);
  stroke-width:.9;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
/* 数据连线（金→青） */
.gv-wm-arcs path{
  fill:none;
  stroke:url(#gvWmArc);
  stroke-width:1.1;
  stroke-linecap:round;
  stroke-dasharray:4 3;
  opacity:.85;
  vector-effect:non-scaling-stroke;
}
/* 节点 */
.gv-wm-node-halo{
  fill:rgba(0,217,255,.22);
}
.gv-wm-node-core{
  fill:#FFE5A1;
}
/* HUD 四角 */
.gv-wm-hud path{
  stroke:rgba(0,217,255,.32);
  stroke-width:1;
  vector-effect:non-scaling-stroke;
}


/* ============ Explorer 外框 ============ */
.gv-cov-explorer{
  border:1px solid rgba(0,217,255,.14);
  background:rgba(255,255,255,.015);
  box-sizing:border-box;
  overflow:hidden;
}
.gv-cov-top{
  display:grid;
  grid-template-columns:36% 64%;
}
.gv-cov-panel{
  padding:36px 34px;
  box-sizing:border-box;
}
.gv-cov-region{
  border-right:1px solid rgba(0,217,255,.14);
  position:relative;
  background:rgba(0,217,255,.015);
}

/* Panel label（与第四部分卡片 label 同风格：金色，带小金色短线） */
.gv-cov-panel-label{
  color:#AB812D;
  font-size:12px;
  font-weight:700;
  letter-spacing:2.2px;
  text-transform:uppercase;
  margin-bottom:22px;
  display:flex;
  align-items:center;
  gap:10px;
}
.gv-cov-panel-label::before{
  content:"";
  width:18px;height:1px;
  background:#AB812D;
  display:inline-block;
}


/* ============ Region 按钮：单行不折行，带差异化区域图标 ============ */
.gv-cov-regions{
  display:flex;
  flex-direction:column;
  gap:10px;
}
.gv-cov-r{
  position:relative;
  min-height:56px;
  padding:0 18px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.02);
  display:flex;
  align-items:center;
  gap:14px;
  white-space:nowrap;
  color:#fff;
  font-size:14.5px;
  font-weight:500;
  cursor:pointer;
  transition:all .25s ease;
  text-decoration:none;
  box-sizing:border-box;
}
.gv-cov-r:hover{
  border-color:rgba(0,217,255,.45);
  background:rgba(0,217,255,.05);
  color:#fff;
}
.gv-cov-r.active{
  border-color:rgba(0,217,255,.55);
  background:rgba(0,217,255,.07);
  color:#fff;
  box-shadow:inset 3px 0 0 #00D9FF;
}
/* 区域图标底板：带渐变边 + 不同底色，强化识别度 */
.gv-cov-r .r-ic{
  flex-shrink:0;
  width:30px;height:30px;
  border-radius:4px;
  border:1px solid rgba(0,217,255,.2);
  background:linear-gradient(135deg,rgba(0,217,255,.10),rgba(171,129,45,.05));
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:16px;
  line-height:1;
}
.gv-cov-r .r-name{
  flex:1;
  overflow:hidden;
  text-overflow:ellipsis;
}
.gv-cov-r small{
  margin-left:auto;
  color:#00D9FF;
  font-size:11px;
  letter-spacing:.6px;
  font-weight:700;
  font-variant-numeric:tabular-nums;
  padding:3px 9px;
  border-radius:2px;
  background:rgba(0,217,255,.10);
}
.gv-cov-r.active small{
  background:rgba(0,217,255,.22);
  color:#fff;
}


/* ============ 自定义下拉框 ============ */
.gv-cov-selwrap{position:relative}
.gv-cov-sel{
  min-height:56px;
  border:1px solid rgba(0,217,255,.28);
  background:rgba(255,255,255,.02);
  display:flex;
  align-items:center;
  padding:0 18px;
  gap:12px;
  font-size:15px;
  color:#fff;
  cursor:pointer;
  transition:border-color .25s;
  user-select:none;
  box-sizing:border-box;
}
.gv-cov-sel:hover{border-color:#00D9FF}
.gv-cov-sel.placeholder{color:rgba(255,255,255,.5)}
/* 下拉框内小 emoji（仅 16px，小图标；Hot 卡片才用大图标） */
.gv-cov-sel .sflag{
  width:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
  font-size:16px;
  line-height:1;
}
.gv-cov-sel .stxt{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gv-cov-sel .schev{color:#00D9FF;font-size:16px;transition:transform .25s;flex-shrink:0}
.gv-cov-sel.open .schev{transform:rotate(180deg)}

.gv-cov-dropdown{
  position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:50;
  background:#0F1F38;
  border:1px solid rgba(0,217,255,.28);
  box-shadow:0 20px 40px rgba(0,0,0,.5);
  max-height:320px;
  overflow-y:auto;
  display:none;
}
.gv-cov-sel.open + .gv-cov-dropdown{display:block}
.gv-cov-search{
  padding:10px 14px;
  border-bottom:1px solid rgba(0,217,255,.10);
  background:rgba(0,0,0,.2);
  position:sticky;top:0;z-index:1;
}
.gv-cov-search input{
  width:100%;height:36px;
  padding:0 12px;
  border:1px solid rgba(0,217,255,.22);
  background:rgba(0,0,0,.35);
  color:#fff;font-size:13.5px;outline:none;
  box-sizing:border-box;
}
.gv-cov-search input::placeholder{color:rgba(255,255,255,.35)}
.gv-cov-search input:focus{border-color:#00D9FF;box-shadow:0 0 0 2px rgba(0,217,255,.12)}

.gv-cov-opts{padding:6px 0}
.gv-cov-opt{
  padding:10px 16px;
  display:flex;align-items:center;gap:10px;
  font-size:13.5px;
  color:rgba(255,255,255,.85);
  cursor:pointer;
  transition:background .15s,color .15s;
}
.gv-cov-opt:hover,.gv-cov-opt.active{background:rgba(0,217,255,.09);color:#fff}
.gv-cov-opt .oflag{
  width:20px;
  display:inline-flex;align-items:center;justify-content:center;
  flex-shrink:0;font-size:14px;line-height:1;
}
.gv-cov-empty{padding:20px;text-align:center;color:rgba(255,255,255,.5);font-size:13px}

.gv-cov-note{
  margin-top:14px;
  color:rgba(255,255,255,.55);
  font-size:12.5px;
  line-height:1.6;
}


/* ============ Documents 结果面板 ============ */
.gv-cov-docs{
  margin-top:24px;
  padding:24px;
  border:1px solid rgba(0,217,255,.14);
  background:rgba(0,217,255,.025);
  box-sizing:border-box;
}
.gv-cov-dochead{
  display:flex;justify-content:space-between;align-items:flex-end;
  gap:12px;margin-bottom:16px;flex-wrap:wrap;
}
.gv-cov-doctitle{
  font-size:13px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase;
  color:#00D9FF;display:flex;align-items:center;gap:10px;
}
.gv-cov-doctitle::before{
  content:"";
  width:4px;height:14px;
  background:#00D9FF;
  display:inline-block;
}

/* —— 默认占位引导内容（未选国家时显示） —— */
.gv-cov-placeholder p{
  margin:0 0 14px;
  color:rgba(255,255,255,.7);
  font-size:14px;line-height:1.7;
}
.gv-cov-cats{
  list-style:none;margin:0 0 14px;padding:0;
  display:flex;flex-direction:column;gap:10px;
}
.gv-cov-cats li{
  display:flex;gap:14px;align-items:flex-start;
  padding:12px 14px;
  border-left:2px solid #AB812D;
  background:rgba(171,129,45,.05);
}
.gv-cat-tag{
  flex-shrink:0;
  color:#AB812D;
  font-size:12px;font-weight:700;
  letter-spacing:1px;text-transform:uppercase;
  padding-top:2px;
  min-width:100px;
}
.gv-cat-desc{
  color:rgba(255,255,255,.65);
  font-size:13px;line-height:1.6;
}
.gv-cov-tip{
  margin:8px 0 0!important;
  padding-top:12px;
  border-top:1px dashed rgba(0,217,255,.15);
  color:rgba(255,255,255,.5)!important;
  font-size:12.5px!important;
  font-style:italic;
}

/* —— 选中后显示的文件数 + 列表（默认隐藏） —— */
.gv-cov-doc-count{
  font-size:11px;
  color:#00D9FF;
  letter-spacing:.8px;
  font-variant-numeric:tabular-nums;
  font-weight:600;
  margin-bottom:14px;
}
.gv-cov-doclist{
  list-style:none;
  margin:0 0 20px;
  padding:0;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px 24px;
}
.gv-cov-doc{
  color:#fff;
  font-size:13.5px;
  line-height:1.5;
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin:0;
  padding:0;
}
.gv-cov-doc::before{
  content:"";
  flex-shrink:0;
  width:15px;height:15px;
  margin-top:3px;
  background:#00D9FF;
  -webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/contain no-repeat;
          mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><polyline points='20 6 9 17 4 12'/></svg>") center/contain no-repeat;
}
.gv-cov-empty-doc{
  color:rgba(255,255,255,.65);
  font-size:13px;
  padding:10px 0;line-height:1.7;
  grid-column:1/-1;
}
.gv-cov-empty-doc strong{color:#fff}
.gv-cov-empty-doc a{color:#00D9FF;text-decoration:underline}

/* CTA 按钮（与 S4 Explore 按钮风格统一） */
.gv-cov-cta{
  display:inline-flex;align-items:center;gap:8px;
  padding:12px 24px;
  border:1px solid #00D9FF;
  background:transparent;
  color:#fff;font-size:13px;font-weight:700;letter-spacing:.6px;
  text-decoration:none;cursor:pointer;transition:all .25s;
}
.gv-cov-cta:hover{
  background:rgba(0,217,255,.1);
  color:#00D9FF;
  box-shadow:0 0 24px rgba(0,217,255,.25);
}
.gv-cov-cta::after{content:"→";transition:transform .25s;margin-left:2px}
.gv-cov-cta:hover::after{transform:translateX(4px)}


/* ============ Hot Jurisdictions（大尺寸国旗） ============ */
.gv-cov-hot{
  border-top:1px solid rgba(0,217,255,.14);
  padding:34px 34px 36px;
  box-sizing:border-box;
}
.gv-cov-hothead{
  display:flex;justify-content:space-between;align-items:flex-end;
  margin-bottom:24px;gap:16px;flex-wrap:wrap;
}
.gv-cov-hotlabel{
  color:#AB812D;font-size:12px;font-weight:700;letter-spacing:2.2px;text-transform:uppercase;
  display:flex;align-items:center;gap:10px;
}
.gv-cov-hotlabel::before{content:"";width:18px;height:1px;background:#AB812D;display:inline-block}
.gv-cov-hotsub{color:rgba(255,255,255,.5);font-size:12px}

.gv-cov-hotgrid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
}
.gv-cov-card{
  position:relative;
  min-height:160px;
  padding:22px;
  border:1px solid rgba(255,255,255,.08);
  background:rgba(255,255,255,.02);
  text-decoration:none;color:#fff;
  display:flex;flex-direction:column;gap:14px;
  transition:all .25s;cursor:pointer;
  box-sizing:border-box;
}
.gv-cov-card:hover{
  border-color:rgba(0,217,255,.45);
  background:rgba(0,217,255,.05);
  transform:translateY(-3px);
  box-shadow:0 14px 32px rgba(0,0,0,.3);
}
/* Hot 卡片大国旗（52×35，明显大于下拉框 16px emoji） */
.gv-cov-card .cflag{
  width:52px;height:35px;border-radius:3px;
  background:rgba(255,255,255,.06);
  overflow:hidden;
  display:inline-flex;align-items:center;justify-content:center;
  box-shadow:0 2px 8px rgba(0,0,0,.35);
  font-size:30px;line-height:1;flex-shrink:0;
}
.gv-cov-card .cflag img{width:100%;height:100%;object-fit:cover;display:block}
.gv-cov-card .cname{font-size:15px;font-weight:600;line-height:1.35;color:#fff}
.gv-cov-card .cmeta{
  margin-top:auto;
  color:#00D9FF;font-size:11px;letter-spacing:.8px;
  text-transform:uppercase;font-weight:600;
}
.gv-cov-card .carrow{
  position:absolute;right:18px;bottom:18px;
  color:#00D9FF;font-size:18px;transition:transform .25s;
}
.gv-cov-card:hover .carrow{transform:translateX(4px)}

.gv-cov-bottom{
  margin-top:28px;
  display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;
}
.gv-cov-fine{color:rgba(255,255,255,.45);font-size:11.5px;line-height:1.6;max-width:70%}
.gv-cov-all{
  color:#00D9FF;text-decoration:none;font-size:13px;font-weight:700;
  border-bottom:1px solid rgba(0,217,255,.4);padding-bottom:4px;
  display:inline-flex;align-items:center;gap:8px;transition:all .25s;
}
.gv-cov-all:hover{border-color:#00D9FF;color:#fff}


/* ============ 下拉框滚动条美化 ============ */
.gv-cov-dropdown::-webkit-scrollbar{width:6px}
.gv-cov-dropdown::-webkit-scrollbar-track{background:rgba(0,0,0,.2)}
.gv-cov-dropdown::-webkit-scrollbar-thumb{background:rgba(0,217,255,.22);border-radius:3px}
.gv-cov-dropdown::-webkit-scrollbar-thumb:hover{background:rgba(0,217,255,.45)}


/* ============ Elementor 间距清零（和 S3/S4 同方案：负 margin 吞噬间隙） ============ */
.elementor-widget-html:has(.gv-cov),
.elementor-widget-html:has(.gv-cov) > .elementor-widget-container{
  width:100%!important;max-width:100%!important;min-width:0!important;
  margin-left:0!important;margin-right:0!important;
  padding:0!important;
  box-sizing:border-box;
}
/* S4 → S5：20px gap 用 -20px 向上吃掉 */
.elementor-widget-html:has(.gv-cov){margin-top:-20px!important}
/* S5 → 页脚：40px padding 用 -40px 向下吃掉（与 Hero 对称） */
.gv-cov{margin-bottom:-40px!important}
.e-con:has(.gv-cov),
.e-con-inner:has(.gv-cov){
  row-gap:0!important;column-gap:0!important;gap:0!important;
  margin-bottom:0!important;padding-bottom:0!important;
}


/* ============ 响应式 ============ */
@media(max-width:1100px){
  .gv-cov-header{gap:36px}
  .gv-cov-visual{flex:0 0 280px;width:280px;height:180px}
  .gv-cov-top{grid-template-columns:1fr}
  .gv-cov-region{border-right:0;border-bottom:1px solid rgba(0,217,255,.14)}
  .gv-cov-hotgrid{grid-template-columns:1fr 1fr}
}
@media(max-width:820px){
  .gv-cov-header{
    flex-direction:column;
    align-items:flex-start;
  }
  .gv-cov-header-text{max-width:100%}
  .gv-cov-visual{
    width:100%;flex:0 0 auto;
    max-width:420px;height:220px;
    margin:0 auto;
  }
}
@media(max-width:767px){
  .gv-cov-container{padding:0 22px 55px}
  .gv-cov-header{margin:48px 0 42px;gap:30px}
  .gv-cov-title{
    font-size:clamp(30px,8vw,40px);
    letter-spacing:-1px;
  }
  .gv-cov-desc{font-size:15.5px;line-height:1.75}
  .gv-cov-panel,.gv-cov-hot{padding:24px 20px}
  .gv-cov-doclist{grid-template-columns:1fr}
  .gv-cov-hotgrid{grid-template-columns:1fr 1fr}
  .gv-cov-cats li{flex-direction:column;gap:6px}
  .gv-cat-tag{min-width:0}
  .gv-cov-fine{max-width:100%}
  .gv-cov-bottom{flex-direction:column;align-items:flex-start}
  .gv-cov-visual{max-width:100%;height:180px}
}
@media(max-width:420px){
  .gv-cov-hotgrid{grid-template-columns:1fr}
  .gv-cov::before{width:calc(100% - 44px)}
}
@media(prefers-reduced-motion:reduce){
  *{transition:none!important;animation:none!important}
}



/* =========================================================
   SECTION 06 - WHY GLOVERIFY （V3.1 修复版：右图形右边界与下方卡片严格齐平）
   核心修复：
   1. header 网格改用 fr 单位 + 固定右列宽度，避免 66%+34%+48px 导致总宽溢出容器
   2. 右侧图形容器改为右对齐，SVG 最大宽度调整为撑满右列、图形右边缘与下方卡片右边缘严格对齐
   ========================================================= */
.gv-why-section {
    position: relative;
    width: 100vw;
    max-width: none;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-top: -20px;
    margin-bottom: -40px;
    padding: 96px 0 0;
    background: #0A192F;
    color: #fff;
    box-sizing: border-box;
    display: block;
    overflow: hidden;
}

.gv-why-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(1240px, calc(100% - 80px));
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, #AB812D 35%, #00D9FF 65%, transparent 100%);
    opacity: .7;
}

.gv-why-container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 40px 84px;
    box-sizing: border-box;
}

/* ---------- 头部 ---------- */
.gv-why-header {
    display: grid;
    /* 关键修复：使用 fr 单位，让浏览器自动扣除 gap 后分配列宽，
       右列固定 320px 刚好容纳 SVG，保证右列右边缘 = 容器右边缘 = 下方卡片右边缘 */
    grid-template-columns: 1fr 320px;
    gap: 48px;
    align-items: center;
    margin-bottom: 48px;
}

/* 眉题：金色 #AB812D（与第五部分完全一致） */
.gv-why-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.28em;
    color: #AB812D;
    text-transform: uppercase;
    margin: 0 0 20px;
}

.gv-why-eyebrow-line {
    display: inline-block;
    width: 36px;
    height: 1px;
    background: #AB812D;
}

.gv-why-title {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: clamp(34px, 3.6vw, 52px);
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -0.02em;
    color: #fff;
    margin: 0;
}

/* 高亮关键词：金色 #AB812D（与第五部分完全一致） */
.gv-why-title-hl {
    color: #AB812D;
}

/* 右侧专家图形：严格右对齐，图形右边界 = 容器右边界 = 下方卡片右边界 */
.gv-why-visual {
    display: flex;
    justify-content: flex-end;   /* 关键：右对齐，图形贴右列右边缘 */
    align-items: center;
}

.gv-why-expert-svg {
    width: 100%;
    max-width: 320px;            /* 关键：由原 360px/280px 调整为 320px 与右列宽匹配 */
    height: auto;
    display: block;
    /* 图形整体往左平移，让其视觉右边缘（HUD 角标）与下方卡片的 border-box 右边缘精确齐平。
       因 SVG viewBox 360x360 内部右 HUD 角标在 x=340 处，左右各留 20px HUD 边距，
       故此处无需额外 translate，依靠右列 320px + justify-content:flex-end 即可实现右对齐。 */
}

/* ---------- Slogan 强调条 ---------- */
.gv-why-slogan {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    margin-bottom: 56px;
}

.gv-why-slogan-line {
    width: 56px;
    height: 1px;
    background: #AB812D;
    opacity: .8;
}

.gv-why-slogan-text {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: clamp(20px, 2.1vw, 30px);
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1.2;
}

.gv-why-slogan-gold { color: #AB812D; }

.gv-why-slogan-sep {
    display: inline-block;
    width: 1px;
    height: 1.2em;
    background: rgba(171,129,45,.5);
}

.gv-why-slogan-cyan { color: #00D9FF; }

/* ---------- 四大优势卡片 ---------- */
.gv-why-cards {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
}

.gv-why-card {
    position: relative;
    background: rgba(255,255,255,0.025);
    border: 1px solid rgba(0,217,255,0.18);
    border-radius: 12px;
    padding: 36px 32px 32px;
    overflow: hidden;
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
    box-sizing: border-box;
}

.gv-why-card:hover {
    transform: translateY(-3px);
    border-color: rgba(0,217,255,0.45);
    box-shadow: 0 16px 40px -20px rgba(0,217,255,0.25),
                0 6px 18px -8px rgba(0,0,0,.35);
}

.gv-why-card-bar {
    position: absolute;
    top: 0; left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, #AB812D 0%, #00D9FF 100%);
    transition: width .45s ease;
}

.gv-why-card:hover .gv-why-card-bar { width: 100%; }

.gv-why-card-shine {
    position: absolute;
    top: 0; right: 0;
    width: 80px; height: 80px;
    background: linear-gradient(225deg, rgba(0,217,255,0.18) 0%, transparent 60%);
    opacity: 0;
    transition: opacity .4s ease;
    pointer-events: none;
}

.gv-why-card:hover .gv-why-card-shine { opacity: 1; }

.gv-why-card-icon {
    width: 64px;
    height: 64px;
    margin-bottom: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gv-why-card-icon svg {
    width: 100%;
    height: 100%;
    display: block;
}

.gv-why-card-title {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.25;
    color: #fff;
    margin: 0 0 12px;
    letter-spacing: -0.005em;
}

.gv-why-card-desc {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 15px;
    line-height: 1.7;
    color: rgba(255,255,255,0.7);
    margin: 0;
}

/* ---------- 响应式 ---------- */
@media (max-width: 1000px) {
    .gv-why-header {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .gv-why-visual {
        order: -1;
        justify-content: center;   /* 移动端居中，不右对齐 */
    }
    .gv-why-expert-svg { max-width: 300px; }
    .gv-why-cards { grid-template-columns: 1fr; }
}

@media (max-width: 767px) {
    .gv-why-container { padding: 0 20px 64px; }
    .gv-why-section::before { width: calc(100% - 40px); }
    .gv-why-section { padding-top: 72px; }
    .gv-why-card { padding: 28px 24px; }
    .gv-why-slogan-text { gap: 12px; font-size: 18px; }
    .gv-why-slogan-sep { display: none; }
    .gv-why-expert-svg { max-width: 260px; }
}

@media (prefers-reduced-motion: reduce) {
    .gv-why-card,
    .gv-why-card-bar,
    .gv-why-card-shine { transition: none; }
}

/* ---------- Elementor / GP 间隙清理 ---------- */
.elementor-widget-html:has(.gv-why-section),
.elementor-widget-html:has(.gv-why-section) > .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.e-con:has(.gv-why-section),
.e-con-inner:has(.gv-why-section),
.elementor-column:has(.gv-why-section),
.elementor-section:has(.gv-why-section) {
    row-gap: 0 !important;
    column-gap: 0 !important;
    gap: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}



/* =========================================================
   SECTION 07 - SOLUTIONS / USE CASES
   设计语言严格对齐 SECTION 06：深底 #0A192F、金色 #AB812D、青色 #00D9FF、
   同规格圆角 / 间距 / hover 动效 / 响应式断点
   ========================================================= */
.gv-sol-section {
    position: relative;
    width: 100vw;
    max-width: none;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-top: -20px;
    margin-bottom: -40px;
    padding: 96px 0 0;
    background: #0A192F;
    color: #fff;
    box-sizing: border-box;
    display: block;
    overflow: hidden;
}

/* 顶部渐变分割线（与 S6 完全一致） */
.gv-sol-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(1240px, calc(100% - 80px));
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, #AB812D 35%, #00D9FF 65%, transparent 100%);
    opacity: .7;
}

.gv-sol-container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 40px 84px;
    box-sizing: border-box;
}

/* ---------- 头部 ---------- */
.gv-sol-header {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 48px;
    align-items: center;
    margin-bottom: 48px;
}

/* 眉题 */
.gv-sol-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.28em;
    color: #AB812D;
    text-transform: uppercase;
    margin: 0 0 20px;
}

.gv-sol-eyebrow-line {
    display: inline-block;
    width: 36px;
    height: 1px;
    background: #AB812D;
}

.gv-sol-title {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: clamp(34px, 3.6vw, 52px);
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -0.02em;
    color: #fff;
    margin: 0 0 20px;
}

.gv-sol-title-hl {
    color: #AB812D;
}

.gv-sol-sub {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 16px;
    line-height: 1.75;
    color: rgba(255,255,255,0.7);
    margin: 0;
    max-width: 680px;
}

/* 右侧场景网络图形（与 S6 右列同规格：flex-end 贴边） */
.gv-sol-visual {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.gv-sol-net-svg {
    width: 100%;
    max-width: 320px;
    height: auto;
    display: block;
}

/* ---------- Slogan 强调条 ---------- */
.gv-sol-slogan {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 18px;
    margin-bottom: 56px;
}

.gv-sol-slogan-line {
    width: 56px;
    height: 1px;
    background: #AB812D;
    opacity: .8;
}

.gv-sol-slogan-text {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: clamp(20px, 2.1vw, 30px);
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1.2;
}

.gv-sol-slogan-gold { color: #AB812D; }

.gv-sol-slogan-sep {
    display: inline-block;
    width: 1px;
    height: 1.2em;
    background: rgba(171,129,45,.5);
}

.gv-sol-slogan-cyan { color: #00D9FF; }

/* ---------- 六张场景卡片：3 × 2 ---------- */
.gv-sol-cards {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}

.gv-sol-card {
    position: relative;
    background: rgba(255,255,255,0.025);
    border: 1px solid rgba(0,217,255,0.18);
    border-radius: 12px;
    padding: 34px 30px 30px;
    overflow: hidden;
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
    box-sizing: border-box;
}

.gv-sol-card:hover {
    transform: translateY(-3px);
    border-color: rgba(0,217,255,0.45);
    box-shadow: 0 16px 40px -20px rgba(0,217,255,0.25),
                0 6px 18px -8px rgba(0,0,0,.35);
}

/* 序号角标（卡片专属细节） */
.gv-sol-card-num {
    position: absolute;
    top: 16px;
    right: 20px;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.18em;
    color: rgba(171,129,45,.55);
    font-variant-numeric: tabular-nums;
    pointer-events: none;
}

.gv-sol-card-bar {
    position: absolute;
    top: 0; left: 0;
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, #AB812D 0%, #00D9FF 100%);
    transition: width .45s ease;
}

.gv-sol-card:hover .gv-sol-card-bar { width: 100%; }

.gv-sol-card-shine {
    position: absolute;
    top: 0; right: 0;
    width: 80px; height: 80px;
    background: linear-gradient(225deg, rgba(0,217,255,0.18) 0%, transparent 60%);
    opacity: 0;
    transition: opacity .4s ease;
    pointer-events: none;
}

.gv-sol-card:hover .gv-sol-card-shine { opacity: 1; }

.gv-sol-card-icon {
    width: 60px;
    height: 60px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.gv-sol-card-icon svg {
    width: 100%;
    height: 100%;
    display: block;
}

.gv-sol-card-title {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    color: #fff;
    margin: 0 0 10px;
    letter-spacing: -0.005em;
}

.gv-sol-card-desc {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 14.5px;
    line-height: 1.7;
    color: rgba(255,255,255,0.7);
    margin: 0 0 16px;
}

/* 三条要点 */
.gv-sol-card-list {
    list-style: none;
    padding: 0;
    margin: 0;
    border-top: 1px solid rgba(255,255,255,0.07);
    padding-top: 14px;
}

.gv-sol-card-list li {
    position: relative;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 13px;
    line-height: 1.55;
    color: rgba(255,255,255,0.58);
    padding-left: 14px;
    margin-bottom: 6px;
}

.gv-sol-card-list li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 8px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #AB812D;
    opacity: .8;
}

.gv-sol-card-list li:last-child { margin-bottom: 0; }

/* ---------- 底部 CTA 小条 ---------- */
.gv-sol-cta {
    margin-top: 48px;
    text-align: center;
}

.gv-sol-cta-text {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 15px;
    color: rgba(255,255,255,0.65);
    margin: 0;
}

.gv-sol-cta-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #00D9FF;
    font-weight: 600;
    text-decoration: none;
    margin-left: 8px;
    transition: gap .3s ease, color .3s ease;
}

.gv-sol-cta-link:hover {
    color: #5CEBFF;
    gap: 12px;
}

.gv-sol-cta-arrow {
    display: inline-block;
    transition: transform .3s ease;
}

/* ---------- 响应式 ---------- */
@media (max-width: 1000px) {
    .gv-sol-header {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .gv-sol-visual { order: -1; justify-content: center; }
    .gv-sol-net-svg { max-width: 280px; }
    .gv-sol-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
    .gv-sol-container { padding: 0 20px 64px; }
    .gv-sol-section::before { width: calc(100% - 40px); }
    .gv-sol-section { padding-top: 72px; }
    .gv-sol-card { padding: 28px 22px 24px; }
    .gv-sol-slogan-text { gap: 12px; font-size: 18px; }
    .gv-sol-slogan-sep { display: none; }
    .gv-sol-net-svg { max-width: 240px; }
    .gv-sol-cards { grid-template-columns: 1fr; gap: 18px; }
    .gv-sol-cta { margin-top: 36px; }
    .gv-sol-cta-text { font-size: 14px; }
}

@media (prefers-reduced-motion: reduce) {
    .gv-sol-card,
    .gv-sol-card-bar,
    .gv-sol-card-shine,
    .gv-sol-cta-link,
    .gv-sol-cta-arrow { transition: none; }
}

/* ---------- Elementor / GP 间隙清理（与 S6 保持一致规则） ---------- */
.elementor-widget-html:has(.gv-sol-section),
.elementor-widget-html:has(.gv-sol-section) > .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.e-con:has(.gv-sol-section),
.e-con-inner:has(.gv-sol-section),
.elementor-column:has(.gv-sol-section),
.elementor-section:has(.gv-sol-section) {
    row-gap: 0 !important;
    column-gap: 0 !important;
    gap: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}



/* ============================================
   SECTION 08 — HOW IT WORKS（圆角流程块版 · 全宽无空隙终版）
   - 全宽突破：完全参照 SECTION 06 已验证成功的方案
   - 上下负 margin：margin-top:-20px / margin-bottom:-40px
   - Elementor 所有父容器 padding/gap/margin 强制清零
   - 顶部淡分割线
   ============================================ */

/* =========================================================
   SECTION 08 - HOW IT WORKS（参照 SECTION 06 全宽无间隙方案）
   ========================================================= */
.gv-hiw-section {
    position: relative;
    width: 100vw;
    max-width: none;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-top: -20px;
    margin-bottom: -40px;
    padding: 96px 0 0;
    background: #0A192F;
    color: #fff;
    box-sizing: border-box;
    display: block;
    overflow: hidden;
}

.gv-hiw-section * {
    box-sizing: border-box;
}

/* 顶部淡分割线 */
.gv-hiw-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: min(1240px, calc(100% - 80px));
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(201,149,58,.5) 35%, rgba(0,229,255,.5) 65%, transparent 100%);
    opacity: .7;
}

.gv-hiw-inner {
    position: relative;
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 40px 84px;
    box-sizing: border-box;
}

/* ========== 头部 ========== */
.gv-hiw-header {
    text-align: center;
    margin-bottom: 56px;
}
.gv-hiw-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: #C9953A;
    margin: 0 0 20px;
}
.gv-hiw-eyebrow-line {
    display: inline-block;
    width: 44px;
    height: 1px;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(0, 217, 255, 0.7)
    );
}

.gv-hiw-eyebrow-line:last-child {
    background: linear-gradient(
        90deg,
        rgba(0, 217, 255, 0.7),
        transparent
    );
}
.gv-hiw-title {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: clamp(34px, 3.6vw, 52px);
    font-weight: 700;
    line-height: 1.18;
    letter-spacing: -0.02em;
    color: #fff;
    margin: 0;
}
.gv-hiw-gold {
    color: #C9953A;
}

/* ========== 四步流程带 ========== */
.gv-hiw-flow {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0;
    width: 100%;
    position: relative;
}

/* 单个步骤块 */
.gv-hiw-step {
    position: relative;
    background: rgba(255,255,255,0.025);
    border: 1px solid rgba(0,229,255,0.15);
    border-radius: 12px;
    padding: 32px 24px 30px;
    margin-right: 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease, background .35s ease;
}
.gv-hiw-step::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%) scaleX(0);
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, #C9953A 0%, #00E5FF 100%);
    border-radius: 2px 2px 0 0;
    transition: transform .45s ease;
}
.gv-hiw-step:hover {
    transform: translateY(-3px);
    border-color: rgba(0,229,255,0.4);
    background: rgba(255,255,255,0.045);
    box-shadow: 0 16px 40px -20px rgba(0,229,255,0.25), 0 6px 18px -8px rgba(0,0,0,.35);
}
.gv-hiw-step:hover::before {
    transform: translateX(-50%) scaleX(1);
}
.gv-hiw-step-last {
    margin-right: 0;
}

/* 图标（28px，线条 1.8） */
.gv-hiw-step-icon {
    width: 28px;
    height: 28px;
    color: rgba(201,149,58,0.8);
    margin-bottom: 16px;
    flex-shrink: 0;
    transition: color .3s ease;
}
.gv-hiw-step:hover .gv-hiw-step-icon {
    color: #D4A250;
}

/* 步骤编号 */
.gv-hiw-step-num {
    display: inline-block;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    color: #C9953A;
    margin-bottom: 12px;
    padding: 3px 9px;
    border: 1px solid rgba(201,149,58,0.38);
    border-radius: 3px;
    line-height: 1;
}

/* 步骤标题 */
.gv-hiw-step-title {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 22px;
    font-weight: 700;
    color: #00D9FF;
    margin: 0 0 12px 0;
    line-height: 1.2;
}

/* 步骤描述 —— 严格 2 行 */
.gv-hiw-step-desc {
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 13.5px;
    line-height: 1.55;
    color: rgba(255,255,255,0.68);
    margin: 0;
    min-height: 44px;
    max-height: 44px;
    overflow: hidden;
}

/* ========== 步骤间箭头 ========== */
.gv-hiw-arrow {
    position: absolute;
    top: 50%;
    right: -20px;
    transform: translateY(-50%);
    width: 20px;
    height: 2px;
    background: linear-gradient(90deg, rgba(201,149,58,0.9), rgba(201,149,58,0.55));
    z-index: 2;
    transition: background .3s ease;
}
.gv-hiw-arrow::after {
    content: '';
    position: absolute;
    right: -1px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 7px solid rgba(201,149,58,0.9);
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    transition: border-left-color .3s ease;
}
.gv-hiw-step:hover .gv-hiw-arrow {
    background: linear-gradient(90deg, #00E5FF, rgba(0,229,255,0.7));
}
.gv-hiw-step:hover .gv-hiw-arrow::after {
    border-left-color: #00E5FF;
}
.gv-hiw-step-last .gv-hiw-arrow {
    display: none;
}

/* ========== CTA 按钮 ========== */
.gv-hiw-cta-wrap {
    margin-top: 56px;
    display: flex;
    justify-content: center;
}
.gv-hiw-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 36px;
    border: 1.5px solid #C9953A;
    border-radius: 6px;
    font-family: 'Inter', 'Helvetica Neue', Arial, sans-serif;
    font-size: 15px;
    font-weight: 600;
    color: #C9953A;
    text-decoration: none;
    letter-spacing: 0.02em;
    transition: all .3s ease;
}
.gv-hiw-cta:hover {
    background: #C9953A;
    color: #0A192F;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(201,149,58,0.25);
}
.gv-hiw-cta-arrow {
    display: inline-block;
    font-size: 16px;
    transition: transform .3s ease;
    font-weight: 700;
}
.gv-hiw-cta:hover .gv-hiw-cta-arrow {
    transform: translateX(5px);
}

/* ========== 响应式 ========== */
@media (max-width: 1100px) {
    .gv-hiw-flow {
        grid-template-columns: repeat(2, 1fr);
        gap: 22px 28px;
    }
    .gv-hiw-step { margin-right: 0; }
    .gv-hiw-arrow { display: none; }
    .gv-hiw-step-desc {
        max-height: none;
        overflow: visible;
    }
}
@media (max-width: 767px) {
    .gv-hiw-section {
        width: 100%;
        max-width: 100%;
        margin-left: 0;
        margin-right: 0;
        padding-top: 72px;
    }
    .gv-hiw-inner { padding: 0 20px 64px; }
    .gv-hiw-section::before { width: calc(100% - 40px); }
    .gv-hiw-header { margin-bottom: 40px; }
    .gv-hiw-flow {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .gv-hiw-step { padding: 24px 22px; border-radius: 10px; }
    .gv-hiw-step-icon { width: 26px; height: 26px; }
    .gv-hiw-step-desc {
        font-size: 14px;
        min-height: auto;
        max-height: none;
        overflow: visible;
    }
    .gv-hiw-cta-wrap { margin-top: 40px; }
    .gv-hiw-cta {
        width: 100%;
        justify-content: center;
        padding: 14px 24px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .gv-hiw-step,
    .gv-hiw-step::before,
    .gv-hiw-step-icon,
    .gv-hiw-cta,
    .gv-hiw-cta-arrow,
    .gv-hiw-arrow { transition: none !important; }
    .gv-hiw-step:hover { transform: none !important; }
}

/* ---------- Elementor / GP 间隙清理（完全照搬 S6 已验证的规则） ---------- */
.elementor-widget-html:has(.gv-hiw-section),
.elementor-widget-html:has(.gv-hiw-section) > .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
.e-con:has(.gv-hiw-section),
.e-con-inner:has(.gv-hiw-section),
.elementor-column:has(.gv-hiw-section),
.elementor-section:has(.gv-hiw-section),
.elementor-widget-wrap:has(.gv-hiw-section),
.elementor-widget:has(.gv-hiw-section) {
    row-gap: 0 !important;
    column-gap: 0 !important;
    gap: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}



/* ========== Section 09 : FAQ ========== */
.gv-faq-section {
    position: relative;
    width: 100%;
    margin: -20px 0 -40px 0;
    padding: 96px 0 0;
    background: #0A192F;
    color: #fff;
    overflow: hidden;
    z-index: 2;
}
.gv-faq-section::before {
    content: "";
    position: absolute;
    top: 0; left: 50%;
    transform: translateX(-50%);
    width: min(1240px, calc(100% - 80px));
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(201,149,58,0.7) 45%, rgba(0,229,255,0.7) 55%, transparent);
}
.gv-faq-section::after {
    content: "";
    position: absolute;
    bottom: 0; left: 50%;
    transform: translateX(-50%);
    width: min(1240px, calc(100% - 80px));
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0,229,255,0.5) 40%, rgba(201,149,58,0.4) 60%, transparent);
}

/* ---- Header (centered) ---- */
.gv-faq-header {
    text-align: center;
    margin-bottom: 48px;
    padding: 0 40px;
}
.gv-faq-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 20px;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0.28em;
    text-transform: uppercase;
    color: #C9953A;
}
.gv-faq-eyebrow-line {
    display: inline-block;
    width: 44px;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(0,229,255,0.7));
}
.gv-faq-eyebrow-line:last-child {
    background: linear-gradient(90deg, rgba(0,229,255,0.7), transparent);
}
.gv-faq-title {
    margin: 0;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    font-size: clamp(34px, 3.6vw, 52px);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -0.02em;
    color: #fff;
}
.gv-faq-gold {
    color: #C9953A;
    background: linear-gradient(90deg, #C9953A, #E6B760);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ---- Container — 严格对齐 S8 .gv-hiw-inner ---- */
.gv-faq-container {
    max-width: 1240px;
    margin: 0 auto;
    padding: 0 40px 120px;
    box-sizing: border-box;
}
.gv-faq-list {
    width: 100%;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

/* ---- FAQ Item ---- */
.gv-faq-item {
    position: relative;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(0,229,255,0.14);
    border-radius: 12px;
    overflow: hidden;
    transition: border-color .3s ease, box-shadow .3s ease, background .3s ease, transform .3s ease;
}
.gv-faq-item:hover {
    border-color: rgba(0,229,255,0.35);
    background: rgba(255,255,255,0.04);
}
.gv-faq-item[open] {
    border-color: rgba(0,229,255,0.45);
    background: rgba(255,255,255,0.045);
    box-shadow: 0 0 0 1px rgba(0,229,255,0.08), 0 16px 40px -20px rgba(0,229,255,0.25);
}
.gv-faq-item::before {
    content: "";
    position: absolute;
    left: 0; top: 0;
    width: 3px; height: 100%;
    background: linear-gradient(180deg, #00E5FF, #35E9FF);
    transform: scaleY(0);
    transform-origin: center;
    transition: transform .3s ease;
}
.gv-faq-item[open]::before { transform: scaleY(1); }

/* Summary row */
.gv-faq-q {
    position: relative;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 22px 26px;
    list-style: none !important;
    cursor: pointer;
    user-select: none;
    transition: background .25s ease;
}
.gv-faq-q::-webkit-details-marker { display: none !important; }
.gv-faq-q::marker { display: none !important; content: ""; }
.gv-faq-q:hover { background: rgba(0,229,255,0.03); }

.gv-faq-num {
    flex-shrink: 0;
    width: 34px;
    font-family: "Cormorant Garamond", "Playfair Display", Georgia, serif;
    font-size: 22px;
    font-weight: 600;
    color: #00E5FF;
    letter-spacing: 0.02em;
}
.gv-faq-qtext {
    flex: 1;
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.5;
    color: #fff;
}
.gv-faq-arrow-wrap {
    flex-shrink: 0;
    width: 32px; height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid rgba(0,229,255,0.45);
    color: #00E5FF;
    transition: transform .3s ease, background .3s ease, color .3s ease, border-color .3s ease;
}
.gv-faq-arrow {
    width: 14px; height: 14px;
    display: block;
    transition: transform .3s ease;
}
.gv-faq-item[open] .gv-faq-arrow-wrap {
    background: #C9953A;
    border-color: #C9953A;
    color: #0A192F;
    transform: rotate(180deg);
}
.gv-faq-q:hover .gv-faq-arrow-wrap {
    background: rgba(0,229,255,0.12);
    border-color: #00E5FF;
}
.gv-faq-item[open] .gv-faq-q:hover .gv-faq-arrow-wrap {
    background: #C9953A;
    border-color: #C9953A;
    color: #0A192F;
}

/* Answer */
.gv-faq-a-wrap {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows .38s cubic-bezier(.4,.0,.2,1);
}
.gv-faq-item[open] .gv-faq-a-wrap { grid-template-rows: 1fr; }
.gv-faq-a {
    overflow: hidden;
    padding: 0 26px;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity .3s ease .05s, transform .3s ease .05s, padding .3s ease;
}
.gv-faq-item[open] .gv-faq-a {
    padding: 0 26px 24px 78px; /* align under question text (34num + 18gap + 26pad = 78) */
    opacity: 1;
    transform: translateY(0);
    border-top: 1px solid rgba(0,229,255,0.12);
    padding-top: 18px;
}
.gv-faq-a {
    font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    font-size: 14.5px;
    font-weight: 400;
    line-height: 1.75;
    color: rgba(255,255,255,0.72);
    margin: 0;
}

/* ---- Elementor / GP gap cleanup ---- */
.gv-faq-section * { box-sizing: border-box; }
.elementor-widget-html:has(.gv-faq-section),
.elementor-widget-html:has(.gv-faq-section) > .elementor-widget-container {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}
.e-con:has(.gv-faq-section),
.e-con-inner:has(.gv-faq-section),
.elementor-column:has(.gv-faq-section),
.elementor-section:has(.gv-faq-section),
.elementor-widget-wrap:has(.gv-faq-section),
.elementor-widget:has(.gv-faq-section),
.elementor-widget-container:has(.gv-faq-section) {
    padding: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    gap: 0 !important;
    border: none !important;
}

/* ---- Responsive ---- */
@media (max-width: 767px) {
    .gv-faq-section { padding-top: 72px; }
    .gv-faq-section::before,
    .gv-faq-section::after { width: calc(100% - 40px); }
    .gv-faq-container { padding: 0 20px 90px; }
    .gv-faq-header { padding: 0 20px; margin-bottom: 36px; }
    .gv-faq-q { padding: 18px 20px; gap: 14px; }
    .gv-faq-qtext { font-size: 15px; }
    .gv-faq-num { width: 28px; font-size: 18px; }
    .gv-faq-arrow-wrap { width: 28px; height: 28px; }
    .gv-faq-arrow { width: 12px; height: 12px; }
    .gv-faq-item[open] .gv-faq-a { padding: 16px 20px 22px; }
    .gv-faq-a { font-size: 14px; }
}



/* ============================================================
   SECTION 10 : FINAL CTA - GloVerify
   ============================================================ */

.gv-cta-section {
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: -20px;
  margin-bottom: -30px !important;
  background: #0A192F;
  padding: 120px 0 40px;
  overflow: hidden;
  text-align: center;
}

/* 顶部淡分割线 */
.gv-cta-section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(1240px, calc(100% - 80px));
  height: 1px;
  background: linear-gradient(90deg,
    rgba(201,149,58,0) 0%,
    rgba(201,149,58,0.35) 45%,
    rgba(0,229,255,0.4) 50%,
    rgba(0,229,255,0) 100%);
}

/* 全局兜底：彻底清零包含本区块的所有 Elementor / 主题容器间隙 */
html:has(.gv-cta-section),
body:has(.gv-cta-section) {
  margin: 0 !important;
  padding: 0 !important;
}
:where(.elementor-widget-html):has(.gv-cta-section),
:where(.elementor-widget-container):has(.gv-cta-section),
:where(.e-con):has(.gv-cta-section),
:where(.e-con-inner):has(.gv-cta-section),
:where(.elementor-column):has(.gv-cta-section),
:where(.elementor-section):has(.gv-cta-section),
:where(.elementor-widget-wrap):has(.gv-cta-section),
:where(.elementor-widget):has(.gv-cta-section),
:where(.elementor-top-section):has(.gv-cta-section),
:where(.elementor):has(.gv-cta-section) {
  padding: 0 !important;
  margin: 0 !important;
  gap: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: -40px !important;
  border: none !important;
}

/* ============ 内容容器 ============ */
.gv-cta-container {
  position: relative;
  z-index: 2;
  max-width: 900px;
  margin: 0 auto;
  padding: 0 40px 80px;
  box-sizing: border-box;
}

/* ============ 眉题 ============ */
.gv-cta-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  font-family: 'Inter', sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #00E5FF;
  margin: 0 0 28px;
}

.gv-cta-eyebrow::before,
.gv-cta-eyebrow::after {
  content: "";
  width: 48px;
  height: 1px;
  background: linear-gradient(90deg, rgba(0,229,255,0), rgba(0,229,255,0.7));
}
.gv-cta-eyebrow::after {
  background: linear-gradient(90deg, rgba(0,229,255,0.7), rgba(0,229,255,0));
}

/* ============ 主标题 ============ */
.gv-cta-title {
  font-family: 'Inter', sans-serif;
  font-size: clamp(40px, 5.2vw, 72px);
  font-weight: 700;
  line-height: 1.08;
  color: #FFFFFF;
  margin: 0 0 22px;
  letter-spacing: -0.02em;
}
.gv-cta-title .gold {
  background: linear-gradient(135deg, #E4B35F 0%, #C9953A 50%, #D4A250 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* ============ 副标题 ============ */
.gv-cta-subtitle {
  font-family: 'Inter', sans-serif;
  font-size: clamp(16px, 1.5vw, 20px);
  font-weight: 400;
  line-height: 1.6;
  color: rgba(255,255,255,0.72);
  margin: 0 0 48px;
  max-width: 620px;
  margin-left: auto;
  margin-right: auto;
}
.gv-cta-subtitle em {
  font-style: italic;
  color: #D4A250;
  font-weight: 500;
}

/* ============ 按钮组 ============ */
.gv-cta-btn-group {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-bottom: 36px;
}

/* 通用按钮 */
.gv-cta-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-family: 'Inter', sans-serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.02em;
  padding: 16px 34px;
  border-radius: 50px;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s ease;
  white-space: nowrap;
}
.gv-cta-btn svg {
  transition: transform 0.3s ease;
  flex-shrink: 0;
}
.gv-cta-btn:hover svg {
  transform: translateX(5px);
}

/* 主按钮：金色实底 */
.gv-cta-btn-primary {
  background: linear-gradient(135deg, #D4A250 0%, #C9953A 50%, #B88530 100%);
  color: #0A192F;
  box-shadow: 0 8px 28px rgba(201,149,58,0.3), inset 0 1px 0 rgba(255,255,255,0.25);
}
.gv-cta-btn-primary:hover {
  background: linear-gradient(135deg, #E4B35F 0%, #D4A250 50%, #C9953A 100%);
  box-shadow: 0 12px 36px rgba(201,149,58,0.45), inset 0 1px 0 rgba(255,255,255,0.35);
  transform: translateY(-2px);
}

/* 副按钮：白色描边 */
.gv-cta-btn-secondary {
  background: transparent;
  color: #FFFFFF;
  border: 1.5px solid rgba(255,255,255,0.5);
}
.gv-cta-btn-secondary:hover {
  border-color: #00E5FF;
  color: #00E5FF;
  background: rgba(0,229,255,0.06);
  transform: translateY(-2px);
}

/* ============ 底部辅助文字 ============ */
.gv-cta-footer {
  font-family: 'Inter', sans-serif;
  font-size: 14px;
  font-weight: 400;
  color: rgba(255,255,255,0.55);
  margin: 0;
  font-style: italic;
}
.gv-cta-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #D4A250;
  font-weight: 500;
  text-decoration: none;
  font-style: normal;
  transition: color 0.25s ease;
}
.gv-cta-link svg {
  vertical-align: middle;
  margin-left: 3px;
  transition: transform 0.25s ease;
}
.gv-cta-link:hover {
  color: #E4B35F;
}
.gv-cta-link:hover svg {
  transform: translateX(3px);
}

/* ============ 背景光晕 ============ */
.gv-cta-glow {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
  filter: blur(100px);
}
.gv-cta-glow-gold {
  width: 600px;
  height: 600px;
  top: -100px;
  left: 8%;
  background: radial-gradient(circle, rgba(201,149,58,0.14) 0%, rgba(201,149,58,0) 65%);
}
.gv-cta-glow-cyan {
  width: 640px;
  height: 640px;
  bottom: -140px;
  right: 6%;
  background: radial-gradient(circle, rgba(0,229,255,0.10) 0%, rgba(0,229,255,0) 65%);
}

/* ============ 四角 HUD 刻度 ============ */
.gv-cta-corner {
  position: absolute;
  width: 28px;
  height: 28px;
  pointer-events: none;
  z-index: 2;
}
.gv-cta-tl { top: 24px; left: 28px; border-top: 1px solid rgba(201,149,58,0.55); border-left: 1px solid rgba(201,149,58,0.55); }
.gv-cta-tr { top: 24px; right: 28px; border-top: 1px solid rgba(0,229,255,0.45); border-right: 1px solid rgba(0,229,255,0.45); }
.gv-cta-bl { bottom: 24px; left: 28px; border-bottom: 1px solid rgba(0,229,255,0.4); border-left: 1px solid rgba(0,229,255,0.4); }
.gv-cta-br { bottom: 24px; right: 28px; border-bottom: 1px solid rgba(201,149,58,0.4); border-right: 1px solid rgba(201,149,58,0.4); }

/* ============ 响应式 ============ */
@media (max-width: 767px) {
  .gv-cta-section {
    padding: 80px 0 20px;
    margin-bottom: -30px !important;
  }
  .gv-cta-container {
    padding: 0 20px 60px;
  }
  :where(.elementor-section):has(.gv-cta-section),
  :where(.e-con):has(.gv-cta-section) {
    margin-bottom: -30px !important;
  }
  .gv-cta-eyebrow::before,
  .gv-cta-eyebrow::after {
    width: 28px;
  }
  .gv-cta-btn-group {
    flex-direction: column;
    gap: 14px;
  }
  .gv-cta-btn {
    width: 100%;
    padding: 15px 28px;
  }
  .gv-cta-glow {
    opacity: 0.6;
  }
  .gv-cta-glow-gold { width: 360px; height: 360px; left: -80px; top: -60px; }
  .gv-cta-glow-cyan { width: 380px; height: 380px; right: -100px; bottom: -80px; }
  .gv-cta-corner {
    display: none;
  }
}

@media (max-width: 480px) {
  .gv-cta-footer {
    font-size: 13px;
    line-height: 1.7;
  }
}
