.detail-main{background:#fff}.detail-hero{position:relative;min-height:570px;display:flex;align-items:end;overflow:hidden}.detail-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.detail-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,24,17,.9) 0%,rgba(2,24,17,.58) 48%,rgba(2,24,17,.18) 100%)}.detail-copy{position:relative;z-index:1;color:#fff;padding:90px 0 68px}.detail-copy .eyebrow{color:#6ff0b7}.detail-copy h1{font-size:clamp(48px,6vw,78px);line-height:1;letter-spacing:-3px;margin:14px 0 18px}.detail-copy p{font-size:19px;color:#dcebe5}.detail-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.detail-pills span{padding:9px 14px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(0,0,0,.2);backdrop-filter:blur(8px);font-weight:750}
.detail-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:44px;padding:64px 0 90px}.detail-content h2{font-size:33px;letter-spacing:-1px;margin-bottom:14px}.detail-content h3{font-size:21px;margin:34px 0 10px}.detail-content p,.detail-content li{color:var(--muted)}.detail-content ul{padding-left:22px}.detail-content li+li{margin-top:7px}.route-box{height:250px;border-radius:22px;margin-top:26px;background:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 32px,rgba(7,150,96,.09) 33px 34px,transparent 35px 64px),linear-gradient(135deg,#ecf8f2,#f8fcfa);border:1px solid var(--line);display:grid;place-items:center;text-align:center;color:#087a55;font-weight:850}.booking{position:sticky;top:112px;height:max-content;border:1px solid var(--line);border-radius:22px;padding:28px;background:#fff;box-shadow:0 18px 42px rgba(7,61,44,.1)}.booking .from{color:var(--muted);font-size:13px}.booking .price{font-size:36px;font-weight:900;color:#08a466;margin:3px 0 19px}.booking .price small{font-size:13px;color:var(--muted)}.booking label{display:grid;gap:7px;font-size:13px;font-weight:800;margin-top:15px}.booking select{height:48px;border:1px solid var(--line);border-radius:11px;background:#fff;color:var(--ink);padding:0 12px;font:inherit}.register-btn{display:flex;justify-content:center;margin-top:20px;padding:14px;border-radius:12px;background:#08a466;color:#fff;font-weight:900;width:100%;border:0;font:inherit;cursor:pointer}.register-btn:disabled{opacity:.65;cursor:wait}.booking-note{font-size:12px;color:var(--muted);text-align:center;margin-top:12px}.booking-status{font-size:13px;text-align:center;margin-top:10px;min-height:18px;color:var(--muted)}.booking-status.error{color:#bd2d2d}.facts{border-top:1px solid var(--line);margin-top:24px;padding-top:18px;display:grid;gap:12px}.fact{display:flex;justify-content:space-between;gap:15px;font-size:14px}.fact span{color:var(--muted)}
[data-theme="dark"] .detail-main{background:#0a1310}[data-theme="dark"] .booking{background:#13211b;border-color:#2b3b34}[data-theme="dark"] .booking select{background:#0e1915;color:#e9efec;border-color:#35483e}[data-theme="dark"] .route-box{background:repeating-radial-gradient(ellipse at 50% 50%,transparent 0 32px,rgba(37,211,102,.045) 33px 34px,transparent 35px 64px),#13211b}
@media(max-width:850px){.detail-layout{grid-template-columns:1fr}.booking{position:static}.detail-hero{min-height:520px}}
@media(max-width:520px){.detail-hero{min-height:470px}.detail-copy{padding:60px 0 45px}.detail-copy h1{font-size:46px;letter-spacing:-2px}.detail-layout{padding:44px 0 68px}.route-box{height:200px}}
