
html {
    font-size: 16px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

@font-face {
    font-family: "Sporty Grunge"; /* This is the name you "create" for CSS */
    src: url("/fonts/Sporty Grunge.ttf") format('truetype');
    font-weight: 400;
    font-style: normal;
}

html body {
    /*font-family: "Old English",Roboto, Tahoma, 'Franklin Gothic Medium', 'Arial Narrow', Arial, sans-serif !important; */
    font-family:, 'Playfair Display', 'Sketch Block','Old English';
}

.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}

/* Container must be relative for the text to sit on top */
.custom-overlay-container {
    position: relative;
    text-align: left;
}

/* Position text at the top, set size to 24px, and color to blue */
.top-overlay-content {
    position: absolute;
    top: 20px; /* Distance from the very top of the image */
    left: 20px; /* Center horizontally */
    /*transform: translateX(-50%);*/
    width: 90%
}

.main-title {
    font-size: clamp(10px, 3vw, 48px);
    color: white;
    font-weight: bold;
    margin-bottom: 5px;
}

.sub-description {
    font-size: clamp(10px, 3vw, 60px);
    color: black;
}

/* Change the entire navbar background */
.navbar-custom {
    background-color: #004a99; /* Custom deep blue */
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

    /* Change the color and size of navigation links */
    .navbar-custom .nav-link {
        color: #ffffff !important; /* White text */
        font-size: 18px; /* Larger font */
    }

        /* Change link color when hovering */
        .navbar-custom .nav-link:hover {
            color: #ffd700 !important; /* Gold on hover */
        }

.navbar-nav .nav-link.dropdown-toggle:hover {
    color: #FFFF00 !important; /* e.g., Yellow hover */
}


.dropdown-menu {
    padding-top: 0;
    padding-bottom: 0;
    background-color: #000000; /* Ensures the container itself is black */
    border: 1px solid #333; /* Optional: adds a dark border */
    --bs-dropdown-divider-bg: #FFFF00 !important;
}

.dropdown-item {
    background-color: #000000;
    color: #FFFFFF !important; /* White text */
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

.dropdown-divider {
    background-color: #000000;
    color: #FFFF00 !important; /* Yellow text */
}

.dropdown-item:hover {
    background-color: #D3D3D3; /* Dark grey hover effect */
    color: #000000 !important;
}


.image-section {
    margin-bottom: 40px; /* Adjust this number to change the "blank line" height */
}

.image-row-container {
    display: flex; /* Activate Flexbox on the container */
    flex-wrap: nowrap;
    justify-content: space-evenly;
    max-width: 100%;
    height: auto;
    gap: 3px;
}

    .image-row-container img {
        min-width: 0;
        width: 100%;
        height: auto;
        flex: 1;
    }


footer {
    /*outline: 3px solid red; Visible red outline for debugging */
    display: block;
    overflow: auto; /* This often forces a container to grow to its content size */
    width: 100%;
}


    footer.border {
        /*position: absolute;*/
        background-color: #212529; /* Dark background */
        padding: 20px 0;
        color: #adb5bd; /* Muted light grey text */
        width: 100%;
        font-size: 0.85rem;
        bottom: 0;
        min-height: 120px;
        height: auto;
        line-height: 1.4;
        /* Add this to your site.css 
    white-space: normal !important; /* Overrides any 'nowrap' settings */
        /*overflow-wrap: break-word !important; /* Standard wrapping */
        /*word-wrap: break-word !important; /* Legacy support */
        /*word-break: normal; /* Prevents breaking words in the middle unless necessary */
        /*max-width: 100%; /* Ensures it stays within the screen width */
        /*display: block; /* Ensures it behaves as a block element */
    }

.footer-social-links i {
    transition: transform 0.3s ease, color 0.3s ease;
}

    .footer-social-links i:hover {
        transform: scale(1.2);
        color: #007bff; /* Or your brand color */
    }

/* Standard Desktop Size */
.footer-social-links i {
    font-size: 44px;
    margin: 0 10px;
}

/* Mobile-Specific Size (Screens under 768px) */
@media screen and (max-width: 768px) {
    .footer-social-links i {
        font-size: 30px; /* Much larger for thumb-tapping */
        margin: 0 10px; /* Extra spacing to prevent mis-taps */
    }
}


.MsoTitle {
    color: #FF0000;
    font-size: 2.0rem;
}

.MsoSubtitle {
    color: #000000;
    font-size: 0.85rem;
}

.spaced-list li {
    margin-bottom: 1em;
}

.disclaimer-card {
    width: 100%;
}

.disclaimer-card-content {
    font-size: 12px;
    color: red;
    justify-content: center;
    display: inline-block;
    padding: 4px 8px;
    background-color: #fff;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 8px;
}

.card-container {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 10px;
    position: relative;
    text-align: center;
    color: white
}

.card {
    width: 325px;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 10px 10px 2px 1px rgb(192 192 192 / 0.4);
    margin: 20px;
}

    .card img {
        width: 100%; /* e.g., 100% of the card's width */
        aspect-ratio: 4 / 3; /* e.g., a 4:3 aspect ratio */
        object-fit: cover;
        display: block;
    }

.card-content {
    padding: 16px;
}

    .card-content h3 {
        font-size: 28px;
        margin-bottom: 8px;
    }

    .card-content p {
        color: #666;
        font-size: 12px;
        line-height: 1.3;
    }

    .card-content .btn {
        display: inline-block;
        padding: 8px 16px;
        background-color: #333;
        text-decoration: none;
        border-radius: 4px;
        margin-top: 8px;
        color: yellow;
    }

/* Top left text */
.top-left {
    position: absolute;
    font-size: 32px;
    color: yellow;
    top: 8px;
    left: 8px;
    font-family: Roboto Black, Montserrat, Helvetica, Arial;
    background-color: rgba(0,0,0,0.5);
    padding: 10px;
}

.smbtn {
    display: inline-block;
    padding: 8px 16px;
    background-color: #333;
    text-decoration: none;
    border-radius: 4px;
    margin-top: 8px;
    color: yellow;
}


.grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 10px; /* Creates space to see the container background */
    background-color: white; /* Dark background for the container (shows through gaps) */
    padding: 10px;
    align-items: stretch;
}

.grid-item {
    background-color: white; /* Bright color for cells */
    /*border: 2px solid #ffa94d; Contrasting border */
    padding: 20px;
    font-family: sans-serif;
    text-align: center;
    box-shadow: 10px 10px 2px 1px rgb(192 192 192 / 0.4);
}

    .grid-item img {
        margin-bottom: 20px; /* Adjust this value to your liking */
        width: 100%; /* Ensures the image doesn't overflow the width */
        height: auto; /* Maintains the original aspect ratio */
        /*display: block; /* Removes the tiny white gap usually found under images */
        object-fit: contain;
    }

h4 {
    overflow-wrap: break-word; /* Allows long words to break and wrap to the next line */
    word-break: break-word; /* Backup for older browser support */
    hyphens: auto; /* Optional: Adds hyphens where words break */
}

.simple-grid-container {
    display: grid; /* Activates grid for the container */
    grid-template-columns: 25% 1fr; /* First column auto-sized (image), second column takes remaining space */
    align-items: start; /* Vertically centers the items within their grid cells */
    gap: 40px 20px; /* 40px between rows, 20px between columns */
}
/* Tablet and Desktop */
@media (min-width: 768px) {
    .simple-grid-container {
        grid-template-columns: 250px 1fr;
    }
}

/* Mobile (Default) */
@media (max-width: 767px) {
    .simple-grid-container {
        grid-template-columns: 1fr; /* Stacked: Image on top, Text below */
    }

    .sg-image-wrapper img {
        width: 100%; /* Image fills the phone width */
        height: auto;
    }
}




.sg-image-wrapper img {
    width: 100%; /* Controls the image size */
    max-width: 300px;
    height: auto;
    border-radius: 8px;
    display: block;
    object-fit: cover;
}




.e-grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    grid-template-rows: auto;
    /*background-color: yellow;ACtivate to highlight grid container and padding display*/
    gap: 1em;
    padding: 10px;
    /*justify-items: center;*/
    grid-auto-flow: dense;
    /*place-items: center;*/ /* Centers Text in a Grid cell*/
    /*justify-content: space-around;*/
    align-items: stretch; /*Ensures that all cells display the same size*/
}

    .e-grid-container > div {
        background-color: white; /* Give child items a dark color to stand out */
        padding: 5px;
    }

