 {"id":94,"date":"2022-09-16T07:04:53","date_gmt":"2022-09-16T07:04:53","guid":{"rendered":"http:\/\/localhost\/printco\/?page_id=94"},"modified":"2025-08-07T08:39:06","modified_gmt":"2025-08-07T06:39:06","slug":"services","status":"publish","type":"page","link":"https:\/\/printafrique.com\/?page_id=94","title":{"rendered":"Services"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"94\" class=\"elementor elementor-94\" data-elementor-post-type=\"page\">\n\t\t\t\t        <section class=\"elementor-section elementor-top-section elementor-element elementor-element-4bba5b2 elementor-section-boxed elementor-section-height-default elementor-section-height-default pxl-type-header-none pxl-bg-color-none pxl-row-scroll-none\" data-id=\"4bba5b2\" data-element_type=\"section\">\n\n                \n                <div class=\"elementor-container elementor-column-gap-default \">\n                <div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-5b0a8ac pxl-col-none pxl-column-none\" data-id=\"5b0a8ac\" data-element_type=\"column\">\r\n        <div class=\"elementor-widget-wrap elementor-element-populated\">\r\n                     \r\n        \t\t<div class=\"elementor-element elementor-element-9ea599c elementor-widget elementor-widget-html\" data-id=\"9ea599c\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n    <meta charset=\"UTF-8\">\r\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n    <title>Printafrique Services<\/title>\r\n    <!-- Recommended to link Google Fonts in the head for better performance -->\r\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\r\n    <link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\r\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Poppins:wght@400;600;700&display=swap\" rel=\"stylesheet\">\r\n<\/head>\r\n<body>\r\n\r\n<div style=\"max-width: 1200px; margin: 0 auto; padding: 80px 20px; font-family: 'Poppins', sans-serif; position: relative; overflow-x: hidden;\">\r\n    <div style=\"text-align: center; margin-bottom: 60px; position: relative;\">\r\n        <h2 style=\"font-size: 36px; font-weight: 700; margin-bottom: 5px; color: #333; position: relative; display: inline-block;\">Premium Print Solutions<\/h2>\r\n        <div style=\"display: flex; align-items: center; justify-content: center; margin: 15px auto 20px;\">\r\n            <span style=\"width: 40px; height: 2px; background-color: #FF6347; display: inline-block;\"><\/span>\r\n            <span style=\"width: 6px; height: 6px; border-radius: 50%; background-color: #FF6347; margin: 0 5px; display: inline-block;\"><\/span>\r\n            <span style=\"width: 6px; height: 6px; border-radius: 50%; background-color: #FF6347; margin: 0 5px; display: inline-block;\"><\/span>\r\n            <span style=\"width: 6px; height: 6px; border-radius: 50%; background-color: #FF6347; margin: 0 5px; display: inline-block;\"><\/span>\r\n        <\/div>\r\n        <p style=\"font-size: 18px; color: #666; max-width: 600px; margin: 0 auto;\">Elevate your brand with our comprehensive range of professional printing services<\/p>\r\n    <\/div>\r\n\r\n    <div class=\"services-grid\" style=\"display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px; margin-bottom: 80px;\">\r\n        <!-- Exhibition Booths -->\r\n        <div style=\"background: rgb(255, 255, 255); border-radius: 16px; padding: 40px 30px; box-shadow: rgba(0, 0, 0, 0.06) 0px 10px 30px; transition: 0.4s; position: relative; overflow: hidden; z-index: 1;\" onmouseover=\"this.style.transform='translateY(-15px)'; this.style.boxShadow='0 15px 35px rgba(255,99,71,0.15)'; this.querySelector('.icon-anim').style.transform='scale(1.1) rotate(5deg)';\" onmouseout=\"this.style.transform=''; this.style.boxShadow='0 10px 30px rgba(0,0,0,0.06)'; this.querySelector('.icon-anim').style.transform=''\">\r\n            <div class=\"icon-anim\" style=\"width: 80px; height: 80px; margin: 0px auto 25px; position: relative; transition: transform 0.5s;\">\r\n                <svg viewBox=\"0 0 64 64\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                    <rect x=\"8\" y=\"20\" width=\"48\" height=\"32\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/rect>\r\n                    <rect x=\"16\" y=\"28\" width=\"32\" height=\"24\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/rect>\r\n                    <line x1=\"8\" y1=\"20\" x2=\"8\" y2=\"52\" stroke=\"#FF6347\" stroke-width=\"2\"><\/line>\r\n                    <line x1=\"56\" y1=\"20\" x2=\"56\" y2=\"52\" stroke=\"#FF6347\" stroke-width=\"2\"><\/line>\r\n                    <line x1=\"8\" y1=\"20\" x2=\"56\" y2=\"20\" stroke=\"#FF6347\" stroke-width=\"2\"><\/line>\r\n                    <path d=\"M28,28 L28,12 L36,12 L36,28\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/path>\r\n                    <rect x=\"26\" y=\"8\" width=\"12\" height=\"4\" fill=\"#FF6347\"><\/rect>\r\n                <\/svg>\r\n            <\/div>\r\n            <h3 style=\"font-size: 22px; font-weight: 600; margin-bottom: 20px; color: #333; text-align: center; position: relative;\">Exhibition Booths<\/h3>\r\n            <div style=\"content: ''; display: block; width: 40px; height: 3px; background: linear-gradient(to right, #FF6347, #FF8C66); margin: 15px auto 20px; border-radius: 2px;\"><\/div>\r\n            <p style=\"font-size: 15px; color: #666; margin-bottom: 20px; line-height: 1.7; text-align: center;\">Create a show-stopping presence at any event with our custom booths. From 3m x 3m truss tunnels to 6m x 6m setups with lightboxes and signboards, we'll craft a design that fits your vision\u2014and your budget.<\/p>\r\n            <div style=\"position: absolute; bottom: 0; right: 0; width: 100px; height: 100px; background: linear-gradient(135deg, transparent 50%, rgba(255,99,71,0.1) 50%); z-index: -1; border-radius: 0 0 16px 0;\"><\/div>\r\n        <\/div>\r\n\r\n        <!-- Billboards -->\r\n        <div style=\"background: rgb(255, 255, 255); border-radius: 16px; padding: 40px 30px; box-shadow: rgba(0, 0, 0, 0.06) 0px 10px 30px; transition: 0.4s; position: relative; overflow: hidden; z-index: 1;\" onmouseover=\"this.style.transform='translateY(-15px)'; this.style.boxShadow='0 15px 35px rgba(255,99,71,0.15)'; this.querySelector('.icon-anim').style.transform='scale(1.1) rotate(5deg)';\" onmouseout=\"this.style.transform=''; this.style.boxShadow='0 10px 30px rgba(0,0,0,0.06)'; this.querySelector('.icon-anim').style.transform=''\">\r\n            <div class=\"icon-anim\" style=\"width: 80px; height: 80px; margin: 0px auto 25px; position: relative; transition: transform 0.5s;\">\r\n                <svg viewBox=\"0 0 64 64\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                    <rect x=\"4\" y=\"12\" width=\"56\" height=\"20\" fill=\"#FF6347\" opacity=\"0.2\"><\/rect>\r\n                    <rect x=\"4\" y=\"12\" width=\"56\" height=\"20\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/rect>\r\n                    <line x1=\"16\" y1=\"32\" x2=\"16\" y2=\"52\" stroke=\"#FF6347\" stroke-width=\"2\"><\/line>\r\n                    <line x1=\"48\" y1=\"32\" x2=\"48\" y2=\"52\" stroke=\"#FF6347\" stroke-width=\"2\"><\/line>\r\n                    <path d=\"M16,52 L12,52 L20,42 L28,52 L24,52\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/path>\r\n                    <path d=\"M48,52 L44,52 L52,42 L60,52 L56,52\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/path>\r\n                <\/svg>\r\n            <\/div>\r\n            <h3 style=\"font-size: 22px; font-weight: 600; margin-bottom: 20px; color: #333; text-align: center; position: relative;\">Billboards<\/h3>\r\n            <div style=\"content: ''; display: block; width: 40px; height: 3px; background: linear-gradient(to right, #FF6347, #FF8C66); margin: 15px auto 20px; border-radius: 2px;\"><\/div>\r\n            <p style=\"font-size: 15px; color: #666; margin-bottom: 20px; line-height: 1.7; text-align: center;\">Make a statement with high-impact billboards in prime locations across Gaborone, Mogoditshane, and beyond. Sizes range from 3m x 12m to 36m x 2.3m\u2014perfect for grabbing attention and driving traffic.<\/p>\r\n            <div style=\"position: absolute; bottom: 0; right: 0; width: 100px; height: 100px; background: linear-gradient(135deg, transparent 50%, rgba(255,99,71,0.1) 50%); z-index: -1; border-radius: 0 0 16px 0;\"><\/div>\r\n        <\/div>\r\n\r\n        <!-- Sublimation -->\r\n        <div style=\"background: #fff; border-radius: 16px; padding: 40px 30px; box-shadow: 0 10px 30px rgba(0,0,0,0.06); transition: all 0.4s ease; position: relative; overflow: hidden; z-index: 1;\" onmouseover=\"this.style.transform='translateY(-15px)'; this.style.boxShadow='0 15px 35px rgba(255,99,71,0.15)'; this.querySelector('.icon-anim').style.transform='scale(1.1) rotate(5deg)';\" onmouseout=\"this.style.transform=''; this.style.boxShadow='0 10px 30px rgba(0,0,0,0.06)'; this.querySelector('.icon-anim').style.transform=''\">\r\n            <div class=\"icon-anim\" style=\"width: 80px; height: 80px; margin: 0 auto 25px; position: relative; transition: transform 0.5s ease;\">\r\n                <svg viewBox=\"0 0 64 64\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                    <path d=\"M20,16 L44,16 C46,16 48,18 48,20 L48,36 C48,38 46,40 44,40 L20,40 C18,40 16,38 16,36 L16,20 C16,18 18,16 20,16 Z\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/path>\r\n                    <rect x=\"20\" y=\"24\" width=\"24\" height=\"8\" fill=\"#FF6347\" opacity=\"0.2\"><\/rect>\r\n                    <path d=\"M20,44 L20,48 L44,48 L44,44\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/path>\r\n                    <path d=\"M38,20 C40,24 40,32 38,36\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/path>\r\n                    <path d=\"M26,20 C24,24 24,32 26,36\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/path>\r\n                <\/svg>\r\n            <\/div>\r\n            <h3 style=\"font-size: 22px; font-weight: 600; margin-bottom: 20px; color: #333; text-align: center; position: relative;\">Sublimation<\/h3>\r\n            <div style=\"content: ''; display: block; width: 40px; height: 3px; background: linear-gradient(to right, #FF6347, #FF8C66); margin: 15px auto 20px; border-radius: 2px;\"><\/div>\r\n            <p style=\"font-size: 15px; color: #666; margin-bottom: 20px; line-height: 1.7; text-align: center;\">Bring your designs to life on apparel, mugs, phone cases, and more. Our sublimation process ensures vibrant, durable prints that last, making it ideal for promotional items or personalized gifts.<\/p>\r\n            <div style=\"position: absolute; bottom: 0; right: 0; width: 100px; height: 100px; background: linear-gradient(135deg, transparent 50%, rgba(255,99,71,0.1) 50%); z-index: -1; border-radius: 0 0 16px 0;\"><\/div>\r\n        <\/div>\r\n\r\n        <!-- Large Format Printing -->\r\n        <div style=\"background: #fff; border-radius: 16px; padding: 40px 30px; box-shadow: 0 10px 30px rgba(0,0,0,0.06); transition: all 0.4s ease; position: relative; overflow: hidden; z-index: 1;\" onmouseover=\"this.style.transform='translateY(-15px)'; this.style.boxShadow='0 15px 35px rgba(255,99,71,0.15)'; this.querySelector('.icon-anim').style.transform='scale(1.1) rotate(5deg)';\" onmouseout=\"this.style.transform=''; this.style.boxShadow='0 10px 30px rgba(0,0,0,0.06)'; this.querySelector('.icon-anim').style.transform=''\">\r\n            <div class=\"icon-anim\" style=\"width: 80px; height: 80px; margin: 0 auto 25px; position: relative; transition: transform 0.5s ease;\">\r\n                <svg viewBox=\"0 0 64 64\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                    <rect x=\"10\" y=\"14\" width=\"44\" height=\"30\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/rect>\r\n                    <path d=\"M10,14 L54,14\" stroke=\"#FF6347\" stroke-width=\"2\"><\/path>\r\n                    <line x1=\"14\" y1=\"10\" x2=\"14\" y2=\"18\" stroke=\"#FF6347\" stroke-width=\"2\"><\/line>\r\n                    <line x1=\"50\" y1=\"10\" x2=\"50\" y2=\"18\" stroke=\"#FF6347\" stroke-width=\"2\"><\/line>\r\n                    <path d=\"M16,22 L48,22 M16,30 L48,30 M16,38 L48,38\" stroke=\"#FF6347\" stroke-width=\"2\" stroke-dasharray=\"2,2\"><\/path>\r\n                    <path d=\"M10,50 L10,44 L54,44 L54,50\" fill=\"none\" stroke=\"#FF6347\" stroke-width=\"2\"><\/path>\r\n                <\/svg>\r\n            <\/div>\r\n            <h3 style=\"font-size: 22px; font-weight: 600; margin-bottom: 20px; color: #333; text-align: center; position: relative;\">Large Format Printing<\/h3>\r\n            <div style=\"content: ''; display: block; width: 40px; height: 3px; background: linear-gradient(to right, #FF6347, #FF8C66); margin: 15px auto 20px; border-radius: 2px;\"><\/div>\r\n            <p style=\"font-size: 15px; color: #666; margin-bottom: 20px; line-height: 1.7; text-align: center;\">Go big with banners, posters, vehicle wraps, and wall graphics. No matter the size, we deliver crisp, eye-catching prints that demand attention\u2014indoors or out.<\/p>\r\n            <div style=\"position: absolute; bottom: 0; right: 0; width: 100px; height: 100px; background: linear-gradient(135deg, transparent 50%, rgba(255,99,71,0.1) 50%); z-index: -1; border-radius: 0 0 16px 0;\"><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"cta-section\" style=\"background: linear-gradient(135deg, #FF6347, #FF8C66); border-radius: 20px; padding: 60px 40px; position: relative; overflow: hidden; box-shadow: 0 15px 35px rgba(255,99,71,0.2); margin-bottom: 80px;\">\r\n        <div style=\"display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; position: relative; z-index: 2;\">\r\n            <div style=\"width: 120px; height: 120px; margin-bottom: 30px;\">\r\n                <svg viewBox=\"0 0 100 100\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\r\n                    <circle cx=\"50\" cy=\"50\" r=\"40\" fill=\"none\" stroke=\"#FFFFFF\" stroke-width=\"2\" stroke-dasharray=\"6,3\"><\/circle>\r\n                    <path d=\"M35,40 L65,40 L65,60 L35,60 Z\" fill=\"none\" stroke=\"#FFFFFF\" stroke-width=\"2\"><\/path>\r\n                    <path d=\"M35,40 L50,25 L65,40\" fill=\"none\" stroke=\"#FFFFFF\" stroke-width=\"2\"><\/path>\r\n                    <line x1=\"45\" y1=\"50\" x2=\"55\" y2=\"50\" stroke=\"#FFFFFF\" stroke-width=\"2\"><\/line>\r\n                <\/svg>\r\n            <\/div>\r\n            <h3 class=\"cta-heading\" style=\"color: white; font-size: 28px; font-weight: 600; margin-bottom: 30px; max-width: 700px;\">Explore Our Portfolio<\/h3>\r\n            <div class=\"cta-buttons\" style=\"display: flex; flex-wrap: wrap; gap: 20px; justify-content: center;\">\r\n                <a href=\"https:\/\/printafrique.com\/wp-content\/uploads\/2025\/03\/billboard-report-1.pdf\" download style=\"display: inline-block; background: white; color: rgb(255, 99, 71); font-size: 16px; font-weight: 600; padding: 16px 32px; border-radius: 50px; text-decoration: none; box-shadow: rgba(0, 0, 0, 0.1) 0px 8px 20px; transition: 0.3s;\" onmouseover=\"this.style.transform='translateY(-5px)'; this.style.boxShadow='0 12px 25px rgba(0,0,0,0.15)';\" onmouseout=\"this.style.transform=''; this.style.boxShadow='0 8px 20px rgba(0,0,0,0.1)';\">Download Billboard Portfolio<\/a>\r\n                <a href=\"https:\/\/printafrique.com\/wp-content\/uploads\/2025\/03\/Booth-Folio-1.pdf\" download style=\"display: inline-block; background: white; color: rgb(255, 99, 71); font-size: 16px; font-weight: 600; padding: 16px 32px; border-radius: 50px; text-decoration: none; box-shadow: rgba(0, 0, 0, 0.1) 0px 8px 20px; transition: 0.3s;\" onmouseover=\"this.style.transform='translateY(-5px)'; this.style.boxShadow='0 12px 25px rgba(0,0,0,0.15)';\" onmouseout=\"this.style.transform=''; this.style.boxShadow='0 8px 20px rgba(0,0,0,0.1)';\">Download Booth Portfolio<\/a>\r\n                <a href=\"#portfolio\" style=\"display: inline-block; background: white; color: rgb(255, 99, 71); font-size: 16px; font-weight: 600; padding: 16px 32px; border-radius: 50px; text-decoration: none; box-shadow: rgba(0, 0, 0, 0.1) 0px 8px 20px; transition: 0.3s;\" onmouseover=\"this.style.transform='translateY(-5px)'; this.style.boxShadow='0 12px 25px rgba(0,0,0,0.15)';\" onmouseout=\"this.style.transform=''; this.style.boxShadow='0 8px 20px rgba(0,0,0,0.1)';\">View Portfolio\/Our work<\/a>\r\n            <\/div>\r\n        <\/div>\r\n        <div style=\"position: absolute; top: -40px; right: -40px; width: 200px; height: 200px; border-radius: 50%; background: rgba(255,255,255,0.1); z-index: 1;\"><\/div>\r\n        <div style=\"position: absolute; bottom: -60px; left: -100px; width: 180px; height: 180px; border-radius: 50%; background: rgba(255,255,255,0.08);\"><\/div>\r\n    <\/div>\r\n\r\n    <!-- ========= PORTFOLIO SECTION ========= -->\r\n    <div id=\"portfolio\">\r\n        <div style=\"text-align: center; margin-bottom: 60px; position: relative;\">\r\n             <h2 style=\"font-size: 36px; font-weight: 700; margin-bottom: 5px; color: #333; position: relative; display: inline-block;\">Our Work<\/h2>\r\n             <div style=\"display: flex; align-items: center; justify-content: center; margin: 15px auto 20px;\">\r\n                <span style=\"width: 40px; height: 2px; background-color: #FF6347; display: inline-block;\"><\/span>\r\n                <span style=\"width: 6px; height: 6px; border-radius: 50%; background-color: #FF6347; margin: 0 5px; display: inline-block;\"><\/span>\r\n                <span style=\"width: 6px; height: 6px; border-radius: 50%; background-color: #FF6347; margin: 0 5px; display: inline-block;\"><\/span>\r\n                <span style=\"width: 6px; height: 6px; border-radius: 50%; background-color: #FF6347; margin: 0 5px; display: inline-block;\"><\/span>\r\n             <\/div>\r\n             <p style=\"font-size: 18px; color: #666; max-width: 600px; margin: 0 auto;\">Take a look at the quality and variety of the print solutions we've delivered.<\/p>\r\n        <\/div>\r\n        <div class=\"portfolio-grid\">\r\n            <!-- Images will be dynamically inserted here by JavaScript -->\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<!-- ========= LIGHTBOX HTML (Goes outside the main container) ========= -->\r\n<div id=\"lightbox\" class=\"lightbox\">\r\n    <span class=\"lightbox-close\">&times;<\/span>\r\n    <img class=\"lightbox-content\" id=\"lightbox-image\">\r\n    <a class=\"lightbox-prev\">&#10094;<\/a>\r\n    <a class=\"lightbox-next\">&#10095;<\/a>\r\n<\/div>\r\n\r\n<!-- ========= CSS & JAVASCRIPT (Goes right before the closing <\/body> tag) ========= -->\r\n<style>\r\n    \/* Smooth scrolling *\/\r\n    html {\r\n        scroll-behavior: smooth;\r\n    }\r\n\r\n    \/* Responsive Grid and CTA Section *\/\r\n    @media (max-width: 768px) {\r\n        .services-grid {\r\n            grid-template-columns: 1fr !important;\r\n            gap: 30px !important;\r\n        }\r\n\r\n        .cta-section {\r\n            padding: 40px 20px !important;\r\n        }\r\n\r\n        .cta-heading {\r\n            font-size: 22px !important;\r\n        }\r\n\r\n        .cta-buttons {\r\n            flex-direction: column !important;\r\n            align-items: center !important;\r\n        }\r\n    }\r\n\r\n    \/* Portfolio Grid *\/\r\n    .portfolio-grid {\r\n        display: grid;\r\n        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));\r\n        gap: 20px;\r\n    }\r\n\r\n    .portfolio-item {\r\n        overflow: hidden;\r\n        border-radius: 16px;\r\n        box-shadow: 0 8px 25px rgba(0,0,0,0.1);\r\n        transition: transform 0.3s ease, box-shadow 0.3s ease;\r\n        cursor: pointer;\r\n        background-color: #eee; \/* Placeholder color *\/\r\n        aspect-ratio: 1 \/ 1; \/* Makes items square, adjust as needed *\/\r\n    }\r\n\r\n    .portfolio-item:hover {\r\n        transform: translateY(-8px);\r\n        box-shadow: 0 12px 30px rgba(0,0,0,0.15);\r\n    }\r\n\r\n    .portfolio-item img {\r\n        width: 100%;\r\n        height: 100%;\r\n        object-fit: cover;\r\n        display: block;\r\n    }\r\n\r\n    \/* Lightbox Styles *\/\r\n    .lightbox {\r\n        position: fixed;\r\n        z-index: 1000;\r\n        left: 0;\r\n        top: 0;\r\n        width: 100%;\r\n        height: 100%;\r\n        background-color: rgba(0, 0, 0, 0.85);\r\n        display: none; \/* Hidden by default *\/\r\n        justify-content: center;\r\n        align-items: center;\r\n        padding: 20px;\r\n        box-sizing: border-box;\r\n    }\r\n\r\n    .lightbox-content {\r\n        max-width: 90%;\r\n        max-height: 85vh; \/* vh ensures it fits viewport height *\/\r\n        border-radius: 8px;\r\n        animation: lightboxZoom 0.4s ease-in-out;\r\n    }\r\n\r\n    @keyframes lightboxZoom {\r\n        from { transform: scale(0.8); }\r\n        to { transform: scale(1); }\r\n    }\r\n\r\n    .lightbox-close {\r\n        position: absolute;\r\n        top: 20px;\r\n        right: 35px;\r\n        color: #fff;\r\n        font-size: 40px;\r\n        font-weight: bold;\r\n        transition: 0.3s;\r\n        cursor: pointer;\r\n        line-height: 1;\r\n    }\r\n\r\n    .lightbox-close:hover {\r\n        color: #bbb;\r\n    }\r\n\r\n    .lightbox-prev,\r\n    .lightbox-next {\r\n        cursor: pointer;\r\n        position: absolute;\r\n        top: 50%;\r\n        width: auto;\r\n        padding: 16px;\r\n        margin-top: -25px;\r\n        color: white;\r\n        font-weight: bold;\r\n        font-size: 20px;\r\n        transition: 0.3s ease;\r\n        border-radius: 0 3px 3px 0;\r\n        user-select: none;\r\n        -webkit-user-select: none;\r\n        background-color: rgba(0,0,0,0.3);\r\n    }\r\n    \r\n    .lightbox-prev:hover,\r\n    .lightbox-next:hover {\r\n        background-color: rgba(0,0,0,0.6);\r\n    }\r\n\r\n    .lightbox-next {\r\n        right: 20px;\r\n        border-radius: 3px 0 0 3px;\r\n    }\r\n    \r\n    .lightbox-prev {\r\n        left: 20px;\r\n    }\r\n\r\n    \/* Smaller devices *\/\r\n    @media (max-width: 768px) {\r\n        .portfolio-grid {\r\n            grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));\r\n            gap: 15px;\r\n        }\r\n         .lightbox-prev, .lightbox-next {\r\n             padding: 12px;\r\n             font-size: 18px;\r\n         }\r\n    }\r\n<\/style>\r\n\r\n<script>\r\n    document.addEventListener('DOMContentLoaded', function() {\r\n        const imageUrls = [\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0006.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0007.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0008.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0009.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0010.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0011.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0012.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0013.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0014.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0015.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0016.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0017.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0018.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0019.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/IMG-20250806-WA0020.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/WhatsApp-Image-2025-08-06-at-18.31.59_6c8e45b1.jpg',\r\n            'https:\/\/printafrique.com\/wp-content\/uploads\/2025\/08\/WhatsApp-Image-2025-08-06-at-18.36.20_66c39830.jpg'\r\n        ];\r\n\r\n        const portfolioGrid = document.querySelector('.portfolio-grid');\r\n        const lightbox = document.getElementById('lightbox');\r\n        const lightboxImage = document.getElementById('lightbox-image');\r\n        const closeBtn = document.querySelector('.lightbox-close');\r\n        const prevBtn = document.querySelector('.lightbox-prev');\r\n        const nextBtn = document.querySelector('.lightbox-next');\r\n\r\n        let currentIndex = 0;\r\n\r\n        \/\/ Populate the grid with images\r\n        imageUrls.forEach((url, index) => {\r\n            const item = document.createElement('div');\r\n            item.className = 'portfolio-item';\r\n            \r\n            const img = document.createElement('img');\r\n            img.src = url;\r\n            img.alt = `Portfolio Image ${index + 1}`;\r\n            img.dataset.index = index;\r\n            \r\n            item.appendChild(img);\r\n            portfolioGrid.appendChild(item);\r\n            \r\n            \/\/ Add click listener to each item\r\n            item.addEventListener('click', () => {\r\n                currentIndex = index;\r\n                updateLightboxImage();\r\n                lightbox.style.display = 'flex';\r\n            });\r\n        });\r\n\r\n        function updateLightboxImage() {\r\n            lightboxImage.src = imageUrls[currentIndex];\r\n        }\r\n\r\n        function closeLightbox() {\r\n            lightbox.style.display = 'none';\r\n        }\r\n\r\n        function showPrevImage() {\r\n            currentIndex = (currentIndex - 1 + imageUrls.length) % imageUrls.length;\r\n            updateLightboxImage();\r\n        }\r\n\r\n        function showNextImage() {\r\n            currentIndex = (currentIndex + 1) % imageUrls.length;\r\n            updateLightboxImage();\r\n        }\r\n        \r\n        \/\/ Event Listeners\r\n        closeBtn.addEventListener('click', closeLightbox);\r\n        prevBtn.addEventListener('click', showPrevImage);\r\n        nextBtn.addEventListener('click', showNextImage);\r\n\r\n        \/\/ Also close on clicking the dark background\r\n        lightbox.addEventListener('click', (e) => {\r\n            if (e.target === lightbox) {\r\n                 closeLightbox();\r\n            }\r\n        });\r\n\r\n        \/\/ Keyboard navigation for accessibility\r\n        document.addEventListener('keydown', (e) => {\r\n            if (lightbox.style.display === 'flex') {\r\n                if (e.key === 'ArrowLeft' || e.key === 'a') {\r\n                    showPrevImage();\r\n                } else if (e.key === 'ArrowRight' || e.key === 'd') {\r\n                    showNextImage();\r\n                } else if (e.key === 'Escape') {\r\n                    closeLightbox();\r\n                }\r\n            }\r\n        });\r\n    });\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t            <\/div>\r\n        <\/div>\r\n        \t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Printafrique Services Premium Print Solutions Elevate your brand with our comprehensive range of professional printing services Exhibition Booths Create a show-stopping presence at any event with our custom booths. From 3m x 3m truss tunnels to 6m x 6m setups with lightboxes and signboards, we&#8217;ll craft a design that fits your vision\u2014and your budget. Billboards [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-94","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/printafrique.com\/index.php?rest_route=\/wp\/v2\/pages\/94","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/printafrique.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/printafrique.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/printafrique.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/printafrique.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=94"}],"version-history":[{"count":11,"href":"https:\/\/printafrique.com\/index.php?rest_route=\/wp\/v2\/pages\/94\/revisions"}],"predecessor-version":[{"id":10597,"href":"https:\/\/printafrique.com\/index.php?rest_route=\/wp\/v2\/pages\/94\/revisions\/10597"}],"wp:attachment":[{"href":"https:\/\/printafrique.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=94"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}