    
        /* --- Global Reset & Base Styles --- */
        *,
        *::before,
        *::after {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        html {
            font-size: 60%; /* Base 10px for scalable typography */
            scroll-behavior: smooth;
        }

        body {
            font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif;
            font-size: 1.6rem; /* Default 16px */
            line-height: 1.6;
            color: var(--epulse-color-text-primary);
            background-color: var(--epulse-color-background);
            padding-top: 2rem; /* Space for fixed header if any, adjust as needed */
            padding-bottom: 2rem;
        }

        /* --- CSS Variables (Bright, Clean, Modern Aesthetic) --- */
        :root {
            --epulse-color-background: #F8F9FA; /* Light grey background */
            --epulse-color-surface: #FFFFFF;    /* White for cards/sections */
            --epulse-color-text-primary: #212529; /* Dark grey for primary text */
            --epulse-color-text-secondary: #495057; /* Medium grey for secondary text */
            --epulse-color-text-muted: #6C757D;   /* Lighter grey for muted text */
            --epulse-color-primary: #007BFF;      /* Bright Blue */
            --epulse-color-primary-hover: #0056b3; /* Darker Blue for hover */
            --epulse-color-accent: #28A745;     /* Green for success/positive items */
            --epulse-color-warning: #DC3545;      /* Red for negative/prohibition items */
            --epulse-color-info: #17A2B8;       /* Teal for info items */
            --epulse-color-border: #DEE2E6;

            --epulse-font-weight-normal: 400;
            --epulse-font-weight-bold: 700;

            --epulse-border-radius-standard: 20px; /* Rounded corners */
            --epulse-border-radius-pill: 50px;     /* Pill-shaped for buttons */
            --epulse-shadow-soft: 0 6px 20px rgba(0, 0, 0, 0.07); /* Soft shadow */

            --epulse-spacing-unit: 1rem; /* 10px */
            --epulse-container-max-width: 1200px;
        }

        /* --- Typography --- */
        h1, h2, h3, h4 {
            color: var(--epulse-color-text-primary);
            font-weight: var(--epulse-font-weight-bold);
            line-height: 1.3;
        }

        .policies-content-area__page-title { /* H1 */
            font-size: 3.2rem; /* 32px */
            text-align: center;
            margin-bottom: calc(var(--epulse-spacing-unit) * 4); /* 40px */
        }

        .policy-section__title { /* H2 */
            font-size: 2.6rem; /* 26px */
            margin-bottom: calc(var(--epulse-spacing-unit) * 2.5); /* 25px */
            color: var(--epulse-color-primary);
            text-align: center;
        }

        .policy-category__title { /* H3 */
            font-size: 2rem; /* 20px */
            margin-top: calc(var(--epulse-spacing-unit) * 2); /* Add space above H3 */
            margin-bottom: calc(var(--epulse-spacing-unit) * 1.5); /* 15px */
            color: var(--epulse-color-text-primary);
        }
         .policy-category__title--first { /* H3 - No top margin for the first one in a section */
            margin-top: 0;
        }


        p, ul li, ol li {
            margin-bottom: calc(var(--epulse-spacing-unit) * 1.5); /* 15px */
            color: var(--epulse-color-text-secondary);
        }

        a {
            color: var(--epulse-color-primary);
            text-decoration: none;
            transition: color 0.3s ease;
        }

        a:hover, a:focus {
            color: var(--epulse-color-primary-hover);
            text-decoration: underline;
        }

        strong {
            font-weight: var(--epulse-font-weight-bold);
            color: var(--epulse-color-text-primary);
        }

        /* --- Layout & Container --- */
        .policies-content-area {
            max-width: var(--epulse-container-max-width);
            margin-left: auto;
            margin-right: auto;
            padding: calc(var(--epulse-spacing-unit) * 2); /* 20px */
        }

        .policy-section {
            margin-bottom: calc(var(--epulse-spacing-unit) * 5); /* 50px */
            padding: calc(var(--epulse-spacing-unit) * 3); /* 30px */
            background-color: var(--epulse-color-surface);
            border-radius: var(--epulse-border-radius-standard);
            box-shadow: var(--epulse-shadow-soft);
        }
        
        .policy-section:last-child {
            margin-bottom: 0;
        }

        /* Specific layout for vendor section (image + text) */
        .policy-section--vendor .policy-section__layout-container {
            display: flex;
            flex-direction: column; /* Mobile first: stack image and text */
            gap: calc(var(--epulse-spacing-unit) * 3); /* 30px */
        }

        .policy-section__visual-asset {
            text-align: center; /* Center image on mobile */
        }

        .policy-section__image {
            max-width: 100%;
            height: auto;
            border-radius: calc(var(--epulse-border-radius-standard) / 2); /* Slightly rounded image corners */
        }

        .policy-section__text-content {
            flex: 1; /* Allows text content to take available space */
        }
        
        .policy-section__introduction {
            font-size: 1.7rem; /* 17px */
            color: var(--epulse-color-text-secondary);
            margin-bottom: calc(var(--epulse-spacing-unit) * 2.5); /* 25px */
        }
        .policy-section__preamble {
            font-size: 1.6rem;
            color: var(--epulse-color-text-muted);
            margin-bottom: calc(var(--epulse-spacing-unit) * 2);
            padding: calc(var(--epulse-spacing-unit) * 1.5);
            background-color: #e9f5ff;
            border-left: 4px solid var(--epulse-color-info);
            border-radius: calc(var(--epulse-border-radius-standard) / 3);
        }


        /* --- Policy Category & Items --- */
        .policy-category {
            margin-bottom: calc(var(--epulse-spacing-unit) * 3); /* 30px */
            padding-bottom: calc(var(--epulse-spacing-unit) * 2); /* 20px */
            border-bottom: 1px solid var(--epulse-color-border);
        }
        .policy-category:last-child {
            margin-bottom: 0;
            border-bottom: none;
            padding-bottom: 0;
        }

        .policy-category__list {
            list-style-position: inside; /* Bullets inside */
            padding-left: calc(var(--epulse-spacing-unit) * 1); 
            margin-bottom: calc(var(--epulse-spacing-unit) * 1.5); /* 15px */
        }
         .policy-category__list--terms { /* for terms lists that are not just pros/cons */
            list-style-type: decimal; /* 1, 2, 3 */
         }
         .policy-category__list--alpha {
             list-style-type: lower-alpha; /* a, b, c */
             margin-left: calc(var(--epulse-spacing-unit) * 2); /* Indent sub-lists */
         }


        .policy-category__list-item {
            margin-bottom: calc(var(--epulse-spacing-unit) * 1.2); /* 12px */
            font-size: 1.6rem; /* 16px */
            color: var(--epulse-color-text-secondary);
        }
        /* Icons are removed in favor of prose for formality */

        /* --- Contact Details --- */
        .contact-details {
            margin-top: calc(var(--epulse-spacing-unit) * 1.5); /* 15px */
        }
        .contact-details__item {
            font-size: 1.6rem; /* 16px */
            margin-bottom: var(--epulse-spacing-unit); /* 10px */
            color: var(--epulse-color-text-secondary);
        }
        .contact-details__link {
            font-weight: var(--epulse-font-weight-bold);
        }

        /* --- Responsive Adjustments --- */
        @media (min-width: 768px) {
            .policies-content-area__page-title {
                font-size: 3.6rem; /* 36px */
            }

            .policy-section__title {
                font-size: 3rem; /* 30px */
                text-align: left;
            }
            .policy-section--vendor .policy-section__title,
            .policy-section--buyer .policy-section__title,
            .policy-section--general-terms .policy-section__title { /* Center titles for all sections if consistent */
                 text-align: center;
            }


            .policy-category__title {
                font-size: 2.2rem; /* 22px */
            }

            .policy-section--vendor .policy-section__layout-container {
                flex-direction: row;
                align-items: flex-start; /* Align top of image with top of text content */
            }

            .policy-section__visual-asset {
                flex: 0 0 30%; /* Image container takes about 30% width */
                max-width: 30%;
                text-align: center; /* Keep image centered within its column */
                margin-top: calc(var(--epulse-spacing-unit) * 1); /* Align with text visually */
            }

            .policy-section__text-content {
                flex: 1; /* Text content takes remaining space */
            }
        }

        @media (min-width: 992px) {
            .policies-content-area__page-title {
                font-size: 4rem; /* 40px */
            }
            .policy-section__title {
                font-size: 3.2rem; /* 32px */
            }
            .policy-category__title {
                font-size: 2.4rem; /* 24px */
            }
        }
    
