* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang TC", "Microsoft JhengHei", sans-serif;
background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
color: #2c3e50;
line-height: 1.8;
-webkit-font-smoothing: antialiased;
}
.container {
max-width: 1000px;
margin: 0 auto;
padding: 60px 20px;
}
.hero {
text-align: center;
margin-bottom: 60px;
animation: fadeInDown 1s ease-out;
}
.hero h1 {
font-size: 52px;
font-weight: 800;
letter-spacing: -0.02em;
margin-bottom: 20px;
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
text-shadow: 0 2px 10px rgba(102, 126, 234, 0.1);
}
.hero .subtitle {
font-size: 22px;
color: #5a6c7d;
font-weight: 400;
font-style: italic;
}
.intro-section {
background: #fff;
border-radius: 20px;
padding: 50px;
margin-bottom: 40px;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
animation: fadeInUp 1s ease-out 0.2s both;
}
.intro-section p {
font-size: 20px;
line-height: 2;
color: #34495e;
text-align: center;
}
.content-section {
background: #fff;
border-radius: 20px;
padding: 50px;
margin-bottom: 40px;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
animation: fadeInUp 1s ease-out;
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.content-section:hover {
transform: translateY(-8px);
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15);
}
.section-title {
font-size: 36px;
font-weight: 700;
margin-bottom: 30px;
color: #2c3e50;
letter-spacing: -0.01em;
border-left: 5px solid #667eea;
padding-left: 20px;
}
.section-subtitle {
font-size: 24px;
font-weight: 600;
margin: 35px 0 20px;
color: #5a6c7d;
display: flex;
align-items: center;
}
.section-subtitle::before {
content: "";
margin-right: 10px;
font-size: 28px;
}
p {
font-size: 18px;
line-height: 2;
color: #34495e;
margin-bottom: 24px;
}
.image-container {
margin: 35px 0;
border-radius: 16px;
overflow: hidden;
box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
transition: transform 0.4s ease, box-shadow 0.4s ease;
}
.image-container:hover {
transform: scale(1.03);
box-shadow: 0 15px 50px rgba(0, 0, 0, 0.2);
}
.image-container img {
width: 100%;
height: auto;
display: block;
}
.highlight-box {
background: linear-gradient(135deg, #667eea15 0%, #764ba215 100%);
border-left: 5px solid #667eea;
padding: 30px;
border-radius: 12px;
margin: 30px 0;
font-size: 19px;
line-height: 2;
}
.features-list {
background: linear-gradient(135deg, #f093fb15 0%, #f5576c15 100%);
padding: 35px;
border-radius: 16px;
margin: 30px 0;
}
.features-list ul {
list-style: none;
padding: 0;
}
.features-list li {
font-size: 19px;
line-height: 2.2;
color: #2c3e50;
padding-left: 35px;
position: relative;
margin-bottom: 12px;
}
.features-list li::before {
content: " ";
position: absolute;
left: 0;
font-size: 22px;
}
.info-card {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
color: #fff;
padding: 50px;
border-radius: 20px;
margin-top: 60px;
box-shadow: 0 15px 50px rgba(102, 126, 234, 0.3);
}
.info-card h3 {
font-size: 36px;
margin-bottom: 35px;
font-weight: 700;
text-align: center;
}
.info-item {
display: flex;
margin-bottom: 18px;
font-size: 18px;
line-height: 1.8;
align-items: flex-start;
}
.info-label {
font-weight: 700;
min-width: 140px;
color: #fff;
flex-shrink: 0;
}
.info-value {
color: #f0f0f0;
}
.info-value a {
color: #fff;
text-decoration: underline;
transition: opacity 0.3s ease;
}
.info-value a:hover {
opacity: 0.8;
}
.badge {
display: inline-block;
background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
color: #fff;
padding: 10px 20px;
border-radius: 25px;
font-size: 15px;
font-weight: 700;
margin-bottom: 25px;
box-shadow: 0 4px 15px rgba(245, 87, 108, 0.3);
}
.grid-2 {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 25px;
margin: 35px 0;
}
@keyframes fadeInUp {
from {
opacity: 0;
transform: translateY(40px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes fadeInDown {
from {
opacity: 0;
transform: translateY(-40px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@media (max-width: 768px) {
.container {
padding: 40px 16px;
}
.hero h1 {
font-size: 36px;
}
.hero .subtitle {
font-size: 18px;
}
.intro-section,
.content-section {
padding: 30px 24px;
border-radius: 16px;
}
.section-title {
font-size: 28px;
}
.section-subtitle {
font-size: 20px;
}
p {
font-size: 16px;
}
.info-card {
padding: 35px 24px;
}
.info-item {
flex-direction: column;
}
.info-label {
margin-bottom: 6px;
}
}
.emoji {
font-size: 1.2em;
}
* {
/* 標題樣式 */