.e-item {
    /* display: grid;*/
    place-items: center;
    text-align: center;
    border: 3px solid #007bff;
    border-radius: 20px;
    font-family: "Roboto", sans-serif;
    font-size: 0.8rem;
    font-weight: normal;
}

    .e-item h3 {
        font-family: "PlayfairDisplay", Tahoma;
        font-size: 2.2rem;
        font-weight: bolder;
    }


    .e-item img {
        max-width: 100%;
        height: auto;
        justify-content: left;
        /*align-items: center;*/
    }

    /* Only styles items that have NO text or child elements */
    .e-item:empty {
        min-height: 150px;
        background-color: rgba(0, 0, 0, 0.05);
        border: 1px dashed #ccc;
        display: flex;
        align-items: center;
        justify-content: center;
    }

        /* Optional: Automatically show the class name instead of a manual number */
        .e-item:empty::before {
            content: "Empty Slot";
            color: #999;
            font-size: 12px;
        }

.image-wrapper {
    /* Apply the border to the wrapper */
    border: 3px solid #28a745; /* Example: 3px solid green border */
    /* Add padding if you want space between border and image */
    padding: 5px;
    /* Optional: add a background color */
    background-color: #f8f9fa;
}

    .image-wrapper img {
        /* Ensure image fits within the wrapper */
        width: 100%;
        height: auto;
        display: block;
    }

