body {
            font-family: 'Roboto', sans-serif;
            background-color: #ffffff; /* Explicit base background color */
            margin: 0;
            padding: 0;
        }
        
        .main-wrapper {
            text-align: center; 
            padding: 40px 20px;
        }

        .main-heading {
            /* 2. Removed text-transform uppercase so cursive looks correct */
            margin-bottom: 20px; 
            color: #000000;
            font-size: 2.25rem;
        }

        .icon-divider {
            width: 20px; 
            height: 20px;
            margin: 10px auto;
        }

        .sub-heading {
            font-size: 1.25rem; 
            font-weight: 300; 
            max-width: 600px; 
            margin: 10px auto 40px; 
            color: #555555;
        }

        /* Flex container handles desktop layout inversion */
        .responsive-container {
            display: flex; 
            flex-direction: row-reverse; /* Places text on left and image on right */
            align-items: stretch; 
            gap: 40px; 
            max-width: 900px; 
            margin: 0 auto; 
            padding-bottom: 80px;
        }

        .responsive-img {
            width: 100%;
            max-width: 500px; 
            height: 374px; 
            object-fit: cover;
            border-radius: 4px;
        }

        .text-content {
            flex: 1; 
            text-align: left;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }

        .custom-hr {
            border: none; 
            border-top: 2px solid #888888;
            margin-bottom: 20px;
        }

        .description-text {
            color: #222222; 
            margin: 0 0 20px 0; 
            line-height: 1.6;
            font-size: 1rem;
        }

        .playball-regular {
            font-family: "Playball", cursive;
            font-weight: 400;
            font-style: normal;
        }

        /* Responsive Media Query for Mobile and Tablets */
        @media (max-width: 768px) {
            .responsive-container {
                flex-direction: column; /* Falls back to top-down stacking on small screens */
                align-items: left;
                gap: 20px;
            }
            .responsive-img {
                max-width: 100%;
                height: auto;
                max-height: 400px;
            }
            .text-content {
                text-align: center;
            }
            .advantages-section {
                align-self: center; /* Centers the list container if text aligns center on mobile */
            }
        }

        .advantages-section {
            align-self: flex-start; /* Aligns left within the flex column */
            text-align: left;
        }
        
        .advantages-section h3 {
            margin-top: 0;
            margin-bottom: 10px;
            font-size: 1.1rem;
        }

        .advantages-section ul {
            margin: 0 0 15px 0;
            padding-left: 20px;
        }

        .advantages-section li {
            margin-bottom: 5px;
        }

        /* Premium Minimalist Button Layout */
        .btn-primary {
            display: inline-block;
            padding: 12px 26px;
            background-color: #1a1a1a;   /* Rich matte black */
            color: #ffffff;              /* Crisp white text */
            text-decoration: none;
            font-family: 'Helvetica Neue', Arial, sans-serif;
            font-size: 15px;
            font-weight: 500;
            letter-spacing: 0.5px;
            text-transform: uppercase;   /* Optional: adds editorial look */
            border: 1px solid #1a1a1a;
            border-radius: 2px;          /* Sharp, modern edges */
            box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
            cursor: pointer;
  
            /* Standard transition speed for a premium, deliberate feel */
            transition: background-color 0.25s ease, border-color 0.25s ease, transform 0.2s ease;
        }

        /* Grey Hover & Interactive Focus State */
        .btn-primary:hover,
        .btn-primary:focus {
            background-color: #333333;   /* Smooth charcoal grey shift */
            border-color: #333333;
            outline: none;               /* Accessible focus visual handled by color shift */
        }

        /* Optional: Slight press feedback on active click */
        .btn-primary:active {
            transform: scale(0.98);
        }