/* ============================================================
   genting-dream-deck-plan.php — page-specific styles
============================================================ */

/* HERO */
.phero{position:relative;color:#fff;overflow:hidden;padding:64px 0 72px}
.phero-bg{position:absolute;inset:0;z-index:0}
.phero-bg img{width:100%;height:100%;object-fit:cover}
.phero-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg,rgba(8,29,54,.95) 0%,rgba(8,29,54,.82) 45%,rgba(8,29,54,.5) 100%)}
.phero .wrap{position:relative;z-index:5}
.crumbs{font-size:.86rem;color:#a9bccf;margin-bottom:20px;display:flex;gap:8px;flex-wrap:wrap}
.crumbs a{color:#cdd9e5}.crumbs a:hover{color:#fff}
.crumbs span{color:#ff9684}
.phero h1{font-size:clamp(2.1rem,4.4vw,3.4rem);color:#fff;max-width:820px;margin-bottom:16px}
.phero h1 em{font-style:italic;color:#ffb3a3}
.phero p{font-size:clamp(1rem,1.7vw,1.16rem);color:#d3deea;max-width:680px;margin-bottom:28px}
.phero-actions{display:flex;gap:14px;flex-wrap:wrap}
.phero-meta{display:flex;gap:30px;margin-top:36px;flex-wrap:wrap;padding-top:28px;border-top:1px solid rgba(255,255,255,.15)}
.phero-meta div b{font-family:'Playfair Display';font-size:1.5rem;color:#fff;display:block;line-height:1}
.phero-meta div b span{color:#ff9684}
.phero-meta div small{font-size:.8rem;color:#9fb1c4}

/* PDF DOWNLOAD STRIP */
.pdf-strip{background:linear-gradient(120deg,var(--coral) 0%,var(--coral-deep) 100%);color:#fff;padding:18px 0;position:relative;overflow:hidden}
.pdf-strip::before{content:'';position:absolute;top:-50%;right:-3%;width:240px;height:240px;background:radial-gradient(circle,rgba(255,255,255,.15),transparent 65%);pointer-events:none}
.pdf-strip .wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;position:relative;z-index:2}
.pdf-l{display:flex;align-items:center;gap:14px}
.pdf-l .pi{font-size:1.6rem;background:rgba(255,255,255,.18);width:46px;height:46px;border-radius:11px;display:grid;place-items:center;flex:none}
.pdf-l b{display:block;font-family:'Plus Jakarta Sans';font-weight:700;font-size:1rem;line-height:1.25}
.pdf-l span{font-size:.86rem;color:#ffe5de}
.pdf-strip .btn-white{background:#fff;color:var(--coral);box-shadow:0 4px 12px rgba(0,0,0,.18);font-weight:700;border:none}
.pdf-strip .btn-white:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(0,0,0,.22)}

/* STICKY QUICK NAV */
.qnav{position:sticky;top:73px;z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.qnav a{flex:none;font-size:.84rem;font-weight:700;color:var(--slate);padding:7px 14px;border-radius:50px;border:1px solid var(--line);transition:.2s;white-space:nowrap}
.qnav a:hover{color:var(--coral);border-color:var(--coral)}
.qnav a.qn-deck{font-family:'Playfair Display';color:var(--navy)}

/* INTRO */
.intro-copy{max-width:920px}
.intro-copy p{color:var(--slate);font-size:1.07rem;margin-bottom:16px}
.intro-copy strong{color:var(--ink)}

/* AT-A-GLANCE OVERVIEW */
.ovr-card{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--sh-sm);margin-top:30px}
.ovr-row{display:grid;grid-template-columns:80px 1fr auto;gap:18px;align-items:center;padding:16px 24px;border-bottom:1px solid var(--line-soft);transition:.2s}
.ovr-row:last-child{border-bottom:none}
.ovr-row:hover{background:var(--bg-soft)}
.ovr-row .dno{font-family:'Playfair Display';font-size:1.55rem;font-weight:700;color:var(--coral);text-align:center;line-height:1}
.ovr-row .dno small{display:block;font-size:.62rem;color:var(--slate-light);font-family:'Plus Jakarta Sans';font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-top:2px}
.ovr-row .dwhat b{display:block;font-family:'Plus Jakarta Sans';font-weight:700;font-size:.96rem;color:var(--ink);margin-bottom:2px}
.ovr-row .dwhat small{font-size:.84rem;color:var(--slate)}
.ovr-row .dtag{font-size:.72rem;font-weight:800;padding:5px 11px;border-radius:50px;letter-spacing:.03em;white-space:nowrap}
.ovr-row .dtag.cabin{background:rgba(46,125,74,.13);color:#2e7d4a}
.ovr-row .dtag.public{background:rgba(232,80,58,.13);color:var(--coral-deep)}
.ovr-row .dtag.palace{background:linear-gradient(135deg,rgba(199,154,75,.2),rgba(217,176,109,.2));color:#8c6913}
.ovr-row .dtag.nodeck{background:#f1f3f6;color:var(--slate-light)}

/* LEGEND */
.legend{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 30px;margin-top:30px}
.legend h3{font-size:1.15rem;margin-bottom:16px}
.legend-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.lg-item{display:flex;gap:10px;align-items:center;font-size:.86rem;color:var(--ink)}
.lg-code{display:inline-block;font-family:'Plus Jakarta Sans';font-weight:800;font-size:.72rem;padding:4px 9px;border-radius:6px;background:var(--coral-soft);color:var(--coral-deep);flex:none;min-width:38px;text-align:center;letter-spacing:.04em}

/* DECK FULL BLOCK */
.deck-block{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;margin-bottom:34px;box-shadow:var(--sh-sm);scroll-margin-top:130px}
.dh{position:relative;overflow:hidden;padding:26px 32px;background:linear-gradient(110deg,var(--navy-deep) 0%,var(--navy-mid) 100%);color:#fff;display:grid;grid-template-columns:auto 1fr auto;gap:20px;align-items:center}
.dh::before{content:'';position:absolute;top:-50%;right:-5%;width:260px;height:260px;background:radial-gradient(circle,rgba(232,80,58,.18),transparent 65%)}
.dh > *{position:relative;z-index:2}
.dh .dh-no{font-family:'Playfair Display';font-size:3.2rem;font-weight:700;color:#fff;line-height:1;text-align:center;min-width:80px}
.dh .dh-no small{display:block;font-size:.62rem;color:#ff9684;letter-spacing:.16em;font-weight:800;font-family:'Plus Jakarta Sans';margin-top:3px;text-transform:uppercase}
.dh .dh-title h2{color:#fff;font-size:clamp(1.3rem,2.3vw,1.7rem);margin-bottom:6px;font-family:'Playfair Display'}
.dh .dh-title p{color:#cdd9e5;font-size:.96rem;margin:0;max-width:560px}
.dh .dh-tag{padding:8px 14px;border-radius:50px;font-size:.74rem;font-weight:800;letter-spacing:.04em;white-space:nowrap;text-transform:uppercase}
.dh .dh-tag.s{background:rgba(115,200,142,.2);color:#a8e8c3;border:1px solid rgba(115,200,142,.4)}
.dh .dh-tag.m{background:rgba(255,180,80,.2);color:#ffd09e;border:1px solid rgba(255,180,80,.4)}
.dh .dh-tag.l{background:rgba(255,150,140,.2);color:#ffc1b8;border:1px solid rgba(255,150,140,.4)}

.db{padding:28px 32px}
.db-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:30px}
.db-col h4{font-family:'Plus Jakarta Sans';font-size:.74rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--coral);margin-bottom:12px;display:flex;align-items:center;gap:8px}
.db-col h4::before{content:'';width:24px;height:2px;background:var(--coral);border-radius:2px}
.db-col ul{list-style:none}
.db-col li{padding:9px 0;border-bottom:1px dashed var(--line-soft);font-size:.92rem;color:var(--ink);display:flex;gap:10px;align-items:flex-start}
.db-col li:last-child{border-bottom:none}
.db-col li::before{content:'▸';color:var(--coral);font-weight:800;flex:none;margin-top:1px}
.db-col li b{color:var(--navy);font-weight:700;display:block;margin-bottom:1px}
.db-col li small{color:var(--slate);font-size:.85rem;display:block}

.db-tip{margin-top:24px;padding:18px 22px;background:#fff8f1;border-left:3px solid var(--coral);border-radius:0 var(--r) var(--r) 0;font-size:.92rem;color:#7a4513}
.db-tip b{color:var(--coral-deep)}

/* WHO IT'S BEST FOR */
.who-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.who{background:#fff;border:1px solid var(--line);border-radius:var(--r-lg);padding:28px 26px;transition:.3s}
.who:hover{transform:translateY(-5px);box-shadow:var(--sh-md);border-color:#dfe6ee}
.who .wi{width:50px;height:50px;border-radius:13px;background:var(--coral-soft);display:grid;place-items:center;margin-bottom:14px;font-size:1.4rem}
.who h3{font-size:1.18rem;margin-bottom:6px}
.who .wt{font-size:.78rem;font-weight:800;color:var(--coral);text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;display:block}
.who p{font-size:.92rem;color:var(--slate);margin-bottom:14px}
.who .wr{font-size:.86rem;color:var(--ink);background:var(--bg-soft);padding:10px 14px;border-radius:8px;border-left:3px solid var(--coral)}
.who .wr b{color:var(--navy)}

/* AVOID TABLE */
.cmp-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--sh-sm)}
table.cmp{width:100%;border-collapse:collapse;font-size:.92rem;min-width:680px;background:#fff}
table.cmp th{background:var(--navy);color:#fff;text-align:left;padding:15px 18px;font-family:'Plus Jakarta Sans';font-weight:700;font-size:.8rem;letter-spacing:.02em}
table.cmp td{padding:14px 18px;border-bottom:1px solid var(--line-soft);vertical-align:top}
table.cmp tr:last-child td{border-bottom:none}
table.cmp tbody tr:hover td{background:var(--bg-soft)}
table.cmp .rt{font-weight:700;color:var(--navy);white-space:nowrap}
.warn{color:var(--coral-deep);font-weight:700}

/* RESPONSIVE */
@media(max-width:1000px){
  .legend-grid{grid-template-columns:1fr 1fr}
  .dh{grid-template-columns:auto 1fr;gap:14px}
  .dh .dh-tag{grid-column:1/-1;justify-self:start}
  .db-grid{grid-template-columns:1fr;gap:22px}
  .who-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .qnav{top:69px}
  .legend-grid{grid-template-columns:1fr 1fr}
  .who-grid{grid-template-columns:1fr}
  .dh{padding:22px 22px}
  .dh .dh-no{font-size:2.4rem;min-width:60px}
  .dh .dh-title h2{font-size:1.2rem}
  .db{padding:24px 22px}
  .ovr-row{grid-template-columns:55px 1fr;padding:14px 16px;gap:14px}
  .ovr-row .dtag{grid-column:2;justify-self:start;margin-top:4px;font-size:.66rem;padding:3px 9px}
  .phero-meta{gap:20px}
}
@media(max-width:520px){
  .legend-grid{grid-template-columns:1fr}
  .pdf-strip .wrap{gap:14px}
}
