/* Basic Reset & Body Styling */
* {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Montserrat', sans-serif;
    background-color: #1a1a1a; /* Dark background */
    color: #e0e0e0; /* Off-white text */
    padding: 40px 20px;
    line-height: 1.6;
}

.container {
    max-width: 500px; /* Limit width for better readability */
    margin: 0 auto; /* Center the container */
}

/* Main Heading */
h1 {
    font-size: 3.5rem; /* Large font size */
    font-weight: 700; /* Bold */
    text-align: left; /* Align to left */
    margin-bottom: 40px; /* Space below heading */
    letter-spacing: 1px;
    text-transform: uppercase; /* Make text uppercase */
}

/* Info Section Layout */
.info-section {
    display: flex;
    align-items: flex-start; /* Align items to the top */
    margin-bottom: 30px; /* Space between sections */
}

/* Icon Container Styling */
.icon-container {
    width: 40px; /* Fixed width for icon area */
    margin-right: 25px; /* Space between icon and text */
    flex-shrink: 0; /* Prevent icon container from shrinking */
    display: flex;
    justify-content: center; /* Center icon horizontally */
    align-items: center; /* Center icon vertically if needed */
    padding-top: 5px; /* Small adjustment to align better with first line */
}

.icon-container svg {
    width: 32px; /* Control icon size */
    height: 32px;
    fill: #e0e0e0; /* Icon color */
}

/* Specific Icon Styles */
.icon-address .address-icon-text {
    font-size: 2rem; /* Adjust size for 'A' */
    font-weight: 400; /* Regular weight for 'A' */
    line-height: 1; /* Adjust line height for better centering */
    color: #e0e0e0; /* Icon color */
}

/* Text Container Styling */
.text-container {
    flex-grow: 1; /* Allow text container to take remaining space */
}

/* Label Styling (e.g., "Opening Hours") */
.label {
    font-size: 1.3rem;
    font-weight: 700; /* Bold */
    margin-bottom: 5px; /* Space below label */
    color: #f5f5f5; /* Slightly brighter white for labels */
}

/* Detail Styling (e.g., "9:00 - 18:00") */
.detail {
    font-size: 1.1rem;
    font-weight: 400; /* Regular weight */
    color: #d0d0d0; /* Slightly dimmer white for details */
    line-height: 1.4; /* Adjust line spacing for details if needed */
}

/* Adjustments for smaller screens if needed */
@media (max-width: 600px) {
    h1 {
        font-size: 2.5rem;
        margin-bottom: 30px;
    }
    .label {
        font-size: 1.1rem;
    }
    .detail {
        font-size: 1rem;
    }
    .icon-container {
        margin-right: 15px;
    }
    .icon-container svg {
        width: 28px;
        height: 28px;
    }
    .icon-address .address-icon-text {
         font-size: 1.8rem;
    }
}