/* ============================================================
   Gear Travel Korea – Main Stylesheet v2
   geartravelkorea.com
   ============================================================ */

:root {
  --sky: #5BB8E8;
  --sky-light: #C5E8F7;
  --sky-deep: #2196C4;
  --pink: #F8A4BE;
  --pink-light: #FCDEE8;
  --pink-deep: #E0527A;
  --sakura: #FFD6E5;
  --white: #FFFFFF;
  --dark: #1A2E3B;
  --mid: #4A6274;
  --gold: #F4C842;
  --card-shadow: 0 12px 40px rgba(33,150,196,0.18);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Noto Sans Thai',sans-serif;background:#fff;color:var(--dark);overflow-x:hidden;}

/* SAKURA */
.sakura-wrap{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;overflow:hidden;}
.petal{position:absolute;top:-30px;border-radius:150% 0 150% 0;opacity:.75;animation:sakura-fall linear infinite;}
@keyframes sakura-fall{
  0%{transform:translateY(0) rotate(0deg) translateX(0);opacity:.8;}
  50%{transform:translateY(48vh) rotate(200deg) translateX(40px);opacity:.5;}
  100%{transform:translateY(110vh) rotate(400deg) translateX(-30px);opacity:0;}
}

/* NAV */
nav{position:fixed;top:0;left:0;right:0;z-index:900;background:rgba(255,255,255,.93);backdrop-filter:blur(14px);border-bottom:2.5px solid var(--pink-light);display:flex;align-items:center;justify-content:space-between;padding:10px 40px;box-shadow:0 2px 24px rgba(248,164,190,.25);}
.nav-logo{display:flex;align-items:center;gap:10px;text-decoration:none;}
.nav-logo img{height:52px;width:auto;}
.nav-logo span{font-family:'Montserrat',sans-serif;font-weight:900;font-size:1.15rem;color:var(--dark);letter-spacing:-0.5px;}
.nav-links{display:flex;gap:28px;list-style:none;}
.nav-links a{text-decoration:none;color:var(--dark);font-weight:600;font-size:.88rem;position:relative;padding-bottom:3px;transition:color .25s;}
.nav-links a::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2.5px;background:linear-gradient(90deg,var(--sky-deep),var(--pink-deep));border-radius:2px;transform:scaleX(0);transition:transform .3s;}
.nav-links a:hover{color:var(--sky-deep);}
.nav-links a:hover::after{transform:scaleX(1);}
.btn-line{background:linear-gradient(135deg,#06C755,#04A244);color:#fff;padding:9px 22px;border-radius:25px;font-weight:700;font-size:.88rem;text-decoration:none;display:inline-flex;align-items:center;gap:6px;transition:all .25s;box-shadow:0 4px 14px rgba(6,199,85,.3);}
.btn-line:hover{transform:translateY(-2px);box-shadow:0 7px 20px rgba(6,199,85,.4);}
.hamburger{display:none;background:none;border:none;font-size:1.6rem;cursor:pointer;color:var(--dark);}

/* HERO */
.hero{min-height:100vh;background:linear-gradient(145deg,#C5E8F7 0%,#87CEEB 25%,#FFD6E5 60%,#F8A4BE 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;padding-top:80px;}
.hero-bg-pattern{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,rgba(255,255,255,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.25) 0%,transparent 45%);pointer-events:none;}
.hero-inner{max-width:1180px;margin:0 auto;padding:60px 40px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative;z-index:2;}
.hero-text h1{font-family:'Montserrat',sans-serif;font-size:3.4rem;font-weight:900;line-height:1.1;color:var(--dark);margin-bottom:10px;letter-spacing:-1px;}
.hero-text h1 .highlight{background:linear-gradient(135deg,var(--sky-deep),var(--pink-deep));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.hero-tagline{font-size:1.3rem;font-weight:800;color:var(--pink-deep);margin-bottom:8px;letter-spacing:.5px;}
.hero-sub{font-size:1rem;color:var(--mid);line-height:1.9;margin-bottom:28px;}
.hero-btns{display:flex;gap:14px;flex-wrap:wrap;}
.btn-primary{background:linear-gradient(135deg,var(--sky-deep),#1976A8);color:#fff;padding:14px 28px;border-radius:30px;text-decoration:none;font-weight:700;font-size:.95rem;display:inline-flex;align-items:center;gap:8px;transition:all .3s;box-shadow:0 5px 18px rgba(33,150,196,.4);}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(33,150,196,.5);}
.btn-pink{background:linear-gradient(135deg,var(--pink-deep),#C03060);color:#fff;padding:14px 28px;border-radius:30px;text-decoration:none;font-weight:700;font-size:.95rem;display:inline-flex;align-items:center;gap:8px;transition:all .3s;box-shadow:0 5px 18px rgba(224,82,122,.4);}
.btn-pink:hover{transform:translateY(-3px);box-shadow:0 10px 28px rgba(224,82,122,.5);}
.hero-img-wrap{position:relative;}
.hero-img{width:100%;height:480px;object-fit:cover;border-radius:24px;box-shadow:0 24px 70px rgba(33,150,196,.3);}
.hero-float-card{position:absolute;bottom:-20px;left:-30px;background:#fff;border-radius:18px;padding:16px 20px;box-shadow:0 12px 35px rgba(0,0,0,.12);display:flex;gap:14px;align-items:center;}
.float-stat{text-align:center;}
.float-stat .num{font-family:'Montserrat',sans-serif;font-size:1.4rem;font-weight:900;color:var(--sky-deep);display:block;}
.float-stat .lbl{font-size:.72rem;color:var(--mid);font-weight:600;}
.float-divider{width:1px;height:40px;background:var(--pink-light);}

/* TRUST BAR */
.trust-bar{background:var(--dark);color:#fff;padding:14px;display:flex;justify-content:center;align-items:center;gap:40px;flex-wrap:wrap;}
.trust-item{display:flex;align-items:center;gap:8px;font-size:.82rem;font-weight:600;}
.trust-item .icon{font-size:1.1rem;}

/* SEO BAR */
.seo-bar{background:#f8f9fa;padding:16px 40px;text-align:center;border-bottom:1px solid #e8e8e8;}
.seo-bar p{max-width:900px;margin:0 auto;font-size:.82rem;color:#6b7c8d;line-height:2;font-weight:500;}
.seo-bar strong{color:var(--sky-deep);}

/* SECTION */
.section-wrap{padding:80px 40px;max-width:1180px;margin:0 auto;}
.section-bg-blue{background:linear-gradient(180deg,#fff 0%,var(--sky-light) 100%);}
.section-bg-pink{background:linear-gradient(180deg,#fff 0%,var(--sakura) 100%);}
.section-tag{display:inline-block;background:linear-gradient(135deg,var(--sky-light),var(--pink-light));color:var(--sky-deep);font-weight:800;font-size:.72rem;padding:4px 16px;border-radius:20px;letter-spacing:2.5px;text-transform:uppercase;margin-bottom:10px;}
.section-header{text-align:center;margin-bottom:50px;}
.section-header h2{font-family:'Montserrat',sans-serif;font-size:2.4rem;font-weight:900;color:var(--dark);margin-bottom:8px;letter-spacing:-0.5px;}
.section-header p{color:var(--mid);font-size:.97rem;max-width:580px;margin:0 auto;line-height:1.85;}

/* PROGRAM CARDS */
.programs-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:50px;}
.program-card{background:#fff;border-radius:24px;overflow:hidden;box-shadow:var(--card-shadow);transition:transform .3s,box-shadow .3s;position:relative;display:flex;flex-direction:column;}
.program-card:hover{transform:translateY(-10px);box-shadow:0 28px 65px rgba(33,150,196,.28);}
.card-img{width:100%;height:auto;display:block;object-fit:contain;}
.card-price-badge{position:absolute;top:18px;right:18px;background:linear-gradient(135deg,var(--sky-deep),var(--pink-deep));color:#fff;font-family:'Montserrat',sans-serif;font-weight:900;font-size:.9rem;padding:7px 18px;border-radius:20px;box-shadow:0 4px 14px rgba(0,0,0,.2);}
.card-body{padding:28px 30px 32px;flex:1;}
.card-flag{font-size:.75rem;font-weight:700;color:var(--sky-deep);background:var(--sky-light);padding:3px 12px;border-radius:12px;display:inline-block;margin-bottom:10px;letter-spacing:1px;text-transform:uppercase;}
.card-body h3{font-family:'Montserrat',sans-serif;font-size:1.5rem;font-weight:900;color:var(--dark);margin-bottom:6px;letter-spacing:-0.5px;}
.card-body .thai-name{font-size:1rem;color:var(--mid);font-weight:600;margin-bottom:14px;}
.card-body .price-line{font-family:'Montserrat',sans-serif;font-size:1.8rem;font-weight:900;color:var(--pink-deep);margin-bottom:6px;}
.card-body .price-line span{font-size:.9rem;color:var(--mid);font-weight:400;}
.card-details{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:14px 0;}
.card-detail{background:var(--sky-light);border-radius:10px;padding:7px 10px;font-size:.78rem;color:var(--sky-deep);font-weight:700;text-align:center;}
.card-highlights{list-style:none;margin:12px 0 18px;display:flex;flex-direction:column;gap:6px;}
.card-highlights li{font-size:.83rem;color:var(--mid);display:flex;gap:7px;align-items:flex-start;}
.card-highlights li::before{content:'✈';font-size:.8rem;color:var(--sky-deep);flex-shrink:0;margin-top:1px;}
.card-cta{display:flex;gap:10px;}
.btn-book{flex:1;background:linear-gradient(135deg,var(--sky-deep),#1976A8);color:#fff;padding:11px 18px;border-radius:22px;font-weight:700;font-size:.87rem;text-align:center;text-decoration:none;transition:all .25s;display:block;}
.btn-book:hover{transform:translateY(-2px);box-shadow:0 7px 20px rgba(33,150,196,.4);}
.btn-line-sm{flex:1;background:linear-gradient(135deg,#06C755,#04A244);color:#fff;padding:11px 18px;border-radius:22px;font-weight:700;font-size:.87rem;text-align:center;text-decoration:none;transition:all .25s;display:block;}
.btn-line-sm:hover{transform:translateY(-2px);box-shadow:0 7px 20px rgba(6,199,85,.35);}

/* GALLERY */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:50px;}
.gallery-item{border-radius:18px;overflow:hidden;position:relative;cursor:pointer;}
.gallery-item img{width:100%;height:220px;object-fit:cover;transition:transform .4s;display:block;}
.gallery-item:hover img{transform:scale(1.07);}
.gallery-item .overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(26,46,59,.6),transparent);opacity:0;transition:opacity .3s;display:flex;align-items:flex-end;padding:16px;}
.gallery-item:hover .overlay{opacity:1;}
.overlay span{color:#fff;font-weight:700;font-size:.88rem;}
.gallery-item.tall{grid-row:span 2;}
.gallery-item.tall img{height:456px;}

/* YOUTUBE */
.yt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px;}
.yt-embed{border-radius:18px;overflow:hidden;box-shadow:var(--card-shadow);}
.yt-embed iframe{width:100%;aspect-ratio:16/9;display:block;border:none;}

/* WHY US */
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin-top:44px;}
.why-card{background:#fff;border-radius:20px;padding:30px 22px;text-align:center;box-shadow:var(--card-shadow);transition:transform .3s;}
.why-card:hover{transform:translateY(-8px);}
.why-icon{font-size:2.6rem;margin-bottom:12px;display:block;}
.why-card h4{font-family:'Montserrat',sans-serif;font-size:1rem;font-weight:800;color:var(--dark);margin-bottom:8px;}
.why-card p{font-size:.82rem;color:var(--mid);line-height:1.7;}

/* CONTACT */
.contact-section{background:linear-gradient(135deg,var(--sky-light) 0%,var(--pink-light) 100%);padding:80px 40px;}
.contact-inner{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.contact-info h2{font-family:'Montserrat',sans-serif;font-size:2rem;font-weight:900;color:var(--dark);margin-bottom:20px;}
.contact-detail{display:flex;flex-direction:column;gap:14px;}
.c-item{display:flex;align-items:center;gap:14px;background:#fff;border-radius:16px;padding:14px 18px;box-shadow:0 4px 16px rgba(0,0,0,.07);}
.c-icon{font-size:1.5rem;width:40px;text-align:center;}
.c-text strong{display:block;font-size:.82rem;color:var(--mid);font-weight:600;margin-bottom:2px;}
.c-text a,.c-text span{color:var(--dark);font-weight:700;font-size:.95rem;text-decoration:none;}
.c-text a:hover{color:var(--sky-deep);}
.qr-wrap{text-align:center;}
.qr-wrap img{width:200px;height:200px;object-fit:contain;border-radius:16px;box-shadow:0 8px 30px rgba(0,0,0,.12);margin-bottom:12px;}
.qr-wrap p{color:var(--mid);font-size:.85rem;font-weight:600;}
.qr-wrap strong{color:var(--dark);font-size:1rem;display:block;margin-top:4px;}
.social-links{display:flex;gap:12px;margin-top:20px;flex-wrap:wrap;}
.social-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:22px;font-weight:700;font-size:.85rem;text-decoration:none;transition:all .25s;}
.fb-btn{background:#1877F2;color:#fff;box-shadow:0 4px 14px rgba(24,119,242,.35);}
.fb-btn:hover{transform:translateY(-2px);}
.yt-btn{background:#FF0000;color:#fff;box-shadow:0 4px 14px rgba(255,0,0,.3);}
.yt-btn:hover{transform:translateY(-2px);}
.line-btn-contact{background:linear-gradient(135deg,#06C755,#04A244);color:#fff;box-shadow:0 4px 14px rgba(6,199,85,.3);}
.line-btn-contact:hover{transform:translateY(-2px);}

/* PAYMENT */
.payment-bar{background:#fff;border-top:2px solid var(--pink-light);padding:30px 40px;text-align:center;}
.payment-bar h3{font-family:'Montserrat',sans-serif;font-weight:800;font-size:1rem;color:var(--mid);margin-bottom:16px;letter-spacing:1px;}
.payment-logos{display:flex;justify-content:center;align-items:center;gap:20px;flex-wrap:wrap;}
.pay-badge{background:linear-gradient(135deg,var(--sky-light),var(--pink-light));border-radius:10px;padding:8px 16px;font-weight:800;font-size:.82rem;color:var(--dark);}

/* FOOTER */
footer{background:var(--dark);color:#fff;padding:40px;text-align:center;}
footer .footer-logo{display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:16px;}
footer .footer-logo img{height:45px;}
footer .footer-logo span{font-family:'Montserrat',sans-serif;font-weight:900;font-size:1.2rem;}
footer p{color:rgba(255,255,255,.55);font-size:.82rem;line-height:1.8;}
footer .footer-links{display:flex;justify-content:center;gap:24px;margin:14px 0;}
footer .footer-links a{color:rgba(255,255,255,.7);font-size:.82rem;text-decoration:none;font-weight:600;}
footer .footer-links a:hover{color:#fff;}

/* ANIMATIONS */
.fade-in{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease;}
.fade-in.visible{opacity:1;transform:translateY(0);}

/* VISITOR COUNTER */
.counter-bar{background:var(--dark);padding:20px 40px;}
.counter-inner{max-width:600px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:0;}
.counter-item{display:flex;align-items:center;gap:14px;padding:0 32px;}
.counter-item i{font-size:1.6rem;}
.counter-label{font-size:.72rem;color:rgba(255,255,255,.5);font-weight:600;letter-spacing:.5px;margin-bottom:3px;}
.counter-num{font-family:'Montserrat',sans-serif;font-size:1.6rem;font-weight:900;color:#fff;letter-spacing:-0.5px;font-variant-numeric:tabular-nums;}
.counter-divider{width:1px;height:48px;background:rgba(255,255,255,.12);flex-shrink:0;}
@media(max-width:600px){
  .counter-bar{padding:16px 20px;}
  .counter-inner{gap:0;}
  .counter-item{padding:0 16px;}
  .counter-num{font-size:1.2rem;}
}

/* RESPONSIVE */
@media(max-width:900px){
  nav{padding:10px 20px;}
  .nav-links{display:none;}
  .hamburger{display:block;}
  .hero-inner{grid-template-columns:1fr;padding:40px 20px;gap:30px;}
  .hero-text h1{font-size:2.2rem;}
  .hero-img{height:300px;}
  .hero-float-card{left:0;right:0;bottom:-15px;justify-content:center;}
  .programs-grid{grid-template-columns:1fr;}
  .gallery-grid{grid-template-columns:1fr 1fr;}
  .gallery-item.tall img{height:220px;}
  .gallery-item.tall{grid-row:unset;}
  .yt-grid{grid-template-columns:1fr;}
  .why-grid{grid-template-columns:1fr 1fr;}
  .contact-inner{grid-template-columns:1fr;gap:30px;}
  .section-wrap{padding:60px 20px;}
  .contact-section{padding:60px 20px;}
  .seo-bar{padding:12px 20px;}
  .trust-bar{gap:18px;padding:12px 20px;}
}
@media(max-width:600px){
  .hero-text h1{font-size:1.8rem;}
  .section-header h2{font-size:1.7rem;}
  .gallery-grid{grid-template-columns:1fr;}
  .why-grid{grid-template-columns:1fr 1fr;}
}
