:root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Noto Sans KR",sans-serif;color:#102c50;background:#eef6fd}*{box-sizing:border-box}body{margin:0;background:linear-gradient(#edf7ff,#fff 28%)}main{max-width:760px;margin:auto;padding:26px 18px 100px}header{display:flex;justify-content:space-between;align-items:center;padding:6px 4px 20px}h1{font-size:35px;margin:3px 0;color:#12365f}h1 span{color:#1683f8}.eyebrow{font-size:11px;letter-spacing:.18em;color:#238ee9;font-weight:800}.menu{font-size:26px}.travel-hero{position:relative;overflow:hidden;border-radius:26px;padding:28px 24px 22px;background:linear-gradient(135deg,#e7f5ff,#b9defa);box-shadow:0 12px 35px #7ca8ca33}.hero-copy{position:relative;z-index:2;max-width:70%}.hero-copy h2{font-size:36px;line-height:1.14;margin:8px 0}.hero-copy p{line-height:1.55;color:#496b8d}.scenery{position:absolute;right:-25px;bottom:70px;width:48%;height:75%;border-radius:50% 0 0 0;background:linear-gradient(160deg,#8ed2ff,#f7fcff);display:grid;place-items:center;font-size:55px}.travel-hero form{position:relative;z-index:3;display:flex;gap:8px;margin-top:28px}.travel-hero input{width:100%;border:0;border-radius:999px;padding:16px 18px;font-size:16px;background:#fff;box-shadow:0 7px 20px #5e8bad22}.travel-hero button{border:0;border-radius:999px;padding:0 20px;background:#1683f8;color:#fff;font-weight:800}.trip-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 30px}.trip-grid div{background:#fff;border:1px solid #d9e8f5;border-radius:18px;padding:15px;box-shadow:0 6px 20px #7494ad18}.trip-grid .selected{border:2px solid #2a9cf5;background:#f1f9ff}.trip-grid span,.trip-grid b,.trip-grid small{display:block}.trip-grid span{font-size:23px}.trip-grid b{margin:8px 0 4px}.trip-grid small,.product small,.supplier-admin small{color:#7890a7}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.section-title h2{margin:0}.section-title>span{font-size:12px;color:#2589e5}.destinations{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0 28px}.destination{min-height:112px;border-radius:18px;padding:14px;background:linear-gradient(160deg,#cceaff,#fff);display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 8px 22px #6c9aba20}.destination span{font-size:34px}.quick-global,.card{background:#fff;border:1px solid #dcebf6;border-radius:24px;padding:23px;margin-top:18px;box-shadow:0 10px 30px #6d93af1a}.quick-global{position:relative;overflow:hidden;background:linear-gradient(135deg,#f6fbff,#d9efff);border-color:#b9def8}.quick-global h2{font-size:29px;margin:6px 0}.quick-global>p:not(.eyebrow){color:#557592;max-width:70%}.quick-art{position:absolute;right:18px;top:18px;font-size:70px;opacity:.85}.quick-art span{font-size:25px}.facts{display:grid;grid-template-columns:repeat(4,1fr);margin:24px 0 16px;background:#fff;border-radius:17px;padding:12px 4px}.facts div{text-align:center;border-right:1px solid #e3edf5}.facts div:last-child{border:0}.facts b,.facts small{display:block;margin-top:4px}.facts small{font-size:10px;color:#7890a7}.quick-global button{width:100%;border:0;border-radius:15px;padding:16px;background:#1683f8;color:#fff;font-size:16px;font-weight:800}.quick-global button:disabled{opacity:.45}.notice{display:block;text-align:center;margin-top:9px;color:#7890a7}.filter{margin-top:20px}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:9px}.chips span{border:1px solid #cfe2f2;border-radius:999px;padding:8px 13px;color:#496b8d}.product{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:17px 0;border-top:1px solid #e2edf5}.country{display:flex;align-items:center;gap:10px}.country>span{font-size:30px}.country b,.country small,.price b,.price small{display:block}.price{text-align:right}.product button{border:0;border-radius:12px;padding:10px;background:#e8eef3;color:#7b8c9c}.steps{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.steps span{background:#f1f7fc;border-radius:999px;padding:8px 11px}.how>p:last-child{color:#6f879d;line-height:1.55}.supplier-admin{color:#7890a7}.supplier-admin summary{font-weight:800}.supplier-admin article{display:flex;justify-content:space-between;padding:14px 0;border-top:1px solid #e4edf4}nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(760px,100%);display:grid;grid-template-columns:repeat(4,1fr);padding:10px 14px 18px;background:#fff;border-top:1px solid #e0eaf2;z-index:10}nav b{text-align:center;color:#7d91a4;font-size:20px}nav b:first-child{color:#1683f8}nav small{display:block;font-size:10px;margin-top:3px}@media(max-width:600px){main{padding:18px 14px 95px}.hero-copy{max-width:78%}.hero-copy h2{font-size:31px}.trip-grid{grid-template-columns:1fr}.destinations{grid-template-columns:repeat(2,1fr)}.quick-global>p:not(.eyebrow){max-width:72%}.facts{grid-template-columns:repeat(2,1fr);gap:10px}.facts div{border:0}.product{grid-template-columns:1fr auto}.product button{grid-column:1/-1}.travel-hero form{flex-direction:column}.travel-hero button{padding:13px}.quick-art{font-size:55px;opacity:.55}}.install-app{width:100%;margin:0 0 18px;border:0;border-radius:16px;padding:15px 18px;background:#102c50;color:#fff;font-size:15px;font-weight:800;box-shadow:0 8px 22px #315b7c24}.install-guide[hidden]{display:none}.install-guide{position:fixed;inset:0;background:#0d274766;z-index:100;display:flex;align-items:flex-end;justify-content:center;padding:16px}.install-sheet{position:relative;width:min(720px,100%);background:#fff;border-radius:26px;padding:26px 22px calc(24px + env(safe-area-inset-bottom));box-shadow:0 -12px 45px #17395833}.install-sheet h2{margin:6px 0 18px}.install-close{position:absolute;right:18px;top:16px;border:0;background:#eef5fb;width:36px;height:36px;border-radius:50%;font-size:24px;color:#526f89}.install-steps{display:grid;gap:10px}.install-steps span{display:block;background:#f1f7fc;border-radius:14px;padding:14px}.install-note{color:#6f879d;line-height:1.55}.install-confirm{width:100%;border:0;border-radius:15px;padding:15px;background:#1683f8;color:#fff;font-weight:800;font-size:16px}

