body { font-family: 'Inter', sans-serif; margin: 0; background-color: #F8F9FA; color: #212529; line-height: 1.6; } #gradient-canvas { width: 100%; height: 100%; position: fixed; top: 0; left: 0; z-index: -2; opacity: 0.15; } h1, h2, h3 { text-align: center; } h1 { font-size: 50px; margin-bottom: 15px; font-weight: 700; letter-spacing: -1px; } h2 { font-size: 40px; margin-bottom: 40px; } p { font-size: 16px; color: #6C757D; } .intro-p { text-align: center; max-width: 750px; margin: 0 auto 50px auto; font-size: 17px; line-height: 1.7; } .section { padding: 80px 5%; max-width: 1150px; margin: 0 auto; border-bottom: 1px solid #DEE2E6; } .header { background: rgba(255, 255, 255, 0.9); backdrop-filter: blur(10px); padding: 15px 0; border-bottom: 1px solid #DEE2E6; position: sticky; top: 0; z-index: 1000; box-shadow: 0 2px 4px rgba(0, 0, 0, 0.075); } .navbar { display: flex; justify-content: space-between; align-items: center; width: 90%; margin: 0 auto; max-width: 1150px; } .logo-svg { height: 35px; } .nav-links { list-style: none; display: flex; gap: 25px; margin: 0; padding: 0; } .nav-links a { color: #212529; text-decoration: none; font-weight: 500; padding: 8px 12px; border-radius: 6px; transition: all 0.2s ease-in-out; white-space: nowrap; } .nav-links a:hover { color: #0077CC; background-color: rgba(0, 119, 204, 0.07); } .nav-links a.active { color: #0077CC; box-shadow: 0 0 0 2px #0077CC; } .hero-content p { text-align: center; font-size: 18px; margin-top: 10px; } .image-box { margin: 30px auto 0; max-width: 100%; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.075); border: 1px solid #DEE2E6; border-radius: 10px; transition: all 0.2s ease-in-out; } .image-box:hover { transform: scale(1.03); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); } .image-box img { width: 100%; display: block; border-radius: 9px; } .card-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 25px; } .info-card { background: #FFFFFF; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.075); cursor: pointer; border-radius: 10px; border: 1px solid #DEE2E6; padding: 40px 25px; text-align: center; transition: all 0.3s ease-in-out; } .info-card i { font-size: 36px; color: #0077CC; margin-bottom: 20px; } .info-card:hover { transform: translateY(-5px); box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12); } .info-card.active { border-color: #0077CC; box-shadow: 0 8px 32px rgba(0, 119, 204, 0.25); min-height: 320px; } .info-card h3 { margin: 0 0 10px 0; color: #0077CC; font-size: 20px; } .info-card p { margin: 0; padding: 0; max-height: 0; opacity: 0; font-size: 16px; color: #6C757D; transition: all 0.4s ease-in-out; } .info-card.active p { padding-top: 10px; max-height: 500px; opacity: 1; } .contact-box { background: #FFFFFF; border: 1px solid #DEE2E6; border-radius: 10px; padding: 30px 40px; max-width: 600px; margin: 0 auto; box-shadow: 0 6px 18px rgba(0, 0, 0, 0.075); } .contact-box:hover { border-color: #0077CC; } .contact-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 25px; } .contact-list li { display: flex; align-items: center; gap: 20px; cursor: pointer; } .contact-list li > div { flex-grow: 1; } .contact-list strong { font-size: 16px; font-weight: 500; } .contact-list .copy-feedback { font-size: 11px; color: #198754; font-weight: 500; text-align: right; } .contact-list i { font-size: 20px; color: #0077CC; } .contact-list span, .contact-list a { font-size: 15px; color: #6C757D; text-decoration: none; } .footer { background: #FFFFFF; color: #6C757D; padding: 30px 0; border-top: 1px solid #DEE2E6; } .footer-content { width: 90%; max-width: 1150px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; } .footer-left p { margin: 2px 0; font-size: 13px; } .social-links { display: flex; gap: 15px; } .social-links a { color: #6C757D; font-size: 17px; transition: all 0.2s; } .social-links a:hover { color: #0077CC; transform: scale(1.1); } #back-to-top { position: fixed; bottom: 20px; right: 20px; width: 40px; height: 40px; background: #0077CC; color: #FFFFFF; border-radius: 6px; display: flex; align-items: center; justify-content: center; font-size: 16px; text-decoration: none; opacity: 0; visibility: hidden; transition: all 0.3s ease-in-out; } #back-to-top.visible { opacity: 1; visibility: visible; } #back-to-top:hover { background-color: #005FA3; } @media (max-width: 992px) { .card-grid { grid-template-columns: 1fr 1fr; } } @media (max-width: 768px) { .navbar { flex-direction: column; gap: 10px; } .card-grid { grid-template-columns: 1fr; } .info-card.active { min-height: auto; } .footer-content { flex-direction: column; gap: 10px; text-align: center; } }