/* Common Page Components CSS Enhancements */

/* Improve page headers */
.page-header {
    background-color: var(--dark-bg);
    color: var(--light);
    padding: 7rem 0 3rem;
    position: relative;
    overflow: hidden;
    text-align: center;
}

.page-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.com/svgjs' width='1920' height='500' preserveAspectRatio='none' viewBox='0 0 1920 500'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1016%26quot%3b)' fill='none'%3e%3crect width='1920' height='500' x='0' y='0' fill='rgba(23, 23, 23, 1)'%3e%3c/rect%3e%3cpath d='M0,510.875C91.509,497.156,190.675,513.7,262.632,457.321C329.573,405.164,330.701,313.527,372.304,241.095C418.163,161.381,525.385,120.353,525.224,30.171C525.065,-59.168,421.494,-107.652,363.162,-178.279C311.703,-240.46,278.494,-320.323,201.964,-353.902C126.267,-387.133,39.779,-355.862,-39.931,-337.219C-122.13,-318.038,-198.558,-311.958,-265.909,-264.071C-332.555,-216.731,-381.324,-150.318,-414.418,-76.238C-448.595,0.197,-468.169,85.667,-450.574,168.285C-433.391,249.036,-378.48,313.519,-319.724,372.608C-252.775,439.928,-160.354,473.26,-78.283,499.361C-25.807,516.552,28.303,489.751,78.556,502.14C78.556,502.14,78.556,502.14,78.556,502.14' fill='rgba(28, 28, 28, 1)'%3e%3c/path%3e%3cpath d='M1920 1021.348C2026.366 1017.963 2140.301 1055.862 2227.536 995.27 2315.077 934.452 2334.166 813.807 2367.883 707.673 2402.069 600.134 2457.267 497.051 2425.408 387.841 2393.845 279.639 2284.551 211.78 2197.073 143.018 2121.166 82.894 2051.106 13.952 1953.474 0.4 1855.981-13.127 1770.2 58.243 1674.981 83.873 1583.532 108.606 1476.628 79.329 1406.014 144.893 1335.039 210.772 1341.92 322.798 1311.301 414.797 1280.488 507.247 1209.261 577.767 1211.97 674.868 1214.625 769.985 1289.499 836.553 1359.133 900.273 1429.128 964.323 1515.961 1011.608 1612.229 1028.193 1705.915 1044.337 1811.891 1024.805 1920 1021.348' fill='rgba(28, 28, 28, 1)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1016'%3e%3crect width='1920' height='500' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
    background-position: center;
    background-size: cover;
    opacity: 0.5;
    z-index: 0;
}

.page-header h1 {
    font-size: 3rem;
    font-weight: 700;
    margin-bottom: 1rem;
    position: relative;
    z-index: 1;
    color: white;
}

.page-header .lead {
    font-size: 1.3rem;
    max-width: 800px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
    color: rgba(255, 255, 255, 0.8);
}

/* Improve page content sections */
.page-content {
    padding: 5rem 0;
    background-color: var(--body-bg);
}

.page-content article {
    line-height: 1.8;
    color: var(--text-color);
}

.page-content h2 {
    color: var(--text-color);
    font-size: 2rem;
    font-weight: 700;
    margin: 2.5rem 0 1.5rem;
    position: relative;
}

.page-content h3 {
    color: var(--text-color);
    font-size: 1.6rem;
    font-weight: 600;
    margin: 2rem 0 1.2rem;
}

.page-content p {
    margin-bottom: 1.5rem;
}

.page-content ul, .page-content ol {
    margin-bottom: 1.5rem;
    padding-left: 1.5rem;
}

.page-content li {
    margin-bottom: 0.5rem;
}

/* Enhanced tables for legal pages */
.page-content table {
    width: 100%;
    border-collapse: collapse;
    margin: 2rem 0;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 8px;
    overflow: hidden;
}

.page-content th {
    background-color: rgba(255, 184, 0, 0.1);
    color: var(--primary);
    padding: 1rem;
    text-align: left;
    font-weight: 600;
}

.page-content td {
    padding: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.05);
}