/* Compact mobile layout: show more content without shrinking tap targets */
@media(max-width:600px){
  main{padding:14px 14px 92px}
  header{padding:2px 4px 13px}
  h1{font-size:31px}
  .eyebrow{font-size:10px}
  .menu{font-size:23px}
  .travel-hero{border-radius:23px;padding:22px 20px 18px}
  .hero-copy h2{font-size:28px;line-height:1.12;margin:6px 0}
  .hero-copy p{font-size:14px;line-height:1.45;margin:10px 0}
  .scenery{font-size:45px;bottom:62px}
  .travel-hero form{margin-top:20px}
  .travel-hero input{padding:14px 16px}
  .trip-grid{gap:8px;margin:13px 0 22px}
  .trip-grid div{border-radius:16px;padding:12px 14px}
  .trip-grid span{font-size:20px}
  .trip-grid b{margin:5px 0 2px}
  .destinations{gap:8px;margin:10px 0 20px}
  .destination{min-height:92px;border-radius:16px;padding:12px}
  .destination span{font-size:28px}
  .quick-global,.card{border-radius:21px;padding:19px;margin-top:14px}
  .quick-global h2{font-size:26px}
  .quick-art{font-size:48px;top:14px;right:14px}
  .facts{margin:18px 0 13px;padding:10px 4px}
  .filter{margin-top:15px}
  .chips{gap:6px;margin-top:7px}
  .chips span{padding:7px 11px}
  .steps{margin:14px 0}
  .how>p:last-child{font-size:14px}
  nav{padding:9px 14px 14px}
}

