.v2-trip { min-height: 100%; padding: 30px 0 56px; background: linear-gradient(180deg, #f5f8fc 0, #fff 36rem); color: #243954; }
.v2-trip-container { width: min(1120px, calc(100% - 32px)); margin: 0 auto; }
.v2-trip-hero { display: flex; align-items: end; justify-content: space-between; gap: 24px; padding: 30px; border: 1px solid #dce6f3; border-radius: 22px; background: linear-gradient(120deg, #eaf2ff, #fdfefe 65%); }
.v2-trip-eyebrow { display: block; margin-bottom: 7px; color: #3260be; font-size: 11px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.v2-trip h1, .v2-trip h2, .v2-trip h3, .v2-trip p { margin-top: 0; }.v2-trip-hero h1 { margin-bottom: 8px; font-size: clamp(26px, 3vw, 38px); letter-spacing: -.045em; }.v2-trip-hero p { max-width: 570px; margin-bottom: 0; color: #6f8199; font-size: 14px; line-height: 1.6; }
.v2-trip-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-top: 24px; }.v2-trip-card { overflow: hidden; border: 1px solid #e0e8f2; border-radius: 16px; background: #fff; box-shadow: 0 8px 22px rgba(28, 55, 91, .06); }.v2-trip-card img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: cover; }.v2-trip-card-body { padding: 16px; }.v2-trip-card h2 { margin-bottom: 8px; font-size: 17px; letter-spacing: -.025em; }.v2-trip-card p { margin-bottom: 12px; color: #72839a; font-size: 12px; }.v2-trip-card-meta { display: flex; flex-wrap: wrap; gap: 7px 12px; color: #62758f; font-size: 11px; }.v2-trip-card-meta i { margin-right: 4px; color: #3d6bca; }.v2-trip-card-foot { display: flex; align-items: end; justify-content: space-between; gap: 10px; margin-top: 16px; padding-top: 13px; border-top: 1px solid #edf1f6; }.v2-trip-card-price small { display: block; color: #8391a5; font-size: 10px; }.v2-trip-card-price strong { color: #315ccc; font-size: 18px; }.v2-trip-button { display: inline-flex; align-items: center; justify-content: center; gap: 7px; min-height: 40px; padding: 9px 14px; border: 1px solid #315ccc; border-radius: 9px; background: #315ccc; color: #fff; font: 750 12px/1.2 inherit; text-decoration: none; cursor: pointer; }.v2-trip-button:hover { background: #234aab; color: #fff; }.v2-trip-button.is-secondary { border-color: #d5e0ef; background: #fff; color: #526982; }
.v2-trip-detail { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 24px; margin-top: 24px; }.v2-trip-panel { border: 1px solid #dfe7f1; border-radius: 17px; background: #fff; box-shadow: 0 8px 22px rgba(28,55,91,.05); }.v2-trip-cover { overflow: hidden; }.v2-trip-cover img { display: block; width: 100%; max-height: 440px; object-fit: cover; }.v2-trip-copy { padding: 22px; }.v2-trip-copy h2 { margin-bottom: 10px; font-size: 21px; }.v2-trip-copy p { color: #667a92; font-size: 13px; line-height: 1.75; }.v2-trip-facts { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 18px; }.v2-trip-facts div { padding: 11px; border-radius: 10px; background: #f6f9fd; }.v2-trip-facts small { display: block; margin-bottom: 3px; color: #8292a7; font-size: 10px; }.v2-trip-facts strong { color: #304663; font-size: 12px; }.v2-trip-booking { position: sticky; top: 100px; padding: 19px; }.v2-trip-booking h2 { margin-bottom: 15px; font-size: 18px; }.v2-trip-field { display: grid; gap: 5px; margin-top: 11px; }.v2-trip-field label { color: #687b94; font-size: 11px; font-weight: 700; }.v2-trip-field input { min-height: 40px; padding: 9px 10px; border: 1px solid #dbe4ef; border-radius: 8px; color: #2a405e; font: 600 12px/1.2 inherit; }.v2-trip-total { display: flex; justify-content: space-between; align-items: end; margin: 18px -19px 16px; padding: 16px 19px; background: #f0f5ff; }.v2-trip-total span { color: #667990; font-size: 11px; }.v2-trip-total strong { color: #315ccc; font-size: 21px; }
@media (max-width: 850px) { .v2-trip-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }.v2-trip-detail { grid-template-columns: 1fr; }.v2-trip-booking { position: static; }.v2-trip-hero { align-items: start; flex-direction: column; } }
@media (max-width: 560px) { .v2-trip { padding-top: 18px; }.v2-trip-container { width: min(100% - 24px, 1120px); }.v2-trip-hero { padding: 22px 18px; border-radius: 16px; }.v2-trip-grid { grid-template-columns: 1fr; gap: 13px; }.v2-trip-facts { grid-template-columns: 1fr; }.v2-trip-copy, .v2-trip-booking { padding: 17px; } }

/* Align Trip with the calmer information hierarchy used by Hiburan & Wisata. */
.v2-trip { background:radial-gradient(circle at 92% 0,rgba(221,232,250,.48),transparent 26rem),linear-gradient(180deg,#fbfcff 0,#fff 34rem); }.v2-trip-hero { padding:0 0 1.15rem; border:0; border-bottom:1px solid #e4ebf3; border-radius:0; background:transparent; }.v2-trip-hero h1 { color:#19375f; font-family:"Manrope","Plus Jakarta Sans",sans-serif; font-weight:800; }.v2-trip-panel,.v2-trip-card { border-color:#e0e8f2; border-radius:.9rem; box-shadow:0 .5rem 1.25rem rgba(27,54,94,.05); }.v2-trip-card { transition:transform .2s ease,box-shadow .2s ease; }.v2-trip-card:hover { box-shadow:0 .75rem 1.7rem rgba(27,54,94,.09); transform:translateY(-3px); }.v2-trip-cover { border-radius:.9rem; }.v2-trip-copy h2,.v2-trip-booking h2 { color:#243d60; font-family:"Manrope","Plus Jakarta Sans",sans-serif; }.v2-trip-facts div { border:1px solid #edf1f6; background:#f8faff; }.v2-trip-booking { border-top:3px solid #dce9ff; }.v2-trip-button { border-radius:.6rem; }.v2-trip-auth { display:grid; place-items:center; min-height:calc(100vh - 9rem); }.v2-trip-auth__card { width:min(100%,25rem); padding:1.5rem; border:1px solid #e0e8f2; border-radius:.9rem; background:#fff; box-shadow:0 .7rem 1.6rem rgba(27,54,94,.06); }.v2-trip-auth__icon { display:grid; place-items:center; width:2.7rem; height:2.7rem; margin-bottom:1rem; border-radius:.75rem; background:#edf4ff; color:#3169d1; font-size:1.2rem; }.v2-trip-auth__card h1 { margin:0 0 .45rem; color:#19375f; font:800 1.55rem/1.2 "Manrope","Plus Jakarta Sans",sans-serif; letter-spacing:-.04em; }.v2-trip-auth__card > p { margin:0 0 1.15rem; color:#71839a; font-size:.8rem; line-height:1.6; }.v2-trip-auth__card form { display:grid; gap:.8rem; }.v2-trip-auth__card label { display:grid; gap:.35rem; color:#60748f; font-size:.73rem; font-weight:700; }.v2-trip-auth__card input { min-height:2.6rem; padding:.65rem .7rem; border:1px solid #dce5ef; border-radius:.55rem; color:#2b405d; font:600 .8rem/1.2 inherit; outline:0; }.v2-trip-auth__card input:focus { border-color:#8facdf; box-shadow:0 0 0 3px rgba(49,105,209,.08); }.v2-trip-auth__card button { width:100%; margin-top:.25rem; }.v2-trip-auth__alert { padding:.65rem .75rem; border:1px solid #f0cccc; border-radius:.55rem; background:#fff5f5; color:#b24b4b; font-size:.75rem; }

/* Keep the Trip checkout fields in the same compact booking surface as Hiburan & Wisata. */
.v2-hw-detail-booking form.v2-trip-detail-form { display:block !important; width:100% !important; max-width:none !important; }.v2-hw-detail-booking form.v2-trip-detail-form > div { display:block !important; width:100% !important; min-width:0; margin-bottom:.8rem; }.v2-hw-detail-booking form.v2-trip-detail-form > div label { display:block; margin-bottom:.35rem; color:#60748f; font-size:.72rem; font-weight:700; }.v2-hw-detail-booking form.v2-trip-detail-form > div input { display:block; box-sizing:border-box; inline-size:100% !important; width:100% !important; max-width:none !important; min-height:2.45rem; padding:.6rem .7rem; border:1px solid #dce5ef; border-radius:.55rem; color:#2b405d; font:600 .78rem/1.2 inherit; outline:0; }.v2-hw-detail-booking form.v2-trip-detail-form > div input:focus { border-color:#8facdf; box-shadow:0 0 0 3px rgba(49,105,209,.08); }.v2-hw-detail-booking form.v2-trip-detail-form button { width:100% !important; }
