@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css');

:root {
    --bg-primary: #07111f;
    --bg-secondary: rgba(11, 21, 39, 0.72);
    --bg-surface: rgba(13, 25, 45, 0.72);
    --bg-surface-strong: rgba(16, 30, 55, 0.88);
    --border-soft: rgba(168, 196, 255, 0.16);
    --border-strong: rgba(168, 196, 255, 0.26);
    --text-primary: #272727;
    --text-secondary: #272727;
    --text-muted: #7183aa;
    --accent-start: #59a7ff;
    --accent-end: #7b61ff;
    --accent-gradient: linear-gradient(135deg, var(--accent-start), var(--accent-end));
    --success: #3dd7a5;
    --danger: #ff6b81;
    --shadow-soft: 0 18px 50px rgba(3, 8, 18, 0.28);
    --shadow-strong: 0 30px 80px rgba(0, 0, 0, 0.35);
    --radius-sm: 16px;
    --radius-md: 24px;
    --radius-lg: 32px;
    --space-1: 8px;
    --space-2: 16px;
    --space-3: 24px;
    --space-4: 32px;
    --space-5: 40px;
    --space-6: 48px;
    --space-7: 56px;
    --space-8: 64px;
    --space-9: 72px;
    --space-10: 80px;
    --container: 1200px;
    --nav-height: 84px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: "Inter", sans-serif;
    color: var(--text-primary);
    /* background:
        radial-gradient(circle at top left, rgba(89, 167, 255, 0.18), transparent 30%),
        radial-gradient(circle at 80% 20%, rgba(123, 97, 255, 0.24), transparent 26%),
        radial-gradient(circle at 50% 100%, rgba(42, 203, 255, 0.1), transparent 28%),
        linear-gradient(180deg, #07111f 0%, #081323 35%, #0b1730 100%); */
    min-height: 100vh;
    overflow-x: hidden;
}

a { text-decoration: none; color: inherit; }

/* HERO BANNER */
.hero {
    background: linear-gradient(135deg, #0d0d2b 0%, #1a0a3d 50%, #0d0d2b 100%);
    text-align: center;
    padding: 30px 20px 20px;
    position: relative;
    overflow: hidden;
}
.hero-logo {
    font-size: 42px;
    font-weight: 900;
    color: #fff;
    text-shadow: 0 0 20px #a020f0;
    letter-spacing: 2px;
}
.hero-logo span { color: #ff6600; }
.hero-subtitle {
    font-size: 28px;
    font-weight: 800;
    color: #f0e040;
    margin: 8px 0;
    text-shadow: 2px 2px 6px #000;
}
.hero-tagline {
    font-size: 14px;
    color: #ddd;
    margin-bottom: 10px;
    letter-spacing: 1px;
}
.hero-cta {
    display: inline-block;
    background: linear-gradient(90deg, #ff4444, #cc0000);
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    padding: 10px 30px;
    border-radius: 4px;
    margin-top: 8px;
    border: 2px solid #ff8888;
}
.hero-banner-text {
    font-size: 17px;
    color: #fff;
    font-weight: bold;
    margin-bottom: 6px;
    text-shadow: 1px 1px 4px #a020f0;
}

/* MAIN CONTENT */
.container {
    max-width: 860px;
    margin: 0 auto;
}

.section-title {
    font-size: 22px;
    font-weight: 800;
    text-align: center;
    color: #111;
    margin: 30px 0 12px;
}
.section-title-blue {
    color: #1155cc;
}

.intro-box {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 6px;
    padding: 20px 24px;
    margin-bottom: 20px;
    line-height: 1.8;
    font-size: 14px;
    color: #444;
}
.intro-box h1 {
    font-size: 20px;
    font-weight: 900;
    text-align: center;
    margin-bottom: 12px;
    color: #111;
}
.intro-box .highlight {
    color: #cc0000;
    font-weight: bold;
}
.intro-box .notice {
    background: #f9f9f9;
    border-left: 4px solid #ff6600;
    padding: 8px 12px;
    margin: 10px 0;
    font-size: 13px;
}
.intro-box .bullet-list {
    list-style: none;
    padding: 0;
    margin: 10px 0;
}
.intro-box .bullet-list li {
    padding: 4px 0;
    font-size: 13px;
}
.intro-box .bullet-list li::before {
    content: "🔴 ";
}

.center-img {
    display: block;
    margin: 16px auto;
    max-width: 360px;
    width: 100%;
    border-radius: 8px;
    border: 3px solid #a020f0;
}

/* INFO SECTIONS */
.info-section {
    margin: 24px 0;
    padding: 18px 20px;
    border: 1px solid #e8e8e8;
    border-radius: 6px;
    line-height: 1.8;
    font-size: 14px;
    color: #444;
}
.info-section h2 {
    font-size: 17px;
    font-weight: 800;
    color: #111;
    margin-bottom: 10px;
}

/* HOTPLACE SECTION */
.hotplace-header {
    background: linear-gradient(90deg, #0d0d2b, #1a0a3d);
    color: #fff;
    text-align: center;
    padding: 20px;
    font-size: 22px;
    font-weight: 900;
    margin: 30px 0 0;
    border-radius: 6px 6px 0 0;
}
.hotplace-header span { color: #ff6600; }

.place-card {
    border: 1px solid #ddd;
    border-top: none;
    padding: 18px 20px;
    margin-bottom: 0;
}
.place-card:last-child { border-radius: 0 0 6px 6px; }
.place-card h3 {
    font-size: 16px;
    font-weight: 800;
    color: #1155cc;
    text-align: center;
    margin-bottom: 10px;
}
.place-card h3 .icon { font-size: 18px; margin-right: 4px; }
.place-card p {
    font-size: 13px;
    color: #555;
    line-height: 1.8;
}
.divider { border: none; border-top: 1px solid #eee; margin: 0; }