*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{background-color:#fff;color:#334155;font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,sans-serif;font-size:1rem;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{color:#2d4a5c;font-weight:600;line-height:1.25}h1{font-size:3rem}@media(max-width:479px){h1{font-size:2rem}}h2{font-size:2.5rem}@media(max-width:479px){h2{font-size:1.5rem}}h3{font-size:2rem}@media(max-width:479px){h3{font-size:1.25rem}}p{color:#64748b;margin-bottom:1rem}a{color:#3d6b7d;text-decoration:none;transition:color .15s ease}a:hover{color:#2d4a5c}.container{margin:0 auto;max-width:1280px;padding:0 1rem;width:100%}@media(min-width:768px){.container{padding:0 1.5rem}}@media(min-width:1024px){.container{padding:0 2rem}}.section{padding:3rem 0}@media(min-width:768px){.section{padding:4rem 0}}@media(min-width:1024px){.section{padding:5rem 0}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-serif{font-family:"Noto Serif TC",PMingLiU,serif}.font-english{font-family:Montserrat,Helvetica Neue,sans-serif}.text-primary-color{color:#3d6b7d}.text-white{color:#fff}.text-muted{color:#94a3b8}.bg-primary{background-color:#3d6b7d}.bg-primary-dark{background-color:#2d4a5c}.bg-light{background-color:#f8fafb}.btn{align-items:center;border:none;border-radius:.5rem;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:500;justify-content:center;line-height:1;padding:.75rem 1.5rem;transition:all .15s ease}.btn-primary{background-color:#3d6b7d;color:#fff}.btn-primary:hover{background-color:#2d4a5c}.btn-outline{background-color:transparent;border:2px solid #3d6b7d;color:#3d6b7d}.btn-outline:hover{background-color:#3d6b7d;color:#fff}.btn-lg{font-size:1.125rem;padding:1rem 2rem}.card{background-color:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;transform:translateY(-4px)}.card-body{padding:1.5rem}.card-image{height:auto;-o-object-fit:cover;object-fit:cover;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.animate-fade-in{animation:fadeIn .6s ease-out forwards}.animate-slide-left{animation:slideInLeft .6s ease-out forwards}.animate-slide-right{animation:slideInRight .6s ease-out forwards}.hero{align-items:center;background-color:#2d4a5c;color:#fff;display:flex;justify-content:center;min-height:100vh;overflow:hidden;position:relative}.hero-content{max-width:800px;padding:2rem;position:relative;text-align:center;z-index:1}.hero-title{color:#fff;font-size:3rem;font-weight:700;margin-bottom:1.5rem}@media(max-width:479px){.hero-title{font-size:2rem}}.hero-subtitle{font-size:1.5rem;font-weight:300;margin-bottom:2rem;opacity:.9}@media(max-width:479px){.hero-subtitle{font-size:1.125rem}}.hero-overlay{background:#2d4a5c99;inset:0;position:absolute}.section-header{margin-bottom:3rem;text-align:center}.section-header-title{color:#2d4a5c;font-size:2.5rem;margin-bottom:1rem}@media(max-width:479px){.section-header-title{font-size:2rem}}.section-header-subtitle{color:#3d6b7d;font-family:Montserrat,Helvetica Neue,sans-serif;font-size:1.125rem;letter-spacing:.1em;margin-bottom:.5rem;text-transform:uppercase}.section-header-description{color:#64748b;margin:0 auto;max-width:600px}.grid{display:grid;gap:1.5rem}.grid-cols-1{grid-template-columns:1fr}.grid-cols-2{grid-template-columns:repeat(2,1fr)}@media(max-width:479px){.grid-cols-2{grid-template-columns:1fr}}.grid-cols-3{grid-template-columns:repeat(3,1fr)}@media(max-width:767px){.grid-cols-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:479px){.grid-cols-3{grid-template-columns:1fr}}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media(max-width:1023px){.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:479px){.grid-cols-4{grid-template-columns:1fr}}.n-button{font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,sans-serif}.n-card{border-radius:1rem}.n-menu{font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,sans-serif}