.emphasized-text {
    font-size: 1rem; /* Makes the font larger */
    font-style: italic; /* Changes the style to italic */
    font-weight: bold; /* Adds weight */
    color: royalblue; /* Optional: change color */
}

.bento-container {
    display: grid;
    align-content: start;
    grid-template-rows: auto auto; /* Row 1 (Medium-1) will now only be as tall as its text */
    grid-auto-rows: min-content; /* All new rows will shrink-wrap their content */
    /*background-color: darkblue;*/ /*REACTIVATE TO HIGHLIGHT THW BENTO CELLS*/
    grid-template-columns: repeat(4, 1fr);
    gap: 1em;
    padding: 10px;
    /* grid-template-areas:
        "cell-1 cell-2 cell-2 cell-2"
        "cell-1 cell-3 cell-4 cell-5";*/
    /*align-items: stretch;*/
}

@media (max-width: 600px) {

    .bento-container {
        grid-template-columns: 1fr;
    }

    .bento-cell {
        grid-column: span 1 !important;
    }
}



.bento-cell#cell-Medium-1 p {
    margin: 0;
}

.bento-cell#cell-large-1 {
    grid-column: 1 / span 2; /* Starts at Grid-Line 1 spans 2 columns */
    grid-row: 2 / span 2; /* Starts at row 2, spans 2 rows */
    background-color: white;
}

.bento-cell#cell-Small-1 {
    grid-column: 3 / span 3; /* Starts at Grid-Line 1 spans 2 columns */
    grid-row: 3 / span 1; /* Starts at row 2, spans 2 rows */
    background-color: white;
}

.bento-cell#cell-Small-2 {
    grid-column: 3 / span 2; /* Starts at Grid-Line 1 spans 2 columns */
    grid-row: 2 / span 1; /* Starts at row 2, spans 2 rows */
    background-color: white;
}

.bento-cell#cell-Small-3 {
    grid-column: 5 / span 1; /* Starts at Grid-Line 1 spans 2 columns */
    grid-row: 2 / span 1; /* Starts at row 2, spans 2 rows */
    background-color: white;
}

