File: /var/www/html/wp-content/uploads/codex-homepage-src/ethnic-home-hero.php
<?php
if ( ! defined( 'ABSPATH' ) ) {
exit;
}
if ( ! function_exists( 'ethnic_home_hero_should_render' ) ) {
function ethnic_home_hero_should_render() {
return ! is_admin() && is_front_page();
}
}
if ( ! function_exists( 'ethnic_home_hero_target_page_id' ) ) {
function ethnic_home_hero_target_page_id() {
$page_id = (int) get_option( 'page_on_front' );
if ( ! $page_id ) {
$page_id = (int) get_queried_object_id();
}
return $page_id;
}
}
if ( ! function_exists( 'ethnic_home_hero_enqueue_assets' ) ) {
function ethnic_home_hero_enqueue_assets() {
if ( ! ethnic_home_hero_should_render() ) {
return;
}
$css_relative_path = '/css/ethnic-home-hero.css';
$js_relative_path = '/js/ethnic-home-hero.js';
$css_path = THEGEM_THEME_PATH . $css_relative_path;
$js_path = THEGEM_THEME_PATH . $js_relative_path;
wp_enqueue_style(
'ethnic-home-hero',
THEGEM_THEME_URI . $css_relative_path,
array(),
file_exists( $css_path ) ? filemtime( $css_path ) : THEGEM_THEME_VERSION
);
wp_enqueue_script(
'ethnic-home-hero',
THEGEM_THEME_URI . $js_relative_path,
array(),
file_exists( $js_path ) ? filemtime( $js_path ) : THEGEM_THEME_VERSION,
true
);
}
add_action( 'wp_enqueue_scripts', 'ethnic_home_hero_enqueue_assets', 30 );
}
if ( ! function_exists( 'ethnic_global_light_enqueue_assets' ) ) {
function ethnic_global_light_enqueue_assets() {
if ( is_admin() ) {
return;
}
$css_relative_path = '/css/ethnic-global-light.css';
$css_path = THEGEM_THEME_PATH . $css_relative_path;
wp_enqueue_style(
'ethnic-global-light',
THEGEM_THEME_URI . $css_relative_path,
array(),
file_exists( $css_path ) ? filemtime( $css_path ) : THEGEM_THEME_VERSION
);
}
add_action( 'wp_enqueue_scripts', 'ethnic_global_light_enqueue_assets', 999 );
}
if ( ! function_exists( 'ethnic_home_hero_force_scroll_top_on_load' ) ) {
function ethnic_home_hero_force_scroll_top_on_load() {
if ( ! ethnic_home_hero_should_render() ) {
return;
}
?>
<script id="ethnic-home-scroll-reset">
(function () {
try {
if (window.history && 'scrollRestoration' in window.history) {
window.history.scrollRestoration = 'manual';
}
} catch (error) {}
var resetScrollPosition = function () {
window.scrollTo(0, 0);
if (document.documentElement) {
document.documentElement.scrollTop = 0;
}
if (document.body) {
document.body.scrollTop = 0;
}
};
resetScrollPosition();
window.addEventListener('pageshow', function () {
resetScrollPosition();
});
})();
</script>
<?php
}
add_action( 'wp_head', 'ethnic_home_hero_force_scroll_top_on_load', 0 );
}
if ( ! function_exists( 'ethnic_homepage_contact_form_markup' ) ) {
function ethnic_homepage_contact_form_markup() {
if ( shortcode_exists( 'contact-form-7' ) ) {
return do_shortcode( '[contact-form-7 id="26259"]' );
}
return sprintf(
'<div class="ethnic-homepage__form-fallback"><p>Our contact form is temporarily unavailable. Please use the contact page while we reconnect it.</p><a class="ethnic-homepage__button ethnic-homepage__button--primary" href="%s">Open Contact Page</a></div>',
esc_url( home_url( '/contact-us/' ) )
);
}
}
if ( ! function_exists( 'ethnic_home_hero_markup' ) ) {
function ethnic_home_hero_markup() {
$contact_url = home_url( '/contact-us/' );
$services_url = home_url( '/services/' );
$industries_url = function_exists( 'ethnic_industry_pages_archive_url' ) ? ethnic_industry_pages_archive_url() : home_url( '/industries/' );
$about_url = home_url( '/about/' );
$works_url = home_url( '/our-works/' );
$hero_anchor = '#home-contact-form';
$network_url = THEGEM_THEME_URI . '/images/ethnic-home-hero-network.svg';
$home_uploads_url = home_url( '/wp-content/uploads/2025/03/' );
$visuals_url = home_url( '/wp-content/uploads/2026/03/' );
$form_markup = ethnic_homepage_contact_form_markup();
$shape_blocks_url = $home_uploads_url . 'home-blocks.svg';
$shape_service_url = $home_uploads_url . 'service-home.svg';
$shape_curve_url = $home_uploads_url . 'for-hero-2.svg';
$services_visual = $visuals_url . '3_home.webp';
$technology_visual = $visuals_url . '18_home.webp';
$industry_visual = $visuals_url . '2_about.webp';
$slides = array(
array(
'key' => 'app',
'accent' => 'App',
'title' => 'Development',
'copy' => 'Software development company for mobile and web products that balance product thinking, clean engineering, and launch speed.',
'cta' => 'Book Consultation',
'stack_label' => 'Delivery focus',
'stack_items' => array( 'iOS', 'Android', 'Flutter', 'React Native' ),
'visual_label' => 'Product Delivery',
'visual_heading' => 'From scope to release',
'visual_cards' => array( 'Discovery workshops', 'UX flows', 'QA coverage', 'Post-launch support' ),
'float_top' => 'Product-minded engineering',
'float_bottom' => 'Plan / Build / Launch',
),
array(
'key' => 'commerce',
'accent' => 'eCommerce',
'title' => 'Development',
'copy' => 'Technology solutions company for Shopify, Magento, and growth-ready commerce builds focused on conversion, merchandising, and scale.',
'cta' => 'Book Consultation',
'stack_label' => 'Platform stack',
'stack_items' => array( 'Shopify', 'Magento', 'WooCommerce', 'Headless' ),
'visual_label' => 'Commerce Stack',
'visual_heading' => 'Storefront, checkout, integrations',
'visual_cards' => array( 'Catalog architecture', 'Checkout UX', 'ERP / CRM sync', 'Performance tuning' ),
'float_top' => 'Commerce built for growth',
'float_bottom' => 'Sell / Scale / Optimize',
),
array(
'key' => 'ai',
'accent' => 'AI / ML',
'title' => 'Solutions',
'copy' => 'Digital product development company shipping practical AI copilots, automation flows, and data-backed experiences.',
'cta' => 'Book Consultation',
'stack_label' => 'Applied AI',
'stack_items' => array( 'Generative AI', 'LLM integrations', 'NLP', 'Computer Vision' ),
'visual_label' => 'AI Workflow',
'visual_heading' => 'Use cases with real utility',
'visual_cards' => array( 'Assistant design', 'Internal tools', 'Knowledge search', 'Automation layers' ),
'float_top' => 'AI with business intent',
'float_bottom' => 'Assist / Automate / Learn',
),
array(
'key' => 'devops',
'accent' => 'DevOps',
'title' => 'Services',
'copy' => 'IT services company improving cloud operations, CI/CD, observability, and release confidence for growing teams.',
'cta' => 'Book Consultation',
'stack_label' => 'Platform delivery',
'stack_items' => array( 'AWS / Azure / GCP', 'Kubernetes', 'CI / CD', 'Monitoring' ),
'visual_label' => 'Platform Ops',
'visual_heading' => 'Reliable infrastructure by design',
'visual_cards' => array( 'Pipeline automation', 'Infra as code', 'Rollout safety', 'Incident visibility' ),
'float_top' => 'Release with confidence',
'float_bottom' => 'Ship / Observe / Improve',
),
array(
'key' => 'game',
'accent' => 'Game',
'title' => 'Development',
'copy' => 'Immersive 2D, 3D, and multiplayer experiences built with the right engine, pipeline, and gameplay goals.',
'cta' => 'Book Consultation',
'stack_label' => 'Game stack',
'stack_items' => array( 'Unity', 'Unreal', '2D / 3D', 'Multiplayer' ),
'visual_label' => 'Game Pipeline',
'visual_heading' => 'Concept to live ops',
'visual_cards' => array( 'Gameplay systems', 'Art pipelines', 'Monetization flows', 'Live operations' ),
'float_top' => 'Playable, scalable experiences',
'float_bottom' => 'Concept / Build / Grow',
),
array(
'key' => 'blockchain',
'accent' => 'Blockchain',
'title' => 'Products',
'copy' => 'Secure Web3 products spanning smart contracts, dApps, wallet flows, and user-ready blockchain experiences.',
'cta' => 'Book Consultation',
'stack_label' => 'Web3 scope',
'stack_items' => array( 'Solidity', 'Smart Contracts', 'Wallets', 'dApps' ),
'visual_label' => 'Web3 Delivery',
'visual_heading' => 'Security-first product thinking',
'visual_cards' => array( 'Contract logic', 'Wallet journeys', 'dApp UX', 'Audit-minded delivery' ),
'float_top' => 'Web3 with practical UX',
'float_bottom' => 'Secure / Launch / Support',
),
);
$trust_metrics = array(
array(
'value' => '12',
'suffix' => '+',
'label' => 'Years of experience',
'description' => 'Helping teams move from product planning to launch and long-term optimization.',
),
array(
'value' => '730',
'suffix' => '+',
'label' => 'Digital products launched',
'description' => 'A strong record of shipped websites, apps, platforms, and digital experiences.',
),
array(
'value' => '7',
'suffix' => '',
'label' => 'Focus industries',
'description' => 'Retail, healthcare, fintech, logistics, education, gaming, and manufacturing.',
),
);
$partner_tags = array( 'Shopify', 'Magento', 'AWS', 'Salesforce' );
$logo_paths = array( '15_home.png', '12_home.png', '16_home.png', '13_home.png', '14_home.png', '11_home.png' );
$intro_partner_names = array( 'Google', 'Salesforce', 'AWS', 'Oracle', 'CMMI' );
$services = array(
array(
'key' => 'app',
'title' => 'App Development',
'badge' => 'APP',
'eyebrow' => 'Mobile & Web',
'copy' => 'We design mobile and web products with clean UX, scalable backend architecture, and release planning that supports long-term growth.',
'detail_items' => array( 'Android App', 'iPhone App', 'Flutter', 'React Native', 'Swift', 'Kotlin' ),
'image' => $visuals_url . '2_about.webp',
'position' => '50% 50%',
'accent' => '#ff6b6b',
'link' => $services_url,
),
array(
'key' => 'commerce',
'title' => 'eCommerce Development',
'badge' => 'SHOP',
'eyebrow' => 'Storefronts',
'copy' => 'We build commerce experiences that connect merchandising, checkout, integrations, and performance so growth teams can move faster.',
'detail_items' => array( 'Shopify', 'Magento', 'WooCommerce', 'Headless Commerce', 'Checkout UX', 'ERP / CRM Sync' ),
'image' => $visuals_url . '3_home.webp',
'position' => '50% 56%',
'accent' => '#2f6bff',
'link' => $services_url,
),
array(
'key' => 'ai',
'title' => 'AI / ML',
'badge' => 'AI',
'eyebrow' => 'Applied Intelligence',
'copy' => 'We translate AI use cases into practical product flows, automation layers, and internal tools that teams can actually adopt.',
'detail_items' => array( 'Generative AI', 'AI Agents', 'LLM Integration', 'NLP', 'Computer Vision', 'MLOps' ),
'image' => $visuals_url . 'hero-2.webp',
'position' => '50% 50%',
'accent' => '#0ea5a4',
'link' => $services_url,
),
array(
'key' => 'devops',
'title' => 'DevOps',
'badge' => 'OPS',
'eyebrow' => 'Cloud & Reliability',
'copy' => 'We improve release confidence with cloud operations, CI / CD, infrastructure automation, and observability built around scale.',
'detail_items' => array( 'CI / CD Pipelines', 'Kubernetes', 'Terraform', 'AWS / Azure / GCP', 'Observability', 'DevSecOps' ),
'image' => $visuals_url . '18_home.webp',
'position' => '50% 50%',
'accent' => '#f59e0b',
'link' => $services_url,
),
array(
'key' => 'game',
'title' => 'Game Development',
'badge' => 'GAME',
'eyebrow' => 'Interactive Systems',
'copy' => 'We create game-ready pipelines for interactive products, multiplayer systems, live operations, and content that keeps players engaged.',
'detail_items' => array( 'Unity', 'Unreal Engine', 'Multiplayer Systems', 'Game Economy', 'Live Ops', '2D / 3D Pipelines' ),
'image' => $visuals_url . '17_home.jpg',
'position' => '50% 50%',
'accent' => '#8b5cf6',
'link' => $services_url,
),
array(
'key' => 'blockchain',
'title' => 'Blockchain',
'badge' => 'WEB3',
'eyebrow' => 'Contracts & dApps',
'copy' => 'We shape blockchain products around security, smart contracts, wallet journeys, and practical user experience instead of hype alone.',
'detail_items' => array( 'Smart Contracts', 'Solidity', 'Wallet Integration', 'Tokenization', 'dApps', 'Audit Support' ),
'image' => $visuals_url . '1_about.webp',
'position' => '50% 50%',
'accent' => '#f97316',
'link' => $services_url,
),
);
$technology_capabilities = array(
array(
'title' => 'Commerce',
'icon' => 'CM',
'accent' => '#f97316',
'description' => 'Commerce platforms for storefront operations, catalog management, and scalable digital selling.',
'items' => array( 'Shopify', 'Magento' ),
),
array(
'title' => 'Web & App',
'icon' => 'WA',
'accent' => '#2563eb',
'description' => 'Modern application technologies for responsive websites, customer portals, and mobile-ready product delivery.',
'items' => array( 'React', 'Node.js', 'Flutter' ),
),
array(
'title' => 'AI & Backend',
'icon' => 'AI',
'accent' => '#0ea5a4',
'description' => 'Backend intelligence and automation foundations that support smarter workflows and data-led experiences.',
'items' => array( 'Python' ),
),
array(
'title' => 'Cloud & DevOps',
'icon' => 'CD',
'accent' => '#f59e0b',
'description' => 'Cloud infrastructure and deployment tooling designed for reliability, release speed, and operational visibility.',
'items' => array( 'Kubernetes', 'AWS / Azure / GCP' ),
),
array(
'title' => 'Gaming & Web3',
'icon' => 'GW',
'accent' => '#8b5cf6',
'description' => 'Specialized stacks for immersive experiences, interactive products, and blockchain-powered solutions.',
'items' => array( 'Unity', 'Solidity' ),
),
);
$industries = array(
array(
'title' => 'Retail',
'copy' => 'Build seamless retail experiences with custom commerce, omnichannel, and customer-focused digital solutions.',
'accent' => '#f97316',
'icon' => 'RT',
'image' => 'https://images.unsplash.com/photo-1675537057604-cafeef78a3d6?ixlib=rb-4.1.0&q=85&fm=jpg&crop=entropy&cs=srgb&dl=anthony-sebbo-Qn8VH9dE7-U-unsplash.jpg',
'position' => '50% 42%',
),
array(
'title' => 'Healthcare',
'copy' => 'Create secure and scalable healthcare platforms, patient apps, and operational systems tailored to modern care.',
'accent' => '#06b6d4',
'icon' => 'HC',
'image' => 'https://images.unsplash.com/photo-1666886573452-9dc8ce8f5cc5?ixlib=rb-4.1.0&q=85&fm=jpg&crop=entropy&cs=srgb&dl=nappy-Q0qcTWEb7AI-unsplash.jpg',
'position' => '50% 38%',
),
array(
'title' => 'Fintech',
'copy' => 'Develop reliable fintech products with secure workflows, smart automation, and smooth user experiences.',
'accent' => '#2563eb',
'icon' => 'FT',
'image' => 'https://images.unsplash.com/photo-1726066012825-b1ab9ba6e158?ixlib=rb-4.1.0&q=85&fm=jpg&crop=entropy&cs=srgb&dl=sumup-Evfw4uCQsb4-unsplash.jpg',
'position' => '50% 44%',
),
array(
'title' => 'Logistics',
'copy' => 'Streamline logistics operations with custom platforms for tracking, distribution, automation, and visibility.',
'accent' => '#22c55e',
'icon' => 'LG',
'image' => 'https://images.unsplash.com/photo-1768796373360-95d80c5830fb?ixlib=rb-4.1.0&q=85&fm=jpg&crop=entropy&cs=srgb&dl=hoi-an-and-da-nang-photographer-6G3f9sYLDbA-unsplash.jpg',
'position' => '50% 48%',
),
array(
'title' => 'Education',
'copy' => 'Deliver engaging digital learning platforms, education apps, and scalable systems for modern institutions.',
'accent' => '#8b5cf6',
'icon' => 'ED',
'image' => 'https://images.unsplash.com/photo-1752564291723-bb816a3dfb33?ixlib=rb-4.1.0&q=85&fm=jpg&crop=entropy&cs=srgb&dl=matheu-richard-VBIMtDdjuWc-unsplash.jpg',
'position' => '50% 36%',
),
array(
'title' => 'Gaming',
'copy' => 'Build interactive gaming experiences, backend systems, and engaging products for the entertainment industry.',
'accent' => '#ec4899',
'icon' => 'GM',
'image' => 'https://images.unsplash.com/photo-1759158963837-ce2f1524b813?ixlib=rb-4.1.0&q=85&fm=jpg&crop=entropy&cs=srgb&dl=dao-hi-u-zxYxTh1qfDw-unsplash.jpg',
'position' => '50% 50%',
),
array(
'title' => 'Manufacturing',
'copy' => 'Improve efficiency with tailored manufacturing solutions, automation systems, and data-driven platforms.',
'accent' => '#0f766e',
'icon' => 'MF',
'image' => 'https://images.unsplash.com/photo-1663567125990-0a3d2a63eee7?ixlib=rb-4.1.0&q=85&fm=jpg&crop=entropy&cs=srgb&dl=andrea-castro-zV-yaX1oHjs-unsplash.jpg',
'position' => '50% 44%',
),
);
$industry_count = count( $industries );
$case_studies = array(
array(
'brand_mark' => 'F5',
'title' => 'Fusion5',
'summary' => 'A Hyva storefront experience built for faster page speed, clean product discovery, and smoother conversion journeys.',
'technologies' => array( 'Hyva', 'Magento', 'Performance' ),
'url' => $works_url,
'image' => 'https://ethnicinfotech.com/wp-content/uploads/2025/09/fusion5.gif',
'position' => '50% 0%',
'accent' => '#ff6b6b',
'visual_note_a' => 'High-speed storefront',
'visual_note_b' => 'Conversion-first UX',
),
array(
'brand_mark' => 'ML',
'title' => 'MicaLighting',
'summary' => 'A modern eCommerce build for a large lighting catalog with improved navigation, product filtering, and mobile checkout flow.',
'technologies' => array( 'Hyva', 'Magento', 'Catalog UX' ),
'url' => $works_url,
'image' => 'https://ethnicinfotech.com/wp-content/uploads/2025/09/Copy-of-Untitled-Design.png',
'position' => '50% 0%',
'accent' => '#0ea5a4',
'visual_note_a' => 'Advanced filtering',
'visual_note_b' => 'Mobile-ready checkout',
),
array(
'brand_mark' => 'BH',
'title' => 'BlueHira',
'summary' => 'A ScandiPWA commerce implementation delivering app-like performance, smooth browsing, and a cleaner user journey.',
'technologies' => array( 'ScandiPWA', 'React', 'Magento' ),
'url' => $works_url,
'image' => 'https://ethnicinfotech.com/wp-content/uploads/2025/09/Untitled-design.png',
'position' => '50% 0%',
'accent' => '#2f6bff',
'visual_note_a' => 'App-like speed',
'visual_note_b' => 'Modern product discovery',
),
array(
'brand_mark' => 'BL',
'title' => 'Blue lagoon',
'summary' => 'A Magento store implementation focused on stable catalog handling, polished UI flow, and dependable online transactions.',
'technologies' => array( 'Magento', 'Commerce', 'UX' ),
'url' => $works_url,
'image' => 'https://ethnicinfotech.com/wp-content/uploads/2025/08/blue-lagoon-1.gif',
'position' => '50% 0%',
'accent' => '#7c3aed',
'visual_note_a' => 'Stable catalog flow',
'visual_note_b' => 'Reliable checkout',
),
array(
'brand_mark' => 'GB',
'title' => 'Goodbac',
'summary' => 'A Shopify and web design project structured to improve brand trust, product presentation, and purchase intent.',
'technologies' => array( 'Shopify', 'Web Design', 'Brand UX' ),
'url' => $works_url,
'image' => 'https://ethnicinfotech.com/wp-content/uploads/2025/08/goodbac.gif',
'position' => '50% 0%',
'accent' => '#f59e0b',
'visual_note_a' => 'Brand-forward design',
'visual_note_b' => 'Shopify growth flow',
),
array(
'brand_mark' => 'ZM',
'title' => 'Zolamod',
'summary' => 'A Shopify storefront focused on clean merchandising, intuitive browsing, and high-quality mobile purchase journeys.',
'technologies' => array( 'Shopify', 'Liquid', 'Storefront UX' ),
'url' => $works_url,
'image' => 'https://ethnicinfotech.com/wp-content/uploads/2025/08/Copy-of-Copy-of-Untitled-Design.png',
'position' => '50% 0%',
'accent' => '#0f766e',
'visual_note_a' => 'Merchandising clarity',
'visual_note_b' => 'Mobile conversion',
),
array(
'brand_mark' => 'R4',
'title' => 'Roughtrax 4X4',
'summary' => 'A Magento commerce experience for the off-road segment with stronger discovery, smoother buying flow, and better performance.',
'technologies' => array( 'Magento', 'Catalog UX', 'Performance' ),
'url' => $works_url,
'image' => 'https://ethnicinfotech.com/wp-content/uploads/2025/01/43fd8695be7ce97bbfd0b2b1f743c98b-1024x552.png',
'position' => '50% 0%',
'accent' => '#1d4ed8',
'visual_note_a' => 'Category-first navigation',
'visual_note_b' => '4x4 buyer journey',
),
);
$case_study_post_type = post_type_exists( 'thegem_pf_item' ) ? 'thegem_pf_item' : 'post';
$case_study_taxonomy = 'thegem_pf_item' === $case_study_post_type ? 'thegem_portfolios' : 'category';
$case_study_palette = array( '#ff6b6b', '#0ea5a4', '#2f6bff', '#7c3aed', '#f59e0b', '#0f766e', '#1d4ed8' );
$dynamic_case_studies = array();
$case_studies_query = new WP_Query(
array(
'post_type' => $case_study_post_type,
'post_status' => 'publish',
'posts_per_page' => (int) apply_filters( 'ethnic_home_case_studies_limit', 6 ),
'orderby' => 'date',
'order' => 'DESC',
'ignore_sticky_posts' => true,
'no_found_rows' => true,
)
);
if ( $case_studies_query->have_posts() ) {
while ( $case_studies_query->have_posts() ) {
$case_studies_query->the_post();
$case_id = (int) get_the_ID();
$case_title = trim( (string) get_the_title( $case_id ) );
if ( '' === $case_title ) {
continue;
}
$case_excerpt_source = has_excerpt( $case_id ) ? get_the_excerpt( $case_id ) : get_post_field( 'post_content', $case_id );
$case_summary = wp_trim_words( wp_strip_all_tags( strip_shortcodes( (string) $case_excerpt_source ) ), 24, '…' );
if ( '' === trim( $case_summary ) ) {
$case_summary = 'Tailored digital delivery focused on measurable business outcomes.';
}
$case_terms = get_the_terms( $case_id, $case_study_taxonomy );
if ( is_wp_error( $case_terms ) || empty( $case_terms ) ) {
$case_terms = array();
}
$case_technologies = array_values(
array_filter(
array_map(
static function ( $term ) {
return isset( $term->name ) ? trim( (string) $term->name ) : '';
},
$case_terms
)
)
);
$case_technologies = array_slice( $case_technologies, 0, 3 );
if ( empty( $case_technologies ) ) {
$case_technologies = array( 'Custom Development' );
}
$case_brand_mark = '';
$case_title_bits = preg_split( '/[\s\-_]+/u', $case_title );
if ( is_array( $case_title_bits ) ) {
foreach ( $case_title_bits as $case_title_bit ) {
$case_title_bit = trim( (string) $case_title_bit );
if ( '' === $case_title_bit ) {
continue;
}
$case_initial = function_exists( 'mb_substr' ) ? mb_substr( $case_title_bit, 0, 1 ) : substr( $case_title_bit, 0, 1 );
$case_initial = function_exists( 'mb_strtoupper' ) ? mb_strtoupper( $case_initial ) : strtoupper( $case_initial );
$case_brand_mark .= $case_initial;
$case_mark_length = function_exists( 'mb_strlen' ) ? mb_strlen( $case_brand_mark ) : strlen( $case_brand_mark );
if ( $case_mark_length >= 2 ) {
break;
}
}
}
if ( '' === $case_brand_mark ) {
$case_brand_mark = 'CS';
}
$case_image_url = get_the_post_thumbnail_url( $case_id, 'large' );
if ( ! $case_image_url ) {
$case_image_url = $visuals_url . 'placeholder-1-768x512.png';
}
$case_color = $case_study_palette[ count( $dynamic_case_studies ) % count( $case_study_palette ) ];
$dynamic_case_studies[] = array(
'brand_mark' => $case_brand_mark,
'title' => $case_title,
'summary' => $case_summary,
'technologies' => $case_technologies,
'url' => get_permalink( $case_id ),
'image' => $case_image_url,
'position' => '50% 0%',
'accent' => $case_color,
'visual_note_a' => $case_technologies[0],
'visual_note_b' => isset( $case_technologies[1] ) ? $case_technologies[1] : 'Project Delivery',
);
}
wp_reset_postdata();
}
if ( ! empty( $dynamic_case_studies ) ) {
$case_studies = $dynamic_case_studies;
}
$case_study_count = count( $case_studies );
$why_choose_us = array(
array(
'title' => 'Process that reduces surprises',
'copy' => 'We keep discovery, planning, delivery, and post-launch support visible so the team can make better decisions together.',
'details' => array( 'Clear scope framing', 'Structured delivery milestones', 'Testing and release readiness' ),
'accent' => '#2563eb',
'icon' => $visuals_url . 'green-icon-07.svg',
),
array(
'title' => 'Communication with real signal',
'copy' => 'Weekly visibility, practical tradeoff discussions, and direct collaboration with the people doing the work.',
'details' => array( 'Fast decision loops', 'Transparent status updates', 'Shared priorities and risks' ),
'accent' => '#ff6b6b',
'icon' => $visuals_url . 'green-icon-01.svg',
),
array(
'title' => 'Technical depth where it matters',
'copy' => 'From architecture and integrations to performance and platform operations, we build with long-term maintainability in mind.',
'details' => array( 'Cross-stack delivery', 'Integration-heavy execution', 'Scalability-minded implementation' ),
'accent' => '#0ea5a4',
'icon' => $visuals_url . 'green-icon-08.svg',
),
array(
'title' => 'Long-term support after launch',
'copy' => 'We stay available for iteration, maintenance, releases, and the next phase of product growth.',
'details' => array( 'Support and optimization', 'Roadmap follow-through', 'Team continuity over time' ),
'accent' => '#f59e0b',
'icon' => $visuals_url . 'green-icon-06.svg',
),
);
$testimonials = array(
array(
'name' => 'Joseph',
'role' => 'CEO, Founder - Fusion5',
'quote' => 'Before working with us, their team faced challenges finding a high-quality software partner. After launch, customer churn reduced, support efficiency improved, and user engagement increased significantly.',
'company' => 'Fusion5',
'rating_label' => 'Verified Review',
'accent' => '#2563eb',
),
array(
'name' => 'Jameson Chow',
'role' => 'Manager - MicaLighting',
'quote' => 'Our team was able to streamline internal operations and complete the project efficiently. The final solution improved visibility, communication, and day-to-day coordination.',
'company' => 'MicaLighting',
'rating_label' => 'Verified Review',
'accent' => '#0ea5a4',
),
array(
'name' => 'Sarah Mitchell',
'role' => 'Product Head - BlueHira',
'quote' => 'The team delivered a well-structured product with strong technical understanding and clear communication. The outcome helped us move faster and serve customers better.',
'company' => 'BlueHira',
'rating_label' => 'Verified Review',
'accent' => '#7c3aed',
),
array(
'name' => 'Daniel Morris',
'role' => 'Operations Director - Blue lagoon',
'quote' => 'From planning to execution, the collaboration was smooth and transparent. The delivered platform improved workflow efficiency and gave our operations team better control.',
'company' => 'Blue lagoon',
'rating_label' => 'Verified Review',
'accent' => '#f59e0b',
),
array(
'name' => 'Emily Carter',
'role' => 'Founder - Goodbac',
'quote' => 'The solution was thoughtfully designed and aligned perfectly with our business goals. It improved user trust, performance, and our ability to scale confidently.',
'company' => 'Goodbac',
'rating_label' => 'Verified Review',
'accent' => '#ec4899',
),
);
$testimonial_count = count( $testimonials );
$faqs = array(
array(
'question' => 'What services do you offer?',
'answer' => 'We provide end-to-end digital solutions including app development, eCommerce development, AI/ML solutions, DevOps services, game development, and blockchain development.',
),
array(
'question' => 'What industries do you work with?',
'answer' => 'We work with businesses across retail, healthcare, fintech, logistics, education, gaming, and manufacturing, delivering solutions tailored to each industry\'s needs.',
),
array(
'question' => 'Do you work with startups as well as enterprises?',
'answer' => 'Yes, we work with startups, growing businesses, and enterprise teams. Our approach is adapted based on project scope, business goals, and scalability requirements.',
),
array(
'question' => 'Can you handle both design and development?',
'answer' => 'Yes, we can support the full product journey including strategy, UI/UX design, development, testing, deployment, and post-launch support.',
),
array(
'question' => 'Which technologies do you specialize in?',
'answer' => 'Our expertise includes Shopify, Magento, React, Node.js, Python, Flutter, Kubernetes, Unity, Solidity, and major cloud platforms like AWS, Azure, and GCP.',
),
array(
'question' => 'Do you provide ongoing maintenance and support?',
'answer' => 'Yes, we offer ongoing maintenance, support, performance optimization, bug fixing, feature enhancements, and long-term technical assistance after launch.',
),
array(
'question' => 'How do you manage project communication?',
'answer' => 'We keep communication transparent through regular updates, milestone reviews, and collaborative planning so clients stay informed throughout the project lifecycle.',
),
array(
'question' => 'Can you help improve or scale an existing product?',
'answer' => 'Yes, we can optimize, redesign, modernize, or scale existing applications, eCommerce stores, platforms, and infrastructure based on your current business needs.',
),
array(
'question' => 'What engagement models do you offer?',
'answer' => 'We offer flexible engagement models including fixed-cost projects, dedicated teams, and hourly or on-demand support depending on the type of work.',
),
array(
'question' => 'How do we get started?',
'answer' => 'You can start by sharing your requirements through our contact form or scheduling a consultation call. We\'ll review your needs and suggest the best next steps.',
),
);
$insights_archive_page_id = (int) get_option( 'page_for_posts' );
$insights_archive_url = $insights_archive_page_id ? get_permalink( $insights_archive_page_id ) : get_post_type_archive_link( 'post' );
if ( ! $insights_archive_url || trailingslashit( $insights_archive_url ) === trailingslashit( home_url( '/' ) ) ) {
$insights_blog_page = get_page_by_path( 'blog' );
if ( $insights_blog_page instanceof WP_Post ) {
$insights_archive_url = get_permalink( $insights_blog_page );
}
}
if ( ! $insights_archive_url || trailingslashit( $insights_archive_url ) === trailingslashit( home_url( '/' ) ) ) {
$insights_archive_url = home_url( '/blog/' );
}
$insights_posts = array();
$insight_view_meta_keys = apply_filters(
'ethnic_home_insight_view_meta_keys',
array(
'post_views_count',
'wpb_post_views_count',
'post_views',
'view_count',
'views',
)
);
$insights_query = new WP_Query(
array(
'post_type' => 'post',
'post_status' => 'publish',
'posts_per_page' => 3,
'orderby' => 'date',
'order' => 'DESC',
'ignore_sticky_posts' => true,
'no_found_rows' => true,
)
);
if ( $insights_query->have_posts() ) {
while ( $insights_query->have_posts() ) {
$insights_query->the_post();
$post_id = (int) get_the_ID();
$insight_category_name = '';
$insight_categories = get_the_category( $post_id );
if ( ! empty( $insight_categories ) ) {
if ( class_exists( 'WPSEO_Primary_Term' ) ) {
$primary_term = new WPSEO_Primary_Term( 'category', $post_id );
$primary_term_id = (int) $primary_term->get_primary_term();
if ( $primary_term_id > 0 ) {
$primary_term_object = get_term( $primary_term_id, 'category' );
if ( $primary_term_object && ! is_wp_error( $primary_term_object ) ) {
$insight_category_name = $primary_term_object->name;
}
}
}
if ( '' === $insight_category_name && isset( $insight_categories[0] ) ) {
$insight_category_name = $insight_categories[0]->name;
}
}
$insight_excerpt_source = has_excerpt( $post_id ) ? get_the_excerpt( $post_id ) : get_post_field( 'post_content', $post_id );
$insight_excerpt = wp_trim_words( wp_strip_all_tags( strip_shortcodes( (string) $insight_excerpt_source ) ), 24, '…' );
if ( '' === trim( $insight_excerpt ) ) {
$insight_excerpt = 'Read the full insight from our team.';
}
$insight_content_text = wp_strip_all_tags( strip_shortcodes( (string) get_post_field( 'post_content', $post_id ) ) );
$insight_content_words = preg_split( '/\s+/u', trim( $insight_content_text ) );
$insight_word_count = is_array( $insight_content_words ) ? count( array_filter( $insight_content_words ) ) : 0;
$insight_reading_time = max( 1, (int) round( $insight_word_count / 200 ) );
$insight_views = null;
foreach ( $insight_view_meta_keys as $insight_view_meta_key ) {
$raw_view_count = get_post_meta( $post_id, $insight_view_meta_key, true );
if ( '' === $raw_view_count || null === $raw_view_count ) {
continue;
}
if ( is_numeric( $raw_view_count ) ) {
$insight_views = (int) $raw_view_count;
break;
}
$raw_view_digits = preg_replace( '/[^0-9]/', '', (string) $raw_view_count );
if ( '' !== $raw_view_digits ) {
$insight_views = (int) $raw_view_digits;
break;
}
}
$insight_image_url = get_the_post_thumbnail_url( $post_id, 'large' );
$insight_image_alt = '';
if ( $insight_image_url ) {
$insight_thumbnail_id = (int) get_post_thumbnail_id( $post_id );
$insight_image_alt = trim( (string) get_post_meta( $insight_thumbnail_id, '_wp_attachment_image_alt', true ) );
if ( '' === $insight_image_alt ) {
$insight_image_alt = get_the_title( $post_id );
}
}
$insights_posts[] = array(
'title' => get_the_title( $post_id ),
'url' => get_permalink( $post_id ),
'image_url' => $insight_image_url,
'image_alt' => $insight_image_alt,
'category' => $insight_category_name,
'date' => get_the_date( 'd M Y', $post_id ),
'date_iso' => get_the_date( 'c', $post_id ),
'excerpt' => $insight_excerpt,
'reading_time' => $insight_reading_time,
'views' => $insight_views,
);
}
wp_reset_postdata();
}
$industry_signals = array(
'Domain-aware discovery',
'Workflow-first planning',
'User journeys shaped by real operations',
);
ob_start();
?>
<div class="ethnic-homepage">
<section class="ethnic-home-hero" data-autoplay="6000" aria-label="Featured service slider">
<div class="ethnic-home-hero__network" aria-hidden="true">
<img src="<?php echo esc_url( $network_url ); ?>" alt="" loading="eager" decoding="async" />
</div>
<div class="ethnic-home-hero__intro-overlay" data-intro-overlay data-intro-duration="4000">
<div class="ethnic-home-hero__intro-overlay-inner">
<div class="ethnic-home-hero__intro-overlay-copy">
<p class="ethnic-home-hero__intro-overlay-kicker">Technology Solutions Company</p>
<h1>Building Tech Future With <span>AI Innovation!</span></h1>
<p class="ethnic-home-hero__intro-overlay-stat">#1 Software Development company in 2026</p>
<a class="ethnic-home-hero__intro-overlay-cta" href="<?php echo esc_url( $contact_url ); ?>">
<span class="ethnic-home-hero__intro-overlay-cta-icon" aria-hidden="true"></span>
Drop Your Queries
</a>
<div class="ethnic-home-hero__intro-overlay-partners" aria-label="Official partners">
<p>Official Partner Of:</p>
<ul>
<?php foreach ( $intro_partner_names as $intro_partner_name ) : ?>
<li><?php echo esc_html( $intro_partner_name ); ?></li>
<?php endforeach; ?>
</ul>
</div>
</div>
</div>
</div>
<div class="ethnic-home-hero__inner">
<div class="ethnic-home-hero__stage">
<?php foreach ( $slides as $index => $slide ) : ?>
<article
class="ethnic-home-hero__slide theme-<?php echo esc_attr( $slide['key'] ); ?><?php echo 0 === $index ? ' is-active' : ''; ?>"
data-slide-index="<?php echo esc_attr( $index ); ?>"
aria-hidden="<?php echo 0 === $index ? 'false' : 'true'; ?>"
>
<div class="ethnic-home-hero__copy">
<h2 class="ethnic-home-hero__title">
<span><?php echo esc_html( $slide['accent'] ); ?></span>
<?php echo esc_html( $slide['title'] ); ?>
</h2>
<div class="ethnic-home-hero__lead">
<strong><?php echo esc_html( sprintf( '%02d', $index + 1 ) ); ?></strong>
<span class="ethnic-home-hero__lead-line" aria-hidden="true"></span>
<p><?php echo esc_html( $slide['copy'] ); ?></p>
</div>
<a class="ethnic-home-hero__cta" href="<?php echo esc_url( $hero_anchor ); ?>">
<span class="ethnic-home-hero__cta-icon" aria-hidden="true"></span>
<?php echo esc_html( $slide['cta'] ); ?>
</a>
<div class="ethnic-home-hero__stack">
<p><?php echo esc_html( $slide['stack_label'] ); ?></p>
<ul>
<?php foreach ( $slide['stack_items'] as $item ) : ?>
<li><?php echo esc_html( $item ); ?></li>
<?php endforeach; ?>
</ul>
</div>
</div>
<div class="ethnic-home-hero__visual" aria-hidden="true">
<div class="ethnic-home-hero__blob"></div>
<div class="ethnic-home-hero__mockup">
<div class="ethnic-home-hero__mockup-bar">
<span></span>
<span></span>
<span></span>
</div>
<div class="ethnic-home-hero__mockup-body">
<div class="ethnic-home-hero__mockup-sidebar">
<span></span>
<span></span>
<span></span>
<span></span>
</div>
<div class="ethnic-home-hero__mockup-panel">
<span class="ethnic-home-hero__visual-label"><?php echo esc_html( $slide['visual_label'] ); ?></span>
<h3><?php echo esc_html( $slide['visual_heading'] ); ?></h3>
<div class="ethnic-home-hero__card-grid">
<?php foreach ( $slide['visual_cards'] as $card ) : ?>
<div class="ethnic-home-hero__card-item"><?php echo esc_html( $card ); ?></div>
<?php endforeach; ?>
</div>
</div>
</div>
</div>
<div class="ethnic-home-hero__float ethnic-home-hero__float--top"><?php echo esc_html( $slide['float_top'] ); ?></div>
<div class="ethnic-home-hero__float ethnic-home-hero__float--bottom"><?php echo esc_html( $slide['float_bottom'] ); ?></div>
</div>
</article>
<?php endforeach; ?>
</div>
<div class="ethnic-home-hero__nav">
<div class="ethnic-home-hero__counter">
<span data-hero-current>01</span>
<span>/</span>
<span><?php echo esc_html( sprintf( '%02d', count( $slides ) ) ); ?></span>
</div>
<div class="ethnic-home-hero__dots" role="tablist" aria-label="Slider navigation">
<?php foreach ( $slides as $index => $slide ) : ?>
<button
type="button"
class="ethnic-home-hero__dot<?php echo 0 === $index ? ' is-active' : ''; ?>"
data-hero-dot="<?php echo esc_attr( $index ); ?>"
aria-label="<?php echo esc_attr( sprintf( 'Show slide %d: %s', $index + 1, $slide['accent'] ) ); ?>"
aria-selected="<?php echo 0 === $index ? 'true' : 'false'; ?>"
tabindex="<?php echo 0 === $index ? '0' : '-1'; ?>"
></button>
<?php endforeach; ?>
</div>
<div class="ethnic-home-hero__arrows">
<button type="button" class="ethnic-home-hero__arrow" data-hero-prev aria-label="Previous slide">
<span aria-hidden="true">←</span>
</button>
<button type="button" class="ethnic-home-hero__arrow" data-hero-next aria-label="Next slide">
<span aria-hidden="true">→</span>
</button>
</div>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--trust" id="home-trust">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__trust-layout">
<div class="ethnic-homepage__trust-copy">
<div class="ethnic-homepage__section-heading">
<span class="ethnic-homepage__kicker">Trust signals</span>
<h2 class="ethnic-homepage__title">Trusted by teams that need speed, stability, and long-term product support.</h2>
<p class="ethnic-homepage__description">Our experience, delivery history, and platform familiarity help clients move with confidence when choosing a software development company, technology solutions company, or long-term IT services company.</p>
</div>
<div class="ethnic-homepage__trust-note">
<span class="ethnic-homepage__trust-note-label">Partnership-ready delivery</span>
<p>Aligned with commerce, cloud, and CRM ecosystems that modern product teams already depend on.</p>
</div>
</div>
<div class="ethnic-homepage__trust-mosaic">
<?php foreach ( $trust_metrics as $metric_index => $metric ) : ?>
<article class="ethnic-homepage__metric-card ethnic-homepage__metric-card--tile">
<span class="ethnic-homepage__metric-index"><?php echo esc_html( sprintf( '%02d', $metric_index + 1 ) ); ?></span>
<div class="ethnic-homepage__metric-value">
<span data-ethnic-count-to="<?php echo esc_attr( $metric['value'] ); ?>"><?php echo esc_html( $metric['value'] ); ?></span>
<?php if ( ! empty( $metric['suffix'] ) ) : ?>
<span><?php echo esc_html( $metric['suffix'] ); ?></span>
<?php endif; ?>
</div>
<h3><?php echo esc_html( $metric['label'] ); ?></h3>
<p><?php echo esc_html( $metric['description'] ); ?></p>
</article>
<?php endforeach; ?>
<article class="ethnic-homepage__metric-card ethnic-homepage__metric-card--wide">
<div>
<div class="ethnic-homepage__metric-value ethnic-homepage__metric-value--text">Certifications and platform ecosystems</div>
<p>Working across leading commerce, cloud, and CRM ecosystems to reduce delivery risk and accelerate execution.</p>
</div>
<div class="ethnic-homepage__tag-list">
<?php foreach ( $partner_tags as $tag ) : ?>
<span><?php echo esc_html( $tag ); ?></span>
<?php endforeach; ?>
</div>
</article>
</div>
</div>
<div class="ethnic-homepage__logo-band" aria-label="Selected client logos">
<div class="ethnic-homepage__logo-grid">
<?php foreach ( $logo_paths as $logo_path ) : ?>
<div class="ethnic-homepage__logo-item">
<img src="<?php echo esc_url( $home_uploads_url . $logo_path ); ?>" alt="" loading="lazy" decoding="async" />
</div>
<?php endforeach; ?>
</div>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--services" id="home-services">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__services-layout">
<div class="ethnic-homepage__services-experience" data-service-showcase>
<div class="ethnic-homepage__service-grid" role="tablist" aria-label="Core service categories">
<?php foreach ( $services as $service_index => $service ) : ?>
<?php
$service_slug = sanitize_html_class( $service['key'] );
$panel_id = 'ethnic-service-panel-' . $service_slug;
$tab_id = 'ethnic-service-tab-' . $service_slug;
?>
<button
type="button"
class="ethnic-homepage__service-tile<?php echo 0 === $service_index ? ' is-active' : ''; ?>"
id="<?php echo esc_attr( $tab_id ); ?>"
role="tab"
data-service-card
data-service-target="<?php echo esc_attr( $panel_id ); ?>"
aria-controls="<?php echo esc_attr( $panel_id ); ?>"
aria-selected="<?php echo 0 === $service_index ? 'true' : 'false'; ?>"
tabindex="<?php echo 0 === $service_index ? '0' : '-1'; ?>"
style="--service-accent: <?php echo esc_attr( $service['accent'] ); ?>; --service-media-position: <?php echo esc_attr( $service['position'] ); ?>;"
>
<img class="ethnic-homepage__service-tile-media" src="<?php echo esc_url( $service['image'] ); ?>" alt="<?php echo esc_attr( $service['title'] ); ?>" loading="lazy" decoding="async" />
<span class="ethnic-homepage__service-tile-badge"><?php echo esc_html( $service['badge'] ); ?></span>
<span class="ethnic-homepage__service-tile-copy">
<span class="ethnic-homepage__service-tile-eyebrow"><?php echo esc_html( $service['eyebrow'] ); ?></span>
<strong><?php echo esc_html( $service['title'] ); ?></strong>
</span>
<span class="ethnic-homepage__service-tile-arrow" aria-hidden="true">→</span>
</button>
<?php endforeach; ?>
</div>
<div class="ethnic-homepage__service-panel-shell">
<?php foreach ( $services as $service_index => $service ) : ?>
<?php
$service_slug = sanitize_html_class( $service['key'] );
$panel_id = 'ethnic-service-panel-' . $service_slug;
$tab_id = 'ethnic-service-tab-' . $service_slug;
?>
<article
id="<?php echo esc_attr( $panel_id ); ?>"
class="ethnic-homepage__service-detail<?php echo 0 === $service_index ? ' is-active' : ''; ?>"
role="tabpanel"
data-service-panel
aria-labelledby="<?php echo esc_attr( $tab_id ); ?>"
style="--service-accent: <?php echo esc_attr( $service['accent'] ); ?>; --service-panel-image: url(<?php echo esc_url( $service['image'] ); ?>); --service-media-position: <?php echo esc_attr( $service['position'] ); ?>;"
<?php echo 0 === $service_index ? '' : ' hidden'; ?>
>
<div class="ethnic-homepage__service-detail-topline">
<span class="ethnic-homepage__kicker">Core service categories</span>
<span class="ethnic-homepage__service-detail-count"><?php echo esc_html( sprintf( '%02d / %02d', $service_index + 1, count( $services ) ) ); ?></span>
</div>
<div class="ethnic-homepage__service-detail-meta">
<span class="ethnic-homepage__service-detail-label"><?php echo esc_html( $service['eyebrow'] ); ?></span>
<span class="ethnic-homepage__service-detail-badge"><?php echo esc_html( $service['badge'] ); ?></span>
</div>
<h2 class="ethnic-homepage__title"><?php echo esc_html( $service['title'] ); ?></h2>
<div class="ethnic-homepage__service-detail-rule" aria-hidden="true"></div>
<p class="ethnic-homepage__description"><?php echo esc_html( $service['copy'] ); ?></p>
<ul class="ethnic-homepage__service-detail-list">
<?php foreach ( $service['detail_items'] as $detail_item ) : ?>
<li><?php echo esc_html( $detail_item ); ?></li>
<?php endforeach; ?>
</ul>
<a class="ethnic-homepage__service-detail-cta" href="<?php echo esc_url( $service['link'] ); ?>">Explore service</a>
</article>
<?php endforeach; ?>
</div>
</div>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--technology" id="home-technology">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__technology-stack">
<div class="ethnic-homepage__section-heading ethnic-homepage__technology-heading">
<span class="ethnic-homepage__kicker">Technology expertise</span>
<h2 class="ethnic-homepage__title">Technology Expertise</h2>
<p class="ethnic-homepage__description">We organize our delivery stack into clear capability areas so business teams can quickly understand how the technology supports growth, operations, and product execution.</p>
</div>
<div class="ethnic-homepage__technology-capability-grid">
<?php foreach ( $technology_capabilities as $technology_capability ) : ?>
<article class="ethnic-homepage__technology-capability" style="--technology-accent: <?php echo esc_attr( $technology_capability['accent'] ); ?>;">
<div class="ethnic-homepage__technology-capability-head">
<span class="ethnic-homepage__technology-capability-icon" aria-hidden="true"><?php echo esc_html( $technology_capability['icon'] ); ?></span>
<?php $technology_count = count( $technology_capability['items'] ); ?>
<span class="ethnic-homepage__technology-capability-count"><?php echo esc_html( sprintf( '%02d %s', $technology_count, 1 === $technology_count ? 'tool' : 'tools' ) ); ?></span>
</div>
<h3><?php echo esc_html( $technology_capability['title'] ); ?></h3>
<p><?php echo esc_html( $technology_capability['description'] ); ?></p>
<div class="ethnic-homepage__technology-capability-badges" aria-label="<?php echo esc_attr( $technology_capability['title'] . ' technologies' ); ?>">
<?php foreach ( $technology_capability['items'] as $technology_item ) : ?>
<span class="ethnic-homepage__technology-capability-badge"><?php echo esc_html( $technology_item ); ?></span>
<?php endforeach; ?>
</div>
</article>
<?php endforeach; ?>
</div>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--industries" id="home-industries">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__industry-slider" data-industry-slider data-loop-slider data-loop-clones="4">
<div class="ethnic-homepage__industry-slider-head">
<div class="ethnic-homepage__section-heading ethnic-homepage__industry-heading">
<span class="ethnic-homepage__kicker">Industries served</span>
<h2 class="ethnic-homepage__title">Industry-Specific Software Development Expertise</h2>
<p class="ethnic-homepage__description">We build tailored digital solutions for multiple industries, combining the right product strategy, platform architecture, and delivery model for each business context.</p>
</div>
<a class="ethnic-homepage__industry-cta" href="<?php echo esc_url( $industries_url ); ?>">Industries We Serve</a>
</div>
<div class="ethnic-homepage__industry-slider-frame">
<div
class="ethnic-homepage__industry-slider-track"
id="ethnic-industry-slider-track"
data-industry-track
data-loop-track
tabindex="0"
role="region"
aria-roledescription="carousel"
aria-label="Industry-specific software development expertise"
>
<?php foreach ( $industries as $industry_index => $industry ) : ?>
<article
class="ethnic-homepage__industry-card"
data-industry-slide
data-loop-slide
role="group"
aria-roledescription="slide"
aria-label="<?php echo esc_attr( $industry['title'] . ', slide ' . ( $industry_index + 1 ) . ' of ' . $industry_count ); ?>"
style="--industry-accent: <?php echo esc_attr( $industry['accent'] ); ?>; --industry-image: url('<?php echo esc_url( $industry['image'] ); ?>'); --industry-position: <?php echo esc_attr( $industry['position'] ); ?>;"
>
<div class="ethnic-homepage__industry-card-body">
<span class="ethnic-homepage__industry-card-icon" aria-hidden="true"><?php echo esc_html( $industry['icon'] ); ?></span>
<div class="ethnic-homepage__industry-card-copy">
<span class="ethnic-homepage__industry-card-label"><?php echo esc_html( sprintf( '%02d', $industry_index + 1 ) ); ?></span>
<h3><?php echo esc_html( $industry['title'] ); ?></h3>
<span class="ethnic-homepage__industry-card-divider" aria-hidden="true"></span>
<p><?php echo esc_html( $industry['copy'] ); ?></p>
</div>
</div>
</article>
<?php endforeach; ?>
</div>
<div class="ethnic-homepage__industry-slider-controls" aria-label="Industry slider navigation">
<button type="button" class="ethnic-homepage__industry-slider-arrow ethnic-homepage__slider-arrow ethnic-homepage__industry-slider-arrow--prev" data-industry-prev data-loop-prev aria-controls="ethnic-industry-slider-track" aria-label="Show previous industry">
<span aria-hidden="true">←</span>
</button>
<button type="button" class="ethnic-homepage__industry-slider-arrow ethnic-homepage__slider-arrow ethnic-homepage__industry-slider-arrow--next" data-industry-next data-loop-next aria-controls="ethnic-industry-slider-track" aria-label="Show next industry">
<span aria-hidden="true">→</span>
</button>
</div>
</div>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--cases" id="home-cases">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__case-intro">
<div class="ethnic-homepage__section-heading ethnic-homepage__case-heading">
<span class="ethnic-homepage__kicker">Case Study</span>
<h2 class="ethnic-homepage__title">The Glimpse Of The Solutions We Have Created For Our Global Clients</h2>
</div>
<div class="ethnic-homepage__case-intro-copy">
<p class="ethnic-homepage__description">We build innovative and tailored digital solutions that help businesses transform ideas into scalable digital products.</p>
<a class="ethnic-homepage__case-cta" href="<?php echo esc_url( $works_url ); ?>">Case Study</a>
</div>
</div>
<div class="ethnic-homepage__case-slider" data-loop-slider data-loop-clones="1">
<div class="ethnic-homepage__case-slider-frame">
<div
class="ethnic-homepage__case-slider-track"
id="ethnic-case-slider-track"
data-loop-track
tabindex="0"
role="region"
aria-roledescription="carousel"
aria-label="Case studies and our work"
>
<?php foreach ( $case_studies as $case_index => $case_study ) : ?>
<article
class="ethnic-homepage__case-slide"
data-loop-slide
role="group"
aria-roledescription="slide"
aria-label="<?php echo esc_attr( $case_study['title'] . ', slide ' . ( $case_index + 1 ) . ' of ' . $case_study_count ); ?>"
style="--case-accent: <?php echo esc_attr( $case_study['accent'] ); ?>; --case-image: url('<?php echo esc_url( $case_study['image'] ); ?>'); --case-position: <?php echo esc_attr( $case_study['position'] ); ?>;"
>
<div class="ethnic-homepage__case-slide-copy">
<div class="ethnic-homepage__case-brand">
<span class="ethnic-homepage__case-brand-kicker">Case study</span>
</div>
<div class="ethnic-homepage__case-text">
<h3><?php echo esc_html( $case_study['title'] ); ?></h3>
<p><?php echo esc_html( $case_study['summary'] ); ?></p>
</div>
<div class="ethnic-homepage__case-slide-footer">
<div class="ethnic-homepage__case-technologies" aria-label="<?php echo esc_attr( $case_study['title'] . ' technologies' ); ?>">
<span class="ethnic-homepage__case-technologies-label">Technologies</span>
<div class="ethnic-homepage__case-technologies-list">
<?php foreach ( $case_study['technologies'] as $technology ) : ?>
<span class="ethnic-homepage__case-technologies-pill"><?php echo esc_html( $technology ); ?></span>
<?php endforeach; ?>
</div>
</div>
<?php if ( ! empty( $case_study['url'] ) ) : ?>
<a class="ethnic-homepage__case-slide-cta" href="<?php echo esc_url( $case_study['url'] ); ?>">View Case Study</a>
<?php endif; ?>
</div>
</div>
<div class="ethnic-homepage__case-slide-visual" aria-hidden="true">
<div class="ethnic-homepage__case-device">
<div class="ethnic-homepage__case-device-bar" aria-hidden="true">
<span></span>
<span></span>
<span></span>
</div>
<div class="ethnic-homepage__case-device-screen">
<img class="ethnic-homepage__case-device-image" src="<?php echo esc_url( $case_study['image'] ); ?>" alt="" loading="lazy" decoding="async" />
<div class="ethnic-homepage__case-device-chip ethnic-homepage__case-device-chip--top"><?php echo esc_html( $case_study['visual_note_a'] ); ?></div>
<div class="ethnic-homepage__case-device-chip ethnic-homepage__case-device-chip--bottom"><?php echo esc_html( $case_study['visual_note_b'] ); ?></div>
</div>
</div>
</div>
</article>
<?php endforeach; ?>
</div>
</div>
<div class="ethnic-homepage__slider-nav ethnic-homepage__case-slider-nav" aria-label="Case study slider navigation">
<div class="ethnic-homepage__slider-progress ethnic-homepage__case-slider-progress">
<div class="ethnic-homepage__slider-count">
<span class="ethnic-homepage__slider-current" data-loop-current>01</span>
<span class="ethnic-homepage__slider-divider">/</span>
<span class="ethnic-homepage__slider-total"><?php echo esc_html( sprintf( '%02d', $case_study_count ) ); ?></span>
</div>
<div class="ethnic-homepage__slider-dots" role="tablist" aria-label="Case study slides">
<?php foreach ( $case_studies as $case_index => $case_study ) : ?>
<button
type="button"
class="ethnic-homepage__slider-dot<?php echo 0 === $case_index ? ' is-active' : ''; ?>"
data-loop-dot="<?php echo esc_attr( $case_index ); ?>"
aria-label="<?php echo esc_attr( sprintf( 'Show slide %d: %s', $case_index + 1, $case_study['title'] ) ); ?>"
aria-selected="<?php echo 0 === $case_index ? 'true' : 'false'; ?>"
tabindex="<?php echo 0 === $case_index ? '0' : '-1'; ?>"
></button>
<?php endforeach; ?>
</div>
</div>
<div class="ethnic-homepage__slider-arrows ethnic-homepage__case-slider-controls">
<button type="button" class="ethnic-homepage__slider-arrow ethnic-homepage__case-slider-arrow ethnic-homepage__case-slider-arrow--prev" data-loop-prev aria-controls="ethnic-case-slider-track" aria-label="Show previous case study">
<span aria-hidden="true">←</span>
</button>
<button type="button" class="ethnic-homepage__slider-arrow ethnic-homepage__case-slider-arrow ethnic-homepage__case-slider-arrow--next" data-loop-next aria-controls="ethnic-case-slider-track" aria-label="Show next case study">
<span aria-hidden="true">→</span>
</button>
</div>
</div>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--why" id="home-why-us">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__section-heading">
<span class="ethnic-homepage__kicker">Why choose us</span>
<h2 class="ethnic-homepage__title">Why clients choose us for process, communication, technical depth, and ongoing support.</h2>
<p class="ethnic-homepage__description">We keep delivery visible, communication direct, and technical decisions grounded in business priorities so teams can move faster with less uncertainty.</p>
</div>
<div class="ethnic-homepage__why-timeline">
<?php foreach ( $why_choose_us as $why_index => $why ) : ?>
<article class="ethnic-homepage__why-step" style="--why-accent: <?php echo esc_attr( $why['accent'] ); ?>;">
<img class="ethnic-homepage__why-step-icon" src="<?php echo esc_url( $why['icon'] ); ?>" alt="" aria-hidden="true" loading="lazy" decoding="async" />
<span class="ethnic-homepage__why-step-number"><?php echo esc_html( sprintf( '%02d', $why_index + 1 ) ); ?></span>
<h3><?php echo esc_html( $why['title'] ); ?></h3>
<p><?php echo esc_html( $why['copy'] ); ?></p>
<ul>
<?php foreach ( $why['details'] as $detail ) : ?>
<li><?php echo esc_html( $detail ); ?></li>
<?php endforeach; ?>
</ul>
</article>
<?php endforeach; ?>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--feedback" id="home-feedback">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__feedback-shell">
<div class="ethnic-homepage__feedback-heading">
<h2 class="ethnic-homepage__title">The Voices of Success</h2>
<p class="ethnic-homepage__description">Explore client experiences reflecting our transformative digital solutions and software development expertise.</p>
</div>
<div class="ethnic-homepage__testimonial-slider" data-loop-slider data-loop-clones="1">
<div class="ethnic-homepage__testimonial-slider-frame">
<div
class="ethnic-homepage__testimonial-slider-track"
id="ethnic-testimonial-slider-track"
data-loop-track
tabindex="0"
role="region"
aria-roledescription="carousel"
aria-label="Client feedback testimonials"
>
<?php foreach ( $testimonials as $testimonial_index => $testimonial ) : ?>
<article
class="ethnic-homepage__testimonial-slide"
data-loop-slide
role="group"
aria-roledescription="slide"
aria-label="<?php echo esc_attr( $testimonial['name'] . ', slide ' . ( $testimonial_index + 1 ) . ' of ' . $testimonial_count ); ?>"
style="--testimonial-accent: <?php echo esc_attr( $testimonial['accent'] ); ?>;"
>
<div class="ethnic-homepage__testimonial-content">
<div class="ethnic-homepage__testimonial-top">
<div class="ethnic-homepage__testimonial-person">
<h3><?php echo esc_html( $testimonial['name'] ); ?></h3>
<p><?php echo esc_html( $testimonial['role'] ); ?></p>
</div>
</div>
<p class="ethnic-homepage__testimonial-quote"><?php echo esc_html( $testimonial['quote'] ); ?></p>
<div class="ethnic-homepage__testimonial-meta">
<div class="ethnic-homepage__testimonial-company" aria-label="<?php echo esc_attr( $testimonial['company'] ); ?>">
<span class="ethnic-homepage__testimonial-company-name"><?php echo esc_html( $testimonial['company'] ); ?></span>
</div>
<div class="ethnic-homepage__testimonial-rating">
<span class="ethnic-homepage__testimonial-stars" aria-hidden="true">★★★★★</span>
<span><?php echo esc_html( $testimonial['rating_label'] ); ?></span>
</div>
</div>
</div>
</article>
<?php endforeach; ?>
</div>
</div>
<div class="ethnic-homepage__slider-nav ethnic-homepage__testimonial-slider-nav" aria-label="Testimonial slider navigation">
<div class="ethnic-homepage__slider-progress ethnic-homepage__testimonial-slider-progress">
<div class="ethnic-homepage__slider-count">
<span class="ethnic-homepage__slider-current" data-loop-current>01</span>
<span class="ethnic-homepage__slider-divider">/</span>
<span class="ethnic-homepage__slider-total"><?php echo esc_html( sprintf( '%02d', $testimonial_count ) ); ?></span>
</div>
<div class="ethnic-homepage__slider-dots" role="tablist" aria-label="Testimonial slides">
<?php foreach ( $testimonials as $testimonial_index => $testimonial ) : ?>
<button
type="button"
class="ethnic-homepage__slider-dot<?php echo 0 === $testimonial_index ? ' is-active' : ''; ?>"
data-loop-dot="<?php echo esc_attr( $testimonial_index ); ?>"
aria-label="<?php echo esc_attr( sprintf( 'Show slide %d: %s', $testimonial_index + 1, $testimonial['name'] ) ); ?>"
aria-selected="<?php echo 0 === $testimonial_index ? 'true' : 'false'; ?>"
tabindex="<?php echo 0 === $testimonial_index ? '0' : '-1'; ?>"
></button>
<?php endforeach; ?>
</div>
</div>
<div class="ethnic-homepage__slider-arrows ethnic-homepage__testimonial-slider-controls">
<button type="button" class="ethnic-homepage__slider-arrow ethnic-homepage__testimonial-slider-arrow ethnic-homepage__testimonial-slider-arrow--prev" data-loop-prev aria-controls="ethnic-testimonial-slider-track" aria-label="Show previous testimonial">
<span aria-hidden="true">←</span>
</button>
<button type="button" class="ethnic-homepage__slider-arrow ethnic-homepage__testimonial-slider-arrow ethnic-homepage__testimonial-slider-arrow--next" data-loop-next aria-controls="ethnic-testimonial-slider-track" aria-label="Show next testimonial">
<span aria-hidden="true">→</span>
</button>
</div>
</div>
</div>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--insights" id="home-insights">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__insights-layout">
<div class="ethnic-homepage__insights-intro">
<div class="ethnic-homepage__insights-intro-inner">
<h2 class="ethnic-homepage__title">Latest Blogs</h2>
<span class="ethnic-homepage__insights-divider" aria-hidden="true"></span>
<p class="ethnic-homepage__description">Browse through the technical knowledge, latest trends, and practical insights our experienced team would like to share with you.</p>
<a class="ethnic-homepage__insights-cta" href="<?php echo esc_url( $insights_archive_url ); ?>">
<span class="ethnic-homepage__insights-cta-icon" aria-hidden="true"></span>
Get All Insights
</a>
</div>
</div>
<div class="ethnic-homepage__insights-slider-shell">
<?php if ( ! empty( $insights_posts ) ) : ?>
<div class="ethnic-homepage__insights-track" data-insights-scroller tabindex="0" role="region" aria-label="Latest blog insights">
<?php foreach ( $insights_posts as $insight ) : ?>
<article class="ethnic-homepage__insight-card">
<a class="ethnic-homepage__insight-link" href="<?php echo esc_url( $insight['url'] ); ?>">
<div class="ethnic-homepage__insight-media">
<?php if ( $insight['image_url'] ) : ?>
<img src="<?php echo esc_url( $insight['image_url'] ); ?>" alt="<?php echo esc_attr( $insight['image_alt'] ); ?>" loading="lazy" decoding="async" />
<?php else : ?>
<div class="ethnic-homepage__insight-media-fallback" aria-hidden="true">
<span>Latest Insight</span>
</div>
<?php endif; ?>
</div>
<div class="ethnic-homepage__insight-body">
<div class="ethnic-homepage__insight-top-meta">
<?php if ( $insight['category'] ) : ?>
<span class="ethnic-homepage__insight-category"><?php echo esc_html( $insight['category'] ); ?></span>
<?php endif; ?>
<time datetime="<?php echo esc_attr( $insight['date_iso'] ); ?>"><?php echo esc_html( $insight['date'] ); ?></time>
</div>
<h3><?php echo esc_html( $insight['title'] ); ?></h3>
<span class="ethnic-homepage__insight-rule" aria-hidden="true"></span>
<p><?php echo esc_html( $insight['excerpt'] ); ?></p>
<div class="ethnic-homepage__insight-footer-meta">
<span><?php echo esc_html( sprintf( '%d Min Read', (int) $insight['reading_time'] ) ); ?></span>
<?php if ( null !== $insight['views'] ) : ?>
<span><?php echo esc_html( number_format_i18n( (int) $insight['views'] ) . ' Views' ); ?></span>
<?php endif; ?>
</div>
</div>
</a>
</article>
<?php endforeach; ?>
</div>
<?php else : ?>
<div class="ethnic-homepage__insights-empty">
<p>New insights are on the way. Explore our blog archive for the latest updates.</p>
<a class="ethnic-homepage__button ethnic-homepage__button--secondary" href="<?php echo esc_url( $insights_archive_url ); ?>">View Blog Archive</a>
</div>
<?php endif; ?>
</div>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--faq" id="home-faq">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__faq-shell">
<div class="ethnic-homepage__faq-heading">
<h2 class="ethnic-homepage__title">Frequently Asked Questions</h2>
<p class="ethnic-homepage__description">Find quick answers about our services, process, technologies, and engagement models.</p>
</div>
<div class="ethnic-homepage__faq-list" data-faq-accordion>
<?php foreach ( $faqs as $faq_index => $faq_item ) : ?>
<?php
$faq_trigger_id = 'ethnic-faq-trigger-' . ( $faq_index + 1 );
$faq_panel_id = 'ethnic-faq-panel-' . ( $faq_index + 1 );
?>
<article class="ethnic-homepage__faq-item" data-faq-item>
<h3>
<button
type="button"
class="ethnic-homepage__faq-trigger"
id="<?php echo esc_attr( $faq_trigger_id ); ?>"
data-faq-trigger
aria-expanded="false"
aria-controls="<?php echo esc_attr( $faq_panel_id ); ?>"
>
<span class="ethnic-homepage__faq-question"><?php echo esc_html( $faq_item['question'] ); ?></span>
<span class="ethnic-homepage__faq-icon" aria-hidden="true">
<span class="ethnic-homepage__faq-icon-bar ethnic-homepage__faq-icon-bar--horizontal"></span>
<span class="ethnic-homepage__faq-icon-bar ethnic-homepage__faq-icon-bar--vertical"></span>
</span>
</button>
</h3>
<div
class="ethnic-homepage__faq-panel"
id="<?php echo esc_attr( $faq_panel_id ); ?>"
data-faq-panel
role="region"
aria-labelledby="<?php echo esc_attr( $faq_trigger_id ); ?>"
hidden
>
<div class="ethnic-homepage__faq-panel-inner">
<p><?php echo esc_html( $faq_item['answer'] ); ?></p>
</div>
</div>
</article>
<?php endforeach; ?>
</div>
<div class="ethnic-homepage__faq-cta">
<p>Still have questions? Let's discuss your project.</p>
<a class="ethnic-homepage__button ethnic-homepage__button--primary" href="<?php echo esc_url( $hero_anchor ); ?>">Book Consultation</a>
</div>
</div>
</div>
</section>
<section class="ethnic-homepage__section ethnic-homepage__section--cta" id="home-contact-form">
<div class="ethnic-homepage__shell">
<div class="ethnic-homepage__cta-layout">
<div class="ethnic-homepage__cta-copy">
<span class="ethnic-homepage__kicker">Start the conversation</span>
<h2 class="ethnic-homepage__title">Need a technology solutions company for your next product, platform, or modernization initiative?</h2>
<p class="ethnic-homepage__description">Book a consultation, request a proposal, or share your requirements here and our team will recommend the best next step.</p>
<div class="ethnic-homepage__button-row">
<a class="ethnic-homepage__button ethnic-homepage__button--primary" href="<?php echo esc_url( $hero_anchor ); ?>">Book Consultation</a>
<a class="ethnic-homepage__button ethnic-homepage__button--secondary" href="<?php echo esc_url( $contact_url ); ?>">Request Proposal</a>
</div>
<div class="ethnic-homepage__contact-points">
<p><strong>Email:</strong> info@ethnicinfotech.com</p>
<p><strong>Phone:</strong> +91 7874-341-000</p>
<p><strong>Explore:</strong> <a href="<?php echo esc_url( $services_url ); ?>">Services</a> <span>/</span> <a href="<?php echo esc_url( $about_url ); ?>">About</a> <span>/</span> <a href="<?php echo esc_url( $works_url ); ?>">Our Works</a></p>
</div>
</div>
<div class="ethnic-homepage__form-card">
<div class="ethnic-homepage__form-header">
<span class="ethnic-homepage__form-kicker">Request a proposal</span>
<h3>Share a few details and we will route the right next step.</h3>
</div>
<div class="ethnic-homepage__form-shell">
<?php echo $form_markup; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped ?>
</div>
</div>
</div>
</div>
</section>
</div>
<?php
return ob_get_clean();
}
}
if ( ! function_exists( 'ethnic_home_hero_elementor_stack' ) ) {
function ðnic_home_hero_elementor_stack() {
if ( ! isset( $GLOBALS['ethnic_home_hero_elementor_stack'] ) || ! is_array( $GLOBALS['ethnic_home_hero_elementor_stack'] ) ) {
$GLOBALS['ethnic_home_hero_elementor_stack'] = array();
}
return $GLOBALS['ethnic_home_hero_elementor_stack'];
}
}
if ( ! function_exists( 'ethnic_home_hero_track_elementor_document' ) ) {
function ethnic_home_hero_track_elementor_document( $data, $post_id ) {
if ( ! ethnic_home_hero_should_render() || empty( $data ) ) {
return $data;
}
$stack = ðnic_home_hero_elementor_stack();
$stack[] = (int) $post_id;
return $data;
}
add_filter( 'elementor/frontend/builder_content_data', 'ethnic_home_hero_track_elementor_document', 10, 2 );
}
if ( ! function_exists( 'ethnic_home_hero_prepend_elementor_markup' ) ) {
function ethnic_home_hero_prepend_elementor_markup( $content ) {
if ( ! ethnic_home_hero_should_render() || false !== strpos( $content, 'class="ethnic-homepage"' ) ) {
return $content;
}
$stack = ethnic_home_hero_elementor_stack();
$current_document = ! empty( $stack ) ? (int) end( $stack ) : 0;
$target_document = ethnic_home_hero_target_page_id();
if ( ! $target_document || $current_document !== $target_document ) {
return $content;
}
return ethnic_home_hero_markup();
}
add_filter( 'elementor/frontend/the_content', 'ethnic_home_hero_prepend_elementor_markup', 5 );
}
if ( ! function_exists( 'ethnic_home_hero_untrack_elementor_document' ) ) {
function ethnic_home_hero_untrack_elementor_document() {
$stack = ðnic_home_hero_elementor_stack();
if ( ! empty( $stack ) ) {
array_pop( $stack );
}
}
add_action( 'elementor/frontend/get_builder_content', 'ethnic_home_hero_untrack_elementor_document', 10, 3 );
}