/* ─── 풋타이 랜딩 공용 스타일 ───────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@400;600;700;900&family=Sarabun:wght@400;600;700&display=swap');

:root {
    --bg:#fdf8f0; --surface:#ffffff; --surface2:#f5ede0;
    --accent:#e8622a; --accent2:#f5a623;
    --blue:#2d6be4; --green:#27a96c; --red:#e03e3e;
    --text:#1a1a2e; --muted:#8b8fa8; --border:#e8e0d5;
    --thai:#c0392b; --gold:#d4a017;
}
* { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body {
    background:var(--bg); color:var(--text);
    font-family:'Noto Sans KR',sans-serif;
    line-height:1.65; -webkit-font-smoothing:antialiased;
}
a { color:inherit; text-decoration:none; }
img { max-width:100%; display:block; }
.thai { font-family:'Sarabun',sans-serif; color:var(--thai); font-weight:600; }

/* ─── 헤더 / nav ─────────────────────────────────────────────────────────── */
.lp-header {
    position:sticky; top:0; z-index:100; background:rgba(253,248,240,0.95);
    backdrop-filter:blur(8px); border-bottom:1.5px solid var(--border);
}
.lp-header-inner {
    max-width:1080px; margin:0 auto;
    padding:14px 22px; display:flex; align-items:center; gap:18px; flex-wrap:wrap;
}
.lp-logo { font-size:22px; font-weight:900; color:var(--text); }
.lp-logo span { color:var(--accent); }
.lp-logo .thai-sub { font-family:'Sarabun',sans-serif; color:var(--thai); font-size:11px; font-weight:600; display:block; margin-top:-4px; }
.lp-nav { display:flex; gap:6px; margin-left:auto; flex-wrap:wrap; align-items:center; }
.lp-nav a {
    padding:6px 12px; border-radius:10px;
    font-size:13px; font-weight:700; color:var(--muted);
    transition:all .15s;
}
.lp-nav a:hover { background:var(--surface2); color:var(--accent); }
.lp-nav .lp-cta {
    background:var(--accent); color:#fff; padding:8px 16px;
    box-shadow:0 4px 14px rgba(232,98,42,0.25);
}
.lp-nav .lp-cta:hover { background:#d4541f; color:#fff; }
.lp-nav .lp-free {
    background:var(--surface); color:var(--accent);
    border:1.5px solid var(--accent);
    padding:8px 16px;
}
.lp-nav .lp-free:hover { background:#fff3e0; color:var(--accent); }

/* 카톡 버튼 — 히어로/마지막 CTA 영역용 (사이트 톤 — 보조 오렌지) */
.btn-kakao {
    display:inline-flex; align-items:center; justify-content:center;
    background:var(--surface); color:var(--accent);
    border:2px solid var(--accent);
    padding:13px 28px; font-size:15px; font-weight:900; border-radius:14px;
    font-family:inherit; cursor:pointer;
    text-decoration:none; transition:all .15s;
}
.btn-kakao:hover { background:#fff3e0; color:var(--accent); transform:translateY(-2px); }
.btn-kakao.small {
    padding:10px 22px; font-size:14px; border-width:1.5px;
}

/* ─── 컨테이너 ────────────────────────────────────────────────────────────── */
.lp-section {
    max-width:1080px; margin:0 auto;
    padding:80px 22px;
}
.lp-section.narrow { max-width:780px; }
.lp-section h2 {
    font-size:30px; font-weight:900; margin-bottom:12px; line-height:1.3;
    color:var(--text);
}
.lp-section h2 .ac { color:var(--accent); }
.lp-section .lp-sub-title {
    font-size:14px; font-weight:700; color:var(--accent);
    margin-bottom:6px; letter-spacing:1px;
}
.lp-section .lp-lead {
    font-size:16px; color:var(--muted); font-weight:600; margin-bottom:36px;
    line-height:1.8;
}

/* ─── 히어로 ─────────────────────────────────────────────────────────────── */
.lp-hero {
    background:
      radial-gradient(ellipse at top right, rgba(245,166,35,0.18), transparent 60%),
      radial-gradient(ellipse at bottom left, rgba(232,98,42,0.15), transparent 50%),
      var(--bg);
    padding:80px 22px 100px;
}
.lp-hero-inner { max-width:1080px; margin:0 auto; text-align:center; }
.lp-hero .badge {
    display:inline-block; background:var(--surface); border:1.5px solid var(--border);
    border-radius:99px; padding:6px 16px; font-size:12px; font-weight:700;
    color:var(--accent); margin-bottom:18px;
}
.lp-hero h1 {
    font-size:48px; font-weight:900; line-height:1.25;
    margin-bottom:18px; letter-spacing:-1px;
}
.lp-hero h1 .ac { color:var(--accent); }
.lp-hero h1 .thai-h { font-family:'Sarabun',sans-serif; color:var(--thai); }
.lp-hero p {
    font-size:18px; font-weight:600; color:var(--muted);
    max-width:680px; margin:0 auto 32px; line-height:1.8;
}
.lp-hero-cta { display:flex; gap:10px; justify-content:center; flex-wrap:wrap; }
.btn-primary, .btn-secondary {
    display:inline-flex; align-items:center; justify-content:center;
    padding:14px 28px; font-size:15px; font-weight:900; border-radius:14px;
    font-family:inherit; cursor:pointer; border:none;
    text-decoration:none; transition:all .15s;
}
.btn-primary { background:var(--accent); color:#fff; box-shadow:0 6px 22px rgba(232,98,42,0.3); }
.btn-primary:hover { background:#d4541f; transform:translateY(-2px); color:#fff; }
.btn-secondary { background:var(--surface); color:var(--text); border:1.5px solid var(--border); }
.btn-secondary:hover { border-color:var(--accent); color:var(--accent); }

@media (max-width:640px) {
    .lp-hero h1 { font-size:32px; }
    .lp-hero p { font-size:15px; }
    .lp-section { padding:50px 22px; }
    .lp-section h2 { font-size:24px; }
}

/* ─── 비디오 임베드 ──────────────────────────────────────────────────────── */
.lp-video-wrap {
    position:relative; padding-bottom:56.25%; height:0;
    border-radius:18px; overflow:hidden;
    box-shadow:0 16px 60px rgba(0,0,0,0.18);
    background:#000;
}
.lp-video-wrap iframe {
    position:absolute; top:0; left:0; width:100%; height:100%; border:0;
}

/* ─── 차별점 grid ────────────────────────────────────────────────────────── */
.lp-features { display:grid; grid-template-columns:1fr; gap:18px; }
@media (min-width:720px) { .lp-features { grid-template-columns:repeat(3,1fr); } }
.lp-feature-card {
    background:var(--surface); border:1.5px solid var(--border);
    border-radius:18px; padding:24px 22px;
    transition:all .15s;
}
.lp-feature-card:hover { border-color:var(--accent); transform:translateY(-4px); box-shadow:0 12px 28px rgba(0,0,0,0.06); }
.lp-feature-card .fc-icon { font-size:36px; margin-bottom:10px; }
.lp-feature-card h3 { font-size:17px; font-weight:900; margin-bottom:8px; }
.lp-feature-card p { font-size:13px; color:var(--muted); font-weight:600; line-height:1.7; }

/* ─── 강의 카드 ──────────────────────────────────────────────────────────── */
.lp-courses { display:grid; grid-template-columns:1fr; gap:14px; }
@media (min-width:720px) { .lp-courses { grid-template-columns:1fr 1fr; } }
.lp-course-card {
    background:var(--surface); border:1.5px solid var(--border);
    border-radius:18px; padding:22px; display:flex; gap:16px; align-items:flex-start;
    transition:all .15s;
}
.lp-course-card:hover { border-color:var(--accent); transform:translateY(-3px); }
.lp-course-card .cc-icon {
    font-size:34px; width:56px; height:56px; flex-shrink:0;
    background:var(--surface2); border-radius:14px;
    display:flex; align-items:center; justify-content:center;
}
.lp-course-card h3 { font-size:17px; font-weight:900; margin-bottom:6px; }
.lp-course-card p  { font-size:13px; color:var(--muted); font-weight:600; line-height:1.7; }
.lp-course-card .tag {
    display:inline-block; background:var(--surface2); color:var(--accent);
    font-size:10px; font-weight:700; padding:2px 8px; border-radius:8px;
    margin-top:8px;
}

/* ─── 유튜버 추천 영상 ──────────────────────────────────────────────── */
.lp-youtube-row { display:grid; grid-template-columns:1fr; gap:18px; }
@media (min-width:720px) { .lp-youtube-row { grid-template-columns:1fr 1fr; } }
.lp-yt-card { background:transparent; }
.lp-yt-card .lp-video-wrap { border-radius:14px; }
.lp-yt-meta { padding:12px 4px 0; }
.lp-yt-channel { font-size:13px; font-weight:900; color:var(--accent); }
.lp-yt-title   { font-size:14px; font-weight:700; color:var(--text); margin-top:2px; }

/* ─── 숙소 카드 ──────────────────────────────────────────────────────── */
.lp-stay-list { display:grid; grid-template-columns:1fr; gap:24px; }
@media (min-width:780px) { .lp-stay-list { grid-template-columns:1fr 1fr; } }
.lp-stay-card {
    background:var(--surface); border:1.5px solid var(--border);
    border-radius:20px; overflow:hidden;
    display:flex; flex-direction:column;
    transition:all .15s;
}
.lp-stay-card:hover { border-color:var(--accent); transform:translateY(-3px); box-shadow:0 14px 36px rgba(0,0,0,0.08); }
.lp-stay-img {
    width:100%; aspect-ratio:16/10;
    background:linear-gradient(135deg,#f5ede0,#fff3e0);
    display:flex; align-items:center; justify-content:center;
    font-size:64px; color:var(--accent);
}
.lp-stay-body { padding:22px 22px 18px; flex:1; display:flex; flex-direction:column; }
.lp-stay-loc { font-size:11px; font-weight:900; color:var(--accent); letter-spacing:1px; margin-bottom:6px; }
.lp-stay-name { font-size:20px; font-weight:900; margin-bottom:8px; line-height:1.35; }
.lp-stay-desc { font-size:13px; color:var(--muted); font-weight:600; line-height:1.8; margin-bottom:14px; }
.lp-stay-features { display:flex; flex-wrap:wrap; gap:5px; margin-bottom:16px; }
.lp-stay-features span {
    background:var(--surface2); color:var(--text);
    font-size:11px; font-weight:700; padding:3px 10px; border-radius:99px;
}
.lp-stay-actions { display:flex; gap:6px; margin-top:auto; }
.btn-book {
    background:var(--accent); color:#fff; border:none; border-radius:11px;
    padding:11px 22px; font-family:inherit; font-size:13px; font-weight:900;
    cursor:pointer; box-shadow:0 4px 12px rgba(232,98,42,0.25); flex:1;
}
.btn-book:hover { background:#d4541f; }

/* ─── 후기 ───────────────────────────────────────────────────────────────── */
.lp-reviews { display:grid; grid-template-columns:1fr; gap:14px; }
@media (min-width:720px) { .lp-reviews { grid-template-columns:1fr 1fr; } }
.lp-review-card {
    background:var(--surface); border:1.5px solid var(--border);
    border-radius:18px; padding:22px;
}
.lp-review-card .stars { color:var(--gold); font-size:16px; margin-bottom:8px; }
.lp-review-card .quote { font-size:14px; color:var(--text); font-weight:600; line-height:1.8; margin-bottom:12px; }
.lp-review-card .author { font-size:12px; color:var(--muted); font-weight:700; }
.lp-review-card .author b { color:var(--text); }

/* ─── 숙박권 ─────────────────────────────────────────────────────────────── */
.lp-stay-banner {
    background:linear-gradient(135deg,#e8622a,#f5a623);
    color:#fff; border-radius:24px; padding:40px 32px;
    text-align:center;
    box-shadow:0 16px 50px rgba(232,98,42,0.3);
}
.lp-stay-banner .ribbon {
    display:inline-block; background:rgba(255,255,255,0.25);
    padding:4px 14px; border-radius:99px;
    font-size:12px; font-weight:700; letter-spacing:1px; margin-bottom:14px;
}
.lp-stay-banner h2 { color:#fff; font-size:32px; margin-bottom:14px; }
.lp-stay-banner p { font-size:15px; opacity:0.95; font-weight:600; max-width:600px; margin:0 auto 22px; line-height:1.8; }
.lp-stay-details {
    background:rgba(255,255,255,0.15); border-radius:14px;
    padding:18px 22px; text-align:left;
    max-width:540px; margin:0 auto;
}
.lp-stay-details .row { display:flex; gap:10px; padding:6px 0; font-size:13px; font-weight:600; }
.lp-stay-details .row .lbl { width:100px; opacity:0.85; }
.lp-stay-details .row .val { flex:1; }

/* ─── 생활 태국어 목차 ───────────────────────────────────────────────────── */
.lp-life-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
@media (min-width:720px) { .lp-life-grid { grid-template-columns:repeat(4,1fr); } }
.lp-life-card {
    background:var(--surface); border:1.5px solid var(--border);
    border-radius:16px; padding:22px 14px; text-align:center;
    transition:all .15s;
}
.lp-life-card:hover { border-color:var(--accent); transform:translateY(-3px); box-shadow:0 10px 24px rgba(0,0,0,0.06); }
.lp-life-card .ic { font-size:42px; margin-bottom:8px; }
.lp-life-card .name { font-size:14px; font-weight:900; color:var(--text); }
.lp-life-card .thai { font-size:12px; margin-top:2px; }

/* ─── 대화 박스 (생활태국어 페이지) ────────────────────────────────────── */
.lp-dialogue {
    background:var(--surface); border:1.5px solid var(--border);
    border-radius:18px; padding:20px 22px;
    margin-bottom:18px;
}
.lp-dialogue .scene {
    font-size:12px; font-weight:700; color:var(--accent);
    text-transform:uppercase; letter-spacing:1px; margin-bottom:10px;
}
.lp-line { display:flex; gap:12px; padding:10px 0; border-bottom:1px dashed var(--border); }
.lp-line:last-child { border-bottom:0; }
.lp-line .who {
    background:var(--surface2); color:var(--text);
    font-size:11px; font-weight:900; padding:3px 10px; border-radius:99px;
    flex-shrink:0; align-self:flex-start; min-width:56px; text-align:center;
}
.lp-line .who.staff { background:#eaf2ff; color:var(--blue); }
.lp-line .who.you   { background:#fff3e0; color:var(--accent); }
.lp-line .lines { flex:1; }
.lp-line .ko    { font-size:14px; font-weight:700; color:var(--text); margin-bottom:4px; }
.lp-line .th    { font-family:'Sarabun',sans-serif; font-size:18px; color:var(--thai); font-weight:600; margin-bottom:2px; line-height:1.5; }
.lp-line .romanize { font-size:11px; color:var(--muted); font-weight:600; font-style:italic; }

.lp-tip {
    background:#fff8ee; border-left:3px solid var(--accent);
    border-radius:0 10px 10px 0; padding:12px 14px;
    margin:14px 0;
    font-size:13px; color:var(--text); font-weight:600; line-height:1.7;
}
.lp-tip b { color:var(--accent); }

/* ─── 페이지 헤더 (하위 페이지 공통) ──────────────────────────────────── */
.lp-page-hero {
    background:var(--surface2);
    padding:50px 22px;
    text-align:center;
    border-bottom:1.5px solid var(--border);
}
.lp-page-hero .crumb {
    font-size:11px; color:var(--muted); font-weight:700; margin-bottom:8px;
}
.lp-page-hero .crumb a { color:var(--accent); }
.lp-page-hero h1 { font-size:34px; font-weight:900; margin-bottom:8px; }
.lp-page-hero h1 .ic { margin-right:8px; }
.lp-page-hero .desc { font-size:14px; color:var(--muted); font-weight:600; }
@media (max-width:640px) { .lp-page-hero h1 { font-size:24px; } }

/* ─── 인페이지 CTA (목차 페이지 등) ───────────────────────────────────── */
.lp-inpage-cta {
    background:var(--surface); border:2px dashed var(--accent);
    border-radius:18px; padding:26px 24px;
    text-align:center; margin-top:34px;
}
.lp-inpage-cta h3 { font-size:18px; font-weight:900; margin-bottom:8px; }
.lp-inpage-cta p  { font-size:13px; color:var(--muted); font-weight:600; margin-bottom:14px; line-height:1.7; }

/* ─── 페이지 hero 의 [← 목록] 버튼 ───────────────────────────────────── */
.lp-page-hero .back-link {
    display:inline-block; margin-top:14px;
    background:var(--surface); color:var(--text);
    border:1.5px solid var(--border); border-radius:10px;
    padding:8px 16px; font-size:12px; font-weight:700;
    text-decoration:none; transition:all .15s;
}
.lp-page-hero .back-link:hover { border-color:var(--accent); color:var(--accent); }

/* ─── 페이지 하단 back bar ───────────────────────────────────────────── */
.lp-back-bar {
    text-align:center; margin-top:36px; padding-top:24px;
    border-top:1.5px dashed var(--border);
}
.lp-back-bar a {
    display:inline-block;
    background:var(--surface); color:var(--text);
    border:1.5px solid var(--border); border-radius:12px;
    padding:11px 22px; font-size:13px; font-weight:700;
    text-decoration:none; transition:all .15s;
}
.lp-back-bar a:hover { border-color:var(--accent); color:var(--accent); }

/* ─── 푸터 ───────────────────────────────────────────────────────────────── */
.lp-footer {
    background:var(--surface2); border-top:1.5px solid var(--border);
    padding:30px 22px; text-align:center;
}
.lp-footer .ft-logo { font-size:18px; font-weight:900; margin-bottom:6px; }
.lp-footer .ft-logo span { color:var(--accent); }
.lp-footer .ft-meta { font-size:11px; color:var(--muted); font-weight:600; line-height:1.8; }
.lp-footer .ft-meta a { color:var(--accent); }

/* ─── 유틸 ───────────────────────────────────────────────────────────────── */
.lp-center { text-align:center; }
.lp-mb-20  { margin-bottom:20px; }
.lp-mt-20  { margin-top:20px; }