.bento-cell {
    border: 1px black;
    padding: 20px;
    background-color: white;
    display: flex;
    flex-direction: column;
    justify-content: center; /* Centers content vertically */
    align-items: center; /* Centers content horizontally */
    text-align: center;
    height: 100%; /* Ensure the item itself fills its grid cell */
    width: 100%;
}


.p-image-wrapper {
    /*max-width: 250px;*/
    margin: 0 auto;
    /* Apply the border to the wrapper */
    /*border: 3px solid #28a745;  Example: 3px solid green border */
    /* Add padding if you want space between border and image */
    padding: 5px;
    /* Optional: add a background color */
    background-color: #f8f9fa;
    min-width: 0;
}

    .p-image-wrapper img {
        /* Ensure image fits within the wrapper */
        width: 100%;
        height: 100%; /* Required for 'stretch' to work on the image itself */
        object-fit: cover; /* Crops image to fill without distortion */
        display: block;
    }


body {
    display: grid;
    grid-template-rows: auto 1fr auto; /* Header, Content, Footer */
    min-height: 100vh; /* Takes full screen height */
}

.bento-ps-container {
    display: grid;
    align-content: start;
    grid-template-rows: auto auto; /* Row 1 (Medium-1) will now only be as tall as its text */
    grid-auto-rows: min-content; /* All new rows will shrink-wrap their content */
    background-color: darkblue; /*REACTIVATE TO HIGHLIGHT THW BENTO CELLS*/
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: 50px 1fr 1fr;
    gap: 1em;
    padding: 10px;
    /* grid-template-areas:
        "cell-1 cell-2 cell-2 cell-2"
        "cell-1 cell-3 cell-4 cell-5";*/
    /*align-items: stretch;*/
}


.table-container {
    overflow-x: auto; /* Allows horizontal scrolling on small screens */
}

table {
    width: 100%;
    border-collapse: collapse; /* Removes space between borders */
    font-family: sans-serif;
}

th, td {
    padding: 8px;
    text-align: right; /* Aligns numbers neatly */
    border-bottom: 1px solid #ddd;
}

    th:first-child, td:first-child {
        text-align: left; /* Aligns category names to the left */
    }

tbody tr:nth-child(even) {
    background-color: #f2f2f2; /* Striped rows */
}

tbody tr:hover {
    background-color: #ddd; /* Hover effect */
}



/* 1. Target individual cells, NOT the <tr> row */
tfoot td, tfoot th {
    position: -webkit-sticky; /* Support for older Safari */
    position: sticky;
    bottom: 0;
    /* 2. REQUIRED: Opaque background prevents row from disappearing */
    background-color: #ffffff;
    /* 3. HIGHER Z-INDEX: Keeps footer on top layer during scroll */
    z-index: 10;
    /* 4. VISUAL STANDOUT: Distinct styling for Totals */
    font-weight: bold;
    border-top: 3px double #333;
}

/* 5. TABLE WRAPPER (Critical Fix) */
table {
    /* Prevents "jitter" or borders disappearing during sticky scroll */
    border-collapse: separate;
    border-spacing: 0;
}

.footer-container {
    display: flex; /* Helps align multiple sections in the footer */
    justify-content: space-around; /* Distributes space between sections */
    background-color: #333; /* Example background color */
    color: white;
    padding: 20px 0;
}

.footer-links ul {
    list-style-type: none; /* Removes bullet points */
    padding: 0;
    margin: 0;
}

.footer-links li a {
    color: white; /* Link color */
    text-decoration: none; /* Removes underlines from links */
    display: block; /* Makes links take the full width of the list item */
    padding: 5px 0;
    transition: color 0.3s; /* Smooth color transition on hover */
}

    .footer-links li a:hover {
        color: #4CAF50; /* Color change on hover */
    }

/* Container for mobile responsiveness */
.table-container {
    width: 100%;
    display: flex;
    justify-content: flex-start; /* Aligns content to the left in a flexbox */
    padding: 0; /* Remove any padding that creates a gap */
}