/* Legal document specific styling */
.legal-document h2 {
    font-size: 1.8rem;
    color: var(--text-color);
    margin-top: 3rem;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.legal-document h3 {
    font-size: 1.4rem;
    color: var(--text-color);
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.legal-document p, .legal-document li {
    margin-bottom: 1rem;
    color: rgba(255, 255, 255, 0.8);
}

.legal-document .highlight {
    background-color: rgba(255, 184, 0, 0.1);
    padding: 1.5rem;
    border-radius: 8px;
    margin: 2rem 0;
}

.legal-document .highlight h4 {
    color: var(--primary);
    margin-top: 0;
    margin-bottom: 1rem;
}

/* Last updated date styling */
.last-updated {
    display: inline-block;
    margin-bottom: 2rem;
    color: rgba(255, 255, 255, 0.6);
    font-style: italic;
}

/* Contact page specific styling */
.contact-form .form-control {
    background-color: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.1);
    color: white;
    padding: 0.8rem 1rem;
    border-radius: 8px;
    margin-bottom: 1.5rem;
}

.contact-form .form-control:focus {
    background-color: rgba(255, 255, 255, 0.08);
    border-color: var(--primary);
    box-shadow: none;
}

.contact-form label {
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 0.5rem;
}

.contact-form .btn {
    padding: 0.8rem 2rem;
    font-weight: 600;
}

.contact-info {
    background: linear-gradient(145deg, rgba(50, 50, 50, 0.9), rgba(35, 35, 35, 0.9));
    padding: 2rem;
    border-radius: 16px;
    height: 100%;
}

/* Enhanced Page Footer styling */
.page-footer {
    background-color: var(--dark-bg);
    color: var(--light);
    padding: 4rem 0 2rem;
    position: relative;
    overflow: hidden;
    margin-top: 3rem;
}

.page-footer::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' version='1.1' xmlns:xlink='http://www.w3.org/1999/xlink' xmlns:svgjs='http://svgjs.com/svgjs' width='1920' height='500' preserveAspectRatio='none' viewBox='0 0 1920 500'%3e%3cg mask='url(%26quot%3b%23SvgjsMask1016%26quot%3b)' fill='none'%3e%3crect width='1920' height='500' x='0' y='0' fill='rgba(23, 23, 23, 1)'%3e%3c/rect%3e%3cpath d='M0,510.875C91.509,497.156,190.675,513.7,262.632,457.321C329.573,405.164,330.701,313.527,372.304,241.095C418.163,161.381,525.385,120.353,525.224,30.171C525.065,-59.168,421.494,-107.652,363.162,-178.279C311.703,-240.46,278.494,-320.323,201.964,-353.902C126.267,-387.133,39.779,-355.862,-39.931,-337.219C-122.13,-318.038,-198.558,-311.958,-265.909,-264.071C-332.555,-216.731,-381.324,-150.318,-414.418,-76.238C-448.595,0.197,-468.169,85.667,-450.574,168.285C-433.391,249.036,-378.48,313.519,-319.724,372.608C-252.775,439.928,-160.354,473.26,-78.283,499.361C-25.807,516.552,28.303,489.751,78.556,502.14C78.556,502.14,78.556,502.14,78.556,502.14' fill='rgba(28, 28, 28, 1)'%3e%3c/path%3e%3cpath d='M1920 1021.348C2026.366 1017.963 2140.301 1055.862 2227.536 995.27 2315.077 934.452 2334.166 813.807 2367.883 707.673 2402.069 600.134 2457.267 497.051 2425.408 387.841 2393.845 279.639 2284.551 211.78 2197.073 143.018 2121.166 82.894 2051.106 13.952 1953.474 0.4 1855.981-13.127 1770.2 58.243 1674.981 83.873 1583.532 108.606 1476.628 79.329 1406.014 144.893 1335.039 210.772 1341.92 322.798 1311.301 414.797 1280.488 507.247 1209.261 577.767 1211.97 674.868 1214.625 769.985 1289.499 836.553 1359.133 900.273 1429.128 964.323 1515.961 1011.608 1612.229 1028.193 1705.915 1044.337 1811.891 1024.805 1920 1021.348' fill='rgba(28, 28, 28, 1)'%3e%3c/path%3e%3c/g%3e%3cdefs%3e%3cmask id='SvgjsMask1016'%3e%3crect width='1920' height='500' fill='white'%3e%3c/rect%3e%3c/mask%3e%3c/defs%3e%3c/svg%3e");
    background-position: center;
    background-size: cover;
    opacity: 0.5;
    z-index: 0;
}

.page-footer .container {
    position: relative;
    z-index: 1;
}

.footer-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 3rem;
}

.footer-brand {
    flex: 0 0 100%;
    max-width: 350px;
    margin-bottom: 2rem;
}

.footer-brand h3 {
    color: var(--primary);
    font-weight: 700;
    margin-bottom: 1rem;
}

.footer-brand p {
    color: rgba(255, 255, 255, 0.7);
    margin-bottom: 1.5rem;
}

.footer-links {
    display: flex;
    flex-wrap: wrap;
    flex: 1;
    justify-content: space-between;
}

.footer-links-col {
    flex: 0 0 auto;
    margin-bottom: 1.5rem;
    margin-right: 1rem;
}

.footer-links-col h4 {
    color: var(--primary);
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 1.2rem;
}

.footer-links-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links-col ul li {
    margin-bottom: 0.7rem;
}

.footer-links-col ul li a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    transition: all 0.3s ease;
    position: relative;
    display: inline-block;
    padding: 3px 0;
}

.footer-links-col ul li a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 1px;
    bottom: 0;
    left: 0;
    background-color: var(--primary);
    transition: all 0.3s ease;
}

.footer-links-col ul li a:hover {
    color: var(--primary);
    transform: translateX(5px);
}

.footer-links-col ul li a:hover::after {
    width: 100%;
}

.footer-bottom {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    padding-top: 1.5rem;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.footer-bottom p {
    color: rgba(255, 255, 255, 0.5);
    font-size: 0.9rem;
    margin-bottom: 0.5rem;
}

.social-icons {
    display: flex;
    gap: 1rem;
    margin-top: 1rem;
}

.social-icons a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.1);
    color: var(--light);
    font-size: 1rem;
    transition: all 0.3s ease;
    text-decoration: none;
}

.social-icons a:hover {
    background-color: var(--primary);
    color: var(--dark);
    transform: translateY(-3px);
}