/* Visual consistency: brand-owned marks instead of platform-dependent emoji artwork */
.flight-mark{display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:#fff;color:#1683f8;font-size:34px;box-shadow:0 10px 26px #315b7c20;transform:rotate(-10deg)}
.place-mark{display:grid!important;place-items:center;width:42px;height:42px;border-radius:13px;background:#fff;color:#1683f8!important;font-size:13px!important;font-weight:900;letter-spacing:.06em;box-shadow:0 6px 18px #315b7c18}
.quick-art{color:#1683f8;font-weight:300}.quick-art>span{display:inline-block;color:#12365f;transform:rotate(-12deg)}
@media(max-width:600px){.flight-mark{width:56px;height:56px;font-size:28px}.place-mark{width:38px;height:38px}}

/* Brand and trust polish */
.brand-lockup{display:flex;align-items:center;gap:11px}.brand-orbit{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:linear-gradient(145deg,#0d6fe8,#53c8ff);color:#fff;font-size:20px;font-weight:900;box-shadow:0 8px 20px #1683f82b;transform:rotate(-8deg)}
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:-6px 0 16px}.trust-strip span{padding:9px 10px;text-align:center;border:1px solid #dbeaf5;border-radius:999px;background:#fff;color:#557592;font-size:11px;font-weight:750}
.trust-card{margin-top:18px;padding:24px;border-radius:24px;background:#102c50;color:#fff;box-shadow:0 12px 30px #315b7c24}.trust-card h2{margin:5px 0 18px}.trust-card .eyebrow{color:#75c7ff}.trust-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.trust-grid div{padding:15px;border-radius:16px;background:#ffffff12;border:1px solid #ffffff18}.trust-grid b,.trust-grid small{display:block}.trust-grid small{margin-top:7px;color:#c9d9e8;line-height:1.45}
.support-card{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding:18px 22px;border-radius:20px;background:linear-gradient(135deg,#e9f6ff,#f8fcff);border:1px solid #cfe6f7}.support-card span{color:#66839b;font-size:13px;text-align:right}
@media(max-width:600px){.brand-orbit{width:38px;height:38px;border-radius:12px}.trust-strip{grid-template-columns:1fr 1fr 1fr;gap:5px}.trust-strip span{font-size:9px;padding:7px 5px}.trust-card{padding:19px}.trust-grid{grid-template-columns:1fr;gap:7px}.trust-grid div{padding:12px 13px}.support-card{display:block;padding:16px 18px}.support-card span{display:block;text-align:left;margin-top:5px;line-height:1.45}}

/* Destination flag thumbnails */
.flag-mark{font-size:24px!important;line-height:1;background:#fff!important;letter-spacing:0!important}
@media(max-width:600px){.flag-mark{font-size:22px!important}}

/* eSIMISSU signature slogan */
.brand-slogan{position:relative;overflow:hidden;margin:0 0 14px;padding:20px 22px;border-radius:22px;background:linear-gradient(125deg,#102c50,#176fd0 68%,#54c7ff);color:#fff;box-shadow:0 10px 28px #315b7c26}
.brand-slogan:after{content:"?";position:absolute;right:16px;top:-24px;font-size:112px;font-weight:900;color:#ffffff12;line-height:1}
.brand-slogan small,.brand-slogan strong,.brand-slogan span{display:block;position:relative;z-index:1}
.brand-slogan small{font-size:9px;letter-spacing:.18em;color:#bfe5ff;font-weight:800}
.brand-slogan strong{margin:4px 0 3px;font-size:34px;line-height:1.1;letter-spacing:-.04em}
.brand-slogan span{font-size:13px;color:#e8f5ff}
@media(max-width:600px){.brand-slogan{padding:17px 18px;border-radius:19px}.brand-slogan strong{font-size:30px}}

/* Simple checkout preview */
.checkout-preview{margin-top:18px;padding:23px;border:1px solid #dcebf6;border-radius:24px;background:#fff;box-shadow:0 10px 30px #6d93af1a}
.checkout-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin:18px 0}.checkout-steps span{padding:9px 5px;border-radius:10px;background:#f1f6fa;color:#7890a7;text-align:center;font-size:11px;font-weight:800}.checkout-steps .active{background:#e5f3ff;color:#1683f8}
.checkout-summary{display:flex;justify-content:space-between;gap:15px;padding:17px 0;border-top:1px solid #e6eef4;border-bottom:1px solid #e6eef4}.checkout-summary small,.checkout-summary b{display:block}.checkout-summary small{color:#7890a7;margin-bottom:5px}.checkout-total{text-align:right}.checkout-total b{color:#1683f8}
.pay-options{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0}.pay-options span{padding:13px;border:1px solid #d7e7f3;border-radius:13px;text-align:center;font-size:13px;font-weight:800}
.checkout-agree{display:flex;gap:8px;align-items:center;color:#627e96;font-size:12px;margin:12px 0}.checkout-pay{width:100%;border:0;border-radius:15px;padding:16px;background:#1683f8;color:#fff;font-size:16px;font-weight:900;opacity:.45}.checkout-lock{display:block;margin-top:8px;text-align:center;color:#7890a7}
@media(max-width:600px){.checkout-preview{padding:19px;border-radius:21px}.checkout-steps span{font-size:10px}.checkout-summary{display:block}.checkout-total{text-align:left;margin-top:13px}}

/* Functional hamburger menu */
header{position:relative}.menu{border:0;background:transparent;color:#12365f;cursor:pointer;padding:8px;border-radius:10px;line-height:1}.menu-panel[hidden]{display:none}.menu-panel{position:absolute;right:4px;top:58px;z-index:30;min-width:170px;padding:8px;background:#fff;border:1px solid #dbe8f2;border-radius:16px;box-shadow:0 14px 36px #1739582e}.menu-panel a{display:block;padding:12px 14px;border-radius:10px;color:#294d6d;text-decoration:none;font-size:14px;font-weight:800}.menu-panel a:active,.menu-panel a:hover{background:#edf7ff;color:#1683f8}

/* Member authentication UI */
.menu-auth{display:block;width:100%;border:0;background:#f2f7fb;color:#294d6d;border-radius:10px;padding:11px 14px;margin-bottom:6px;text-align:left;font-weight:800}.menu-auth.primary{background:#1683f8;color:#fff}.menu-user{padding:8px 10px 10px}.menu-user small,.menu-user b{display:block}.menu-user small{color:#7890a7;font-size:10px}.menu-user b{margin-top:3px;font-size:12px;overflow:hidden;text-overflow:ellipsis}
.auth-modal[hidden]{display:none}.auth-modal{position:fixed;inset:0;z-index:120;background:#0d274766;display:flex;align-items:flex-end;justify-content:center;padding:16px}.auth-sheet{position:relative;width:min(520px,100%);padding:26px 22px calc(24px + env(safe-area-inset-bottom));border-radius:26px;background:#fff;box-shadow:0 -12px 45px #17395833}.auth-sheet h2{margin:6px 0 18px}.auth-close{position:absolute;right:17px;top:15px;border:0;background:#eef5fb;width:36px;height:36px;border-radius:50%;font-size:24px;color:#526f89}.auth-sheet form{display:grid;gap:10px}.auth-sheet input{width:100%;border:1px solid #d6e6f2;border-radius:14px;padding:14px 15px;font-size:16px}.auth-sheet form button{border:0;border-radius:14px;padding:15px;background:#1683f8;color:#fff;font-size:15px;font-weight:900}.auth-message{min-height:20px;color:#587791;font-size:12px}.social-ready{display:grid;gap:7px;margin-top:8px}.social-ready button{border:1px solid #dbe7f0;border-radius:13px;padding:12px;background:#f6f9fb;color:#8798a7}.auth-sheet>small{display:block;margin-top:9px;color:#8a9cab;font-size:10px;line-height:1.45}


/* Member / guest purchase choice */
.purchase-choice{margin-top:18px;padding:23px;border:1px solid #dcebf6;border-radius:24px;background:linear-gradient(145deg,#fff,#f6fbff);box-shadow:0 10px 30px #6d93af1a}
.purchase-lead{color:#587791;line-height:1.55;margin:10px 0 16px}
.purchase-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.purchase-choice-grid article{display:flex;flex-direction:column;min-height:190px;padding:18px;border:1px solid #d7e7f3;border-radius:18px;background:#fff}
.choice-icon{font-size:27px}.purchase-choice-grid b{margin:9px 0 5px;font-size:17px}.purchase-choice-grid small{color:#7890a7;line-height:1.45;flex:1}
.choice-button{margin-top:14px;border:0;border-radius:13px;padding:12px;background:#1683f8;color:#fff;font-weight:850}.choice-button:disabled{background:#e8eef3;color:#8193a3}
.purchase-note{display:block;margin-top:11px;color:#7890a7;line-height:1.45}
@media(max-width:600px){.purchase-choice{padding:19px;border-radius:21px}.purchase-choice-grid{grid-template-columns:1fr}.purchase-choice-grid article{min-height:0}}

/* Customer support: one clear entry, details only on demand */
.support-card div{min-width:0}.support-card b,.support-card span{display:block}.support-card button{flex:0 0 auto;border:0;border-radius:13px;padding:11px 16px;background:#1683f8;color:#fff;font-weight:850}
.support-modal[hidden]{display:none}.support-modal{position:fixed;inset:0;z-index:125;background:#0d274766;display:flex;align-items:flex-end;justify-content:center;padding:16px}.support-sheet{position:relative;width:min(560px,100%);max-height:88vh;overflow:auto;padding:26px 22px calc(24px + env(safe-area-inset-bottom));border-radius:26px;background:#fff;box-shadow:0 -12px 45px #17395833}.support-sheet h2{margin:6px 0 17px}.support-channels{display:grid;gap:8px}.support-channels button,.support-channels a{display:flex;justify-content:space-between;gap:12px;width:100%;padding:14px;border:1px solid #dbe7f0;border-radius:14px;background:#f7fbfe;color:#294d6d;text-decoration:none;font-weight:850;text-align:left}.support-channels small{color:#8297a9;font-weight:600}.support-channels button:disabled{opacity:.62}.support-sheet form{display:grid;gap:9px;margin-top:15px}.support-sheet input,.support-sheet select,.support-sheet textarea{width:100%;border:1px solid #d6e6f2;border-radius:13px;padding:13px 14px;background:#fff;font:inherit}.support-sheet textarea{min-height:110px;resize:vertical}.support-sheet form>button{border:0;border-radius:14px;padding:14px;background:#1683f8;color:#fff;font-weight:900}.support-faq{margin-top:14px}.support-faq details{padding:12px 2px;border-bottom:1px solid #e5edf4}.support-faq summary{font-weight:800}.support-faq p{color:#6f879d;line-height:1.5;font-size:13px}
@media(max-width:600px){.support-card{display:flex;align-items:center}.support-card span{margin-top:4px}.support-card button{padding:10px 13px}.support-sheet{padding:23px 18px calc(22px + env(safe-area-inset-bottom));border-radius:23px}.support-channels button,.support-channels a{display:block}.support-channels small{display:block;margin-top:4px}}

/* v5.3 simplified information architecture */
.menu-panel{width:min(310px,calc(100vw - 28px));max-height:78vh;overflow:auto;padding:10px}
.menu-account{display:grid;grid-template-columns:1fr 1fr;gap:7px}.menu-account .menu-auth{margin:0;text-align:center}
.menu-group{padding:10px 4px;border-top:1px solid #edf2f6}.menu-group:first-of-type{border-top:0}.menu-group-title{display:block;padding:2px 10px 6px;color:#8295a6;font-size:10px;letter-spacing:.12em}
.menu-panel .menu-group a,.menu-link{display:block;width:100%;border:0;background:transparent;padding:10px;border-radius:10px;color:#294d6d;text-decoration:none;text-align:left;font-size:14px;font-weight:850}.menu-panel .menu-group a small,.menu-link small{display:block;margin-top:3px;color:#91a1af;font-size:10px;font-weight:600}.menu-link:hover,.menu-link:active{background:#edf7ff;color:#1683f8}.menu-auth.logout{margin-top:5px;color:#6b7e8e}
nav a{text-align:center;color:#7d91a4;font-size:20px;text-decoration:none;font-weight:800}nav a:first-child{color:#1683f8}nav a small{display:block;font-size:10px;margin-top:3px}

/* v5.4 customer journey */
.journey-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;margin:0 0 12px;padding:5px;border-radius:999px;background:#e5f0f8}.journey-bar span{text-align:center;padding:7px 3px;border-radius:999px;color:#7890a7;font-size:10px;font-weight:850}.journey-bar .active{background:#fff;color:#1683f8;box-shadow:0 3px 10px #315b7c12}
.customer-step{scroll-margin-top:16px}.post-purchase{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:18px;padding:20px 22px;border:1px solid #dcebf6;border-radius:22px;background:#fff}.post-purchase h2{margin:4px 0 7px;font-size:21px}.post-purchase p:last-child{margin:0;color:#6f879d;font-size:13px}.post-purchase a{flex:0 0 auto;color:#1683f8;text-decoration:none;font-size:12px;font-weight:850}
@media(max-width:600px){.journey-bar{margin-bottom:10px}.post-purchase{display:block;padding:18px}.post-purchase a{display:inline-block;margin-top:12px}}

/* v5.5: keep future checkout code ready without cluttering the pre-integration storefront */
.future-checkout{display:none}
.journey-bar span{background:transparent}