.styled-table {
    table-layout: fixed; /* Forces the table to respect defined widths */
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    align-items: start;
    border-collapse: collapse; /* Merges borders into single clean lines */
    min-width: 300px;
    font-family: 'Segoe UI', Tahoma, sans-serif;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
    border-radius: 8px 8px 0 0;
    overflow: hidden; /* Ensures rounded corners show */
    margin-left: 0; /* Forces the table to the left edge */
    margin-right: auto;
}

    .styled-table th:nth-child(1) {
        width: 30%;
    }
    /* Employee Name */
    .styled-table th:nth-child(2) {
        width: 40%;
    }
    /* Project */
    .styled-table th:nth-child(3) {
        width: 30%;
    }
    /* Deadline/Status */

    .styled-table thead tr {
        background-color: #009879;
        color: #ffffff;
        text-align: left;
        font-weight: bold;
    }

    .styled-table th, .styled-table td {
        padding: 12px 15px;
    }

    /* Zebra Striping: Alternates background color for easier reading */
    .styled-table tbody tr:nth-of-type(even) {
        background-color: #f3f3f3;
    }

    /* Hover effect for better user interaction */
    .styled-table tbody tr:hover {
        background-color: #e9f5f2;
        cursor: pointer;
    }

    .styled-table tbody tr:last-of-type {
        border-bottom: 2px solid #009879;
    }

h4 {
    font-family: Roboto, Tahoma, sans-serif; /* Sets the font family */
    font-size: 1.5rem; /* Sets the size using relative units */
    font-weight: 700; /* Optional: makes it bold */
}

.float-left {
    float: left; /* Aligns image to the left */
    margin-right: 20px; /* Adds space so text doesn't touch the image */
    margin-bottom: 10px;
    max-width: 300px; /* Standard size for 2026 responsive layouts */
}

.content-wrapper img {
    width: 370px;
    max-width: none;
    height: auto;
}


.visa-grid-container {
    display: grid; 
    gap: 20px;
    grid-template-columns: repeat(auto-fit, minmax(max(300px, 50% - 20px), 1fr));
    border-radius: 8px;
    /*background-color: powderblue;*/
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    /*max-width: 300px;*/ /* Example width for a typical landscape card size */
    margin: 10px;
    align-items: stretch;
}

.visa-card {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    width: 100%;
    /* Image column is fixed at 150px, text takes the remaining space */
    background-color: lavender;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    height: auto; /* Optional: Sets a uniform height for all landscape cards */

}

.visa-card-image {
    grid-column: 1;
    display: flex; /* Enables centering inside the wrapper */
    align-items: center; /* Centers the image vertically */
    justify-content: center; /* Centers the image horizontally */
    padding: 10px; /* Creates breathing room for the border */
    border: 5px solid lightgray;
}

 .visa-card-image img {
    width: 100%; /* Set a fixed size smaller than the 150px column */
    height: auto;
    display: block;
    border-radius: 8px; /* Use 50% for a circle or 8px for rounded corners */
    box-shadow: 0 4px 8px rgba(0,0,0,0.1); /* Adds depth */
}

.visa-card-content {
    flex: 2 1 300px;
   /* grid-column: 2;
    padding: 15px;*/
    justify-content: center; /* Centers text vertically within the landscape card */
    overflow: hidden; /* Prevents long text from pushing the card height out */
}

.visa-card-content h2 {
    margin-top: 0;
    font-size: 1.2rem;
    margin-bottom: 0.5rem;
}

    .visa-card-content p {
        font-size: 0.9rem;
        margin: 5px 0;
    }

.visa-card-image img {
    width: 100%;
    height: auto;
    display: block;
}

.social-icon {
    width: 48px !important; /* Adjust this to match your desired size */
    height: auto;
    margin-right: 1rem; /* Replaces the 'mr-4' class from your original code */
    vertical-align: middle;
    /*filter: brightness(0) invert(1); */   /* Makes the icon white*/
}

