.detail-hero{min-height:74vh;display:flex;align-items:flex-end;background-position:center;background-size:cover;position:relative;isolation:isolate}
.my-header-lang{display:flex;align-items:center;gap:3px;flex:none;padding:4px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.08)}
.my-header-lang button{min-width:34px;min-height:34px;padding:2px 8px;border:0;border-radius:999px;background:transparent;color:rgba(255,255,255,.82);font-size:.74rem;font-weight:600;cursor:pointer}
.my-header-lang button.on{background:var(--gold,#c59a52);color:#102a3d;font-weight:800}
.my-mobile-lang{display:none}
.detail-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(7,21,33,.28) 0%,rgba(7,21,33,.62) 55%,rgba(7,21,33,.9) 100%)}
.detail-hero .wrap{padding-top:150px;padding-bottom:54px}
.detail-hero h1{max-width:900px;margin:.28em 0 .22em;color:#fff;text-shadow:0 3px 18px rgba(0,0,0,.3)}
.detail-hero .lead{max-width:760px;color:rgba(255,255,255,.9);font-size:1.08rem}
.detail-hero-row{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:36px;align-items:end}
.detail-price-card{padding:20px;border:1px solid rgba(255,255,255,.24);border-radius:18px;background:rgba(9,30,45,.78);backdrop-filter:blur(10px);color:#fff}
.detail-price-card small{display:block;color:rgba(255,255,255,.7);line-height:1.5}
.detail-price-card strong{display:block;margin:3px 0 8px;color:#fff;font-family:var(--serif);font-size:2rem;line-height:1.1}
.detail-tag-row{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0 22px}
.detail-tag-row span{padding:7px 11px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:.76rem}
.duration-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:18px}
.duration-nav a{padding:10px 12px;border-radius:10px;background:rgba(255,255,255,.1);color:#fff;text-align:center;text-decoration:none;font-size:.82rem;font-weight:700}
.duration-nav a.on{background:var(--gold,#c59a52);color:#102a3d}
.detail-section{padding:72px 0}
.detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:42px;align-items:start}
.detail-sticky{position:sticky;top:92px}
.detail-kicker{display:inline-block;margin-bottom:8px;color:var(--gold,#b27c2e);font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.detail-copy p{color:#45545c;line-height:1.8}
.detail-copy h2{margin:1.8em 0 .45em;color:#102a3d}
.detail-copy h2:first-child{margin-top:0}
.detail-list{display:grid;gap:9px;margin:18px 0;padding:0;list-style:none}
.detail-list li{position:relative;padding-left:24px;color:#3f4d55;line-height:1.65}
.detail-list li::before{content:"✓";position:absolute;left:0;top:0;color:#a97529;font-weight:900}
.detail-day-list{display:grid;gap:13px;margin-top:24px}
.detail-day{display:grid;grid-template-columns:64px minmax(0,1fr);gap:18px;padding:20px;border:1px solid rgba(16,42,61,.13);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(16,42,61,.06)}
.detail-day-num{display:flex;align-items:flex-start;justify-content:center;color:#b27c2e;font-family:var(--serif);font-size:1.35rem;font-weight:800}
.detail-day h3{margin:0 0 6px;color:#102a3d;font-size:1.02rem}
.detail-day p{margin:0;color:#536069;line-height:1.68}
.detail-day .stay{display:inline-block;margin-top:8px;color:#87612b;font-size:.74rem;font-weight:700}
.detail-aside{padding:22px;border:1px solid rgba(16,42,61,.12);border-radius:18px;background:#f7f3eb}
.detail-aside h3{margin:0 0 14px;color:#102a3d}
.detail-aside dl{display:grid;grid-template-columns:auto 1fr;gap:10px 14px;margin:0}
.detail-aside dt{color:#7a6b58;font-size:.76rem}
.detail-aside dd{margin:0;color:#243946;font-size:.8rem;font-weight:700;text-align:right}
.detail-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:28px 0}
.detail-gallery img{width:100%;height:180px;object-fit:cover;border-radius:14px}
.price-section{padding:72px 0;background:#f4f0e8}
.price-table{width:100%;border-collapse:collapse;margin-top:24px;border-radius:14px;overflow:hidden;background:#fff}
.price-table th,.price-table td{padding:13px 15px;border-bottom:1px solid #e5dfd5;text-align:left}
.price-table th{background:#102a3d;color:#fff;font-size:.78rem}
.price-table td:last-child,.price-table th:last-child{text-align:right;font-weight:800;color:#8c6123}
.price-table tr.peak td{background:#fbf3e4}
.price-note{margin-top:13px;color:#667178;font-size:.78rem;line-height:1.65}
.split-section{padding:72px 0}
.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.detail-panel{padding:24px;border:1px solid rgba(16,42,61,.12);border-radius:18px;background:#fff}
.detail-panel h2{margin-top:0;color:#102a3d;font-size:1.28rem}
.detail-panel ul{margin:0;padding-left:20px;color:#4c5a62;line-height:1.72}
.notice-strip{padding:34px 0;background:#102a3d;color:#fff}
.notice-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.notice-strip strong{display:block;margin-bottom:4px;color:#e9c989}
.notice-strip p{margin:0;color:rgba(255,255,255,.78);line-height:1.6;font-size:.86rem}
.detail-related{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}
.detail-related a{padding:9px 12px;border:1px solid rgba(16,42,61,.16);border-radius:999px;color:#102a3d;background:#fff;text-decoration:none;font-size:.78rem;font-weight:700}
.hub-section-intro{max-width:760px}
.hub-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:28px}
.hub-choice{display:flex;flex-direction:column;padding:25px;border:1px solid rgba(16,42,61,.13);border-radius:18px;background:#fff;box-shadow:0 10px 30px rgba(16,42,61,.06)}
.hub-choice-featured{border-color:rgba(178,124,46,.55);box-shadow:0 16px 38px rgba(126,85,34,.13)}
.hub-choice-label{color:#9a682e;font-size:.7rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.hub-choice h2{margin:8px 0 7px;color:#102a3d;font-size:1.35rem;line-height:1.25}
.hub-choice>strong{display:block;margin-bottom:12px;color:#8c6123;font-size:1rem}
.hub-choice p{margin:0 0 15px;color:#536069;line-height:1.65;font-size:.88rem}
.hub-choice ul{display:grid;gap:7px;margin:0 0 22px;padding:0;list-style:none;color:#354b59;font-size:.82rem}
.hub-choice li{position:relative;padding-left:19px}
.hub-choice li::before{content:"✓";position:absolute;left:0;color:#a97529;font-weight:900}
.hub-choice .button{margin-top:auto;width:100%}
.hub-table-scroll{overflow-x:auto;margin-top:24px;border-radius:14px}
.hub-price-table{min-width:620px;margin-top:0}
.hub-price-table th a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.hub-note-grid{margin-top:24px}
.hub-note-grid .detail-panel p{color:#4c5a62;line-height:1.72;font-size:.88rem}
.hub-final-actions{display:grid;gap:11px;align-self:center}
.hub-final-actions .button{text-align:center}
@media(max-width:900px){.detail-hero-row,.detail-grid{grid-template-columns:1fr}.detail-hero-row{gap:20px}.detail-sticky{position:static}.detail-price-card{max-width:420px}.detail-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.hub-choice-grid{grid-template-columns:1fr}.hub-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 22px}.hub-choice-label,.hub-choice h2,.hub-choice>strong,.hub-choice p,.hub-choice ul{grid-column:1}.hub-choice .button{grid-column:2;grid-row:1/6;align-self:center;width:auto;min-width:190px}}
@media(max-width:820px){.my-header-lang{display:none}.my-mobile-lang{display:block;min-width:76px;height:44px;padding:0 9px;border:1px solid rgba(255,255,255,.24);border-radius:12px;background:#183047;color:#fff;font-size:.76rem;font-weight:700}.has-language-toggle .mobile-home{display:none}}
@media(max-width:650px){
  .detail-hero{min-height:680px}
  .detail-hero .wrap{padding-top:120px;padding-bottom:38px}
  .detail-hero h1{font-size:2.15rem}
  .detail-hero .lead{font-size:.96rem}
  .detail-section,.price-section,.split-section{padding:52px 0}
  .detail-day{grid-template-columns:48px 1fr;gap:10px;padding:16px 14px}
  .detail-gallery{grid-template-columns:1fr}
  .detail-gallery img{height:220px}
  .split-grid,.notice-strip .wrap{grid-template-columns:1fr}
  .duration-nav{gap:5px}
  .duration-nav a{padding:9px 6px;font-size:.72rem}
  .price-table th,.price-table td{padding:11px 9px;font-size:.78rem}
  .hub-choice{display:flex;padding:20px}
  .hub-choice .button{width:100%}
}