.footer-social-container {
    display: flex;
    justify-content: flex-start; /* 'flex-start' for Left, 'flex-end' for Right, 'center' for Center */
    gap: 15px; /* This creates perfect spacing between icons as you add them */
    padding: 20px; /* Adjust this to move it away from the footer edges */
}

/* Removes bullets and indents */
.footer-column ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Spaces out the links vertically */
.footer-column li {
    margin-bottom: 10px;
}

/* Styling the links */
.footer-column a {
    text-decoration: none;
    color: #ffffff; /* Or your preferred color */
    transition: color 0.3s ease;
}

    /* Hover effect for better UX */
    .footer-column a:hover {
        color: #007bff; /* Changes color when mouse is over it */
    }

.card-overlay {
    /* Positions the card absolutely relative to the container */
    position: absolute;
    /* Position it where you want on the image, for example: */
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* Centers the card horizontally and vertically */
    /* Add card styling */
    background-color: rgba(255, 255, 255, 0.85); /* Semi-transparent white background */
    background: rgba(244,255,255,0.2);
    backdrop-filter: blur(10px);
    padding: 20px;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    width: 40vw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0px 0px 20px 5px rgba(255, 255, 255, 0.8);
    /* Set max width to prevent it from stretching across the entire image on larger screens */
    max-width: 300px;
    text-align: center;
    /* Ensures the card is above the image (images have a default z-index of 0) */
    z-index: 10;
}

@media screen and (max-width: 600px) {
    .card-overlay {
        /* 1. Force the circle shape */
        width: 180px; /* Set a slightly larger width for mobile text */
        height: 180px !important; /* Force height to match width */
        aspect-ratio: 1 / 1;
        border-radius: 50%;
        /* 2. Fix the "Elongated" look */
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        overflow: hidden; /* Keeps anything from poking out of the circle */
        /* 3. Shrink the text to fit */
        font-size: 4px; /* Smaller text is key for small circles */
        line-height: 1.2; /* Tighten spacing between lines */
        padding: 15px; /* Prevents text from touching the circle edges */
    }

        /* Target specific text sections inside the ball to shrink them further */
        .overlay-card h3 {
            font-size: 4px;
            margin: 0;
        }

        .card-overlay p {
            font-size: 2px;
            margin: 5px 0;
        }
}




.card-overlay a {
    color: yellow;
}

.ticker-wrapper {
    width: 100%;
    background: #000; /* Contrast against your image */
    color: #fff;
    overflow: hidden;
    padding: 10px 0;
    white-space: nowrap;
}

.ticker-text {
    display: inline-block;
    padding-left: 100%;
    animation: ticker 15s linear infinite;
    font-weight: bold;
}

@keyframes ticker {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }
}




/* 2. Show only on monitors wider than 1200px */
@media screen and (min-width: 1200px) {
    .desktop-left-decor {
        display: block;
        position: absolute;
        /* 1. MOVE HER TO THE RIGHT */
        /* Since Jedi is at right: 0, we place her slightly to his left */
        left: auto; /* Cancel out the previous left: 0 */
        right: 20%;
        bottom: 0;
        height: 90vh; /* Slightly shorter than him to show hierarchy */
        top: auto;
        transform: none;
        z-index: 1; /* Behind him, but in front of the background */
    }


    .price-container {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        margin-top: 10px;
        position: relative;
        text-align: center;
        color: black
    }

    .price-card {
        width: 325px;
        border-radius: 8px;
        overflow: hidden;
        box-shadow: 10px 10px 2px 1px rgb(192 192 192 / 0.4);
        margin: 20px;
    }


    .price-list {
        padding: 16px;
    }

        .price-list h3 {
            font-size: 28px;
            margin-bottom: 8px;
        }

        .price-list p {
            color: #666;
            font-size: 12px;
            line-height: 1.3;
        }

        .price-list .btn {
            display: inline-block;
            padding: 8px 16px;
            background-color: #333;
            text-decoration: none;
            border-radius: 4px;
            margin-top: 8px;
            color: yellow;
        }
}