
/* ── RESET & VARS ── */
*,*::before,*::after{
 box-sizing:border-box;
 margin:0;
 padding:0
}
:root{
 --gold:#c9a257;
 --gold-lt:#e8d5a3;
 --gold-dk:#a07830;
 --teal:#2a8a8a;
 --teal-dk:#1d6464;
 --white:#fefcf8;
 --cream:#f5efe3;
 --cream2:#ede5d4;
 --dark:#0f0e0b;
 --char:#2a2620;
 --mid:#6b6050;
 --radius:0;
}

body {
  font-family: 'Inter', sans-serif;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  font-family: 'Montserrat', sans-serif;
}

html{
 scroll-behavior:smooth;
 -webkit-text-size-adjust:100%
}
body{
 font-family:'Raleway',sans-serif;
 background:var(--white);
 color:var(--char);
 overflow-x:hidden;
 min-width:320px
}
img{
 max-width:100%;
 height:auto;
 display:block
}
::-webkit-scrollbar{
 width:3px
}::-webkit-scrollbar-thumb{
 background:var(--gold)
}

/* ── LAYOUT ── */
.sp{
 padding:80px 48px
}
.sp-sm{
 padding:64px 48px
}
.ey{
 display:flex;
 align-items:center;
 gap:10px;
 margin-bottom:10px
}
.ey::before{
 content:'';
 width:20px;
 height:1px;
 background:var(--gold);
 flex-shrink:0
}
.ey span{
 font-size:.55rem;
 letter-spacing:.33em;
 text-transform:uppercase;
 color:var(--gold);
 font-weight:600
}
.ey-c{
 justify-content:center
}.ey-c::before{
 display:none
}
.st{
 font-family:'Playfair Display',serif;
 font-size:clamp(1.65rem,3vw,2.5rem);
 font-weight:400;
 color:var(--char);
 line-height:1.15
}
.st em{
 font-style:italic;
 color:var(--teal)
}.st-lt{
 color:#fff
}.st-lt em{
 color:var(--gold-lt)
}
.sr{
 display:flex;
 justify-content:space-between;
 align-items:flex-end;
 margin-bottom:40px;
 gap:16px;
 flex-wrap:wrap
}
.va{
 font-size:.58rem;
 letter-spacing:.16em;
 text-transform:uppercase;
 color:var(--teal);
 text-decoration:none;
 font-weight:600;
 border-bottom:1px solid var(--teal);
 padding-bottom:2px;
 transition:all .3s;
 white-space:nowrap
}
.va:hover{
 color:var(--gold);
 border-color:var(--gold)
}

/* ── BUTTONS ── */
.btn{
 display:inline-flex;
 align-items:center;
 justify-content:center;
 gap:7px;
 font-size:.64rem;
 letter-spacing:.17em;
 text-transform:uppercase;
 font-weight:700;
 text-decoration:none;
 transition:all .3s;
 padding:13px 30px;
 cursor:pointer;
 border:none;
 font-family:'Raleway',sans-serif;
 line-height:1;
 white-space:nowrap
}
.b-gold{
 background:var(--gold);
 color:var(--dark);
 border:1px solid var(--gold)
}
.b-gold:hover{
 background:transparent;
 color:var(--gold-lt);
 border-color:var(--gold-lt)
}
.b-ghost{
 border:1px solid rgba(255,255,255,.42);
 color:#fff;
 background:transparent
}
.b-ghost:hover{
 border-color:var(--gold);
 color:var(--gold)
}
.b-dark{
 background:var(--char);
 color:#fff;
 border:1px solid var(--char)
}
.b-dark:hover{
 background:var(--gold);
 border-color:var(--gold);
 color:var(--dark)
}
.b-wa{
 background:#25D366;
 color:#fff;
 border:1px solid #25D366
}
.b-wa:hover{
 background:#1fba58;
 transform:translateY(-2px);
 box-shadow:0 8px 28px rgba(37,211,102,.3)
}
.b-og{
 border:1px solid var(--gold);
 color:var(--gold);
 background:transparent
}
.b-og:hover{
 background:var(--gold);
 color:var(--dark)
}
.b-teal{
 background:var(--teal);
 color:#fff;
 border:1px solid var(--teal)
}
.b-teal:hover{
 background:var(--teal-dk)
}

/* ── DESTINATION CARD ── */
.dc{
 position:relative;
 overflow:hidden;
 cursor:pointer;
 background:var(--char);
 display:block;
 text-decoration:none
}
.dc img{
 width:100%;
 height:100%;
 object-fit:cover;
 display:block;
 transition:transform .75s cubic-bezier(.25,.46,.45,.94)
}
.dc:hover img{
 transform:scale(1.07)
}
.dc-veil{
 position:absolute;
 inset:0;
 background:linear-gradient(to top,rgba(10,9,7,.94) 0%,rgba(10,9,7,.06) 60%)
}
.dc::after{
 content:'';
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 height:3px;
 background:var(--gold);
 transform:scaleX(0);
 transition:transform .4s;
 transform-origin:left
}
.dc:hover::after{
 transform:scaleX(1)
}
.dc-body{
 position:absolute;
 bottom:0;
 left:0;
 right:0;
 padding:18px 16px 14px
}
.dc-reg{
 font-size:.52rem;
 letter-spacing:.17em;
 text-transform:uppercase;
 color:var(--gold-lt);
 font-weight:500;
 margin-bottom:3px
}
.dc-name{
 font-family:'Playfair Display',serif;
 font-size:1.22rem;
 font-weight:400;
 color:#fff;
 line-height:1.15;
 margin-bottom:3px
}
.dc-tag{
 font-size:.6rem;
 color:rgba(255,255,255,.5);
 font-weight:300;
 margin-bottom:10px;
 display:none
}
.dc:hover .dc-tag{
 display:block
}
.dc-btn{
 display:inline-flex;
 align-items:center;
 gap:5px;
 padding:6px 14px;
 background:var(--gold);
 color:var(--dark);
 font-size:.53rem;
 letter-spacing:.13em;
 text-transform:uppercase;
 font-weight:700;
 text-decoration:none;
 opacity:0;
 transform:translateY(7px);
 transition:all .3s
}
.dc:hover .dc-btn{
 opacity:1;
 transform:translateY(0)
}

/* ── PACKAGE CARD ── */
.pc{
 background:var(--white);
 display:flex;
 flex-direction:column;
 box-shadow:0 2px 14px rgba(0,0,0,.06);
 transition:transform .3s,box-shadow .3s
}
.pc:hover{
 transform:translateY(-6px);
 box-shadow:0 16px 48px rgba(0,0,0,.12)
}
.pc-img{
 height:196px;
 overflow:hidden;
 position:relative;
 flex-shrink:0
}
.pc-img img{
 width:100%;
 height:100%;
 object-fit:cover;
 display:block;
 transition:transform .65s
}
.pc:hover .pc-img img{
 transform:scale(1.07)
}
.pb{
 position:absolute;
 top:0;
 left:0;
 padding:5px 13px;
 font-size:.5rem;
 letter-spacing:.15em;
 text-transform:uppercase;
 font-weight:700
}
.pb-g{
 background:var(--gold);
 color:var(--dark)
}.pb-t{
 background:var(--teal);
 color:#fff
}
.pb-d{
 background:var(--char);
 color:#fff
}.pb-w{
 background:#8a5a2a;
 color:#fff
}
.pc-body{
 padding:18px 16px 14px;
 flex:1;
 display:flex;
 flex-direction:column
}
.pc-dur{
 font-size:.53rem;
 letter-spacing:.18em;
 text-transform:uppercase;
 color:var(--teal);
 font-weight:700;
 margin-bottom:5px
}
.pc-name{
 font-family:'Playfair Display',serif;
 font-size:1.05rem;
 font-weight:400;
 color:var(--char);
 margin-bottom:8px;
 line-height:1.25
}
.pc-tags{
 display:flex;
 flex-wrap:wrap;
 gap:4px;
 margin-bottom:9px
}
.pc-tag{
 font-size:.52rem;
 letter-spacing:.08em;
 padding:3px 7px;
 background:var(--cream);
 color:var(--mid);
 font-weight:500
}
.pc-ul{
 list-style:none;
 margin-bottom:11px
}
.pc-ul li{
 font-size:.7rem;
 color:var(--mid);
 padding:4px 0;
 border-bottom:1px solid var(--cream);
 display:flex;
 align-items:flex-start;
 gap:7px;
 line-height:1.4
}
.pc-ul li::before{
 content:'';
 width:3px;
 height:3px;
 border-radius:50%;
 background:var(--gold);
 flex-shrink:0;
 margin-top:6px
}
.pc-foot{
 margin-top:auto;
 padding-top:10px;
 border-top:1px solid var(--cream);
 display:flex;
 justify-content:space-between;
 align-items:center;
 gap:8px;
 flex-wrap:wrap
}
.pc-pf{
 font-size:.5rem;
 letter-spacing:.11em;
 text-transform:uppercase;
 color:var(--mid)
}
.pc-pa{
 font-family:'Playfair Display',serif;
 font-size:2rem;
 font-weight:600;
 color:var(--char);
 line-height:1
}
.pc-pp{
 font-size:.52rem;
 color:var(--mid)
}

/* ── WHY GRID ── */
.why-g{
 display:grid;
 grid-template-columns:repeat(5,1fr);
 gap:0;
 border:1px solid rgba(201,162,87,.11);
 margin-top:44px
}
.why-i{
 padding:34px 20px;
 border-right:1px solid rgba(201,162,87,.11);
 transition:background .3s
}
/*.why-i:last-child{
 border-right:none
}*/
.why-i:hover{
 background:rgba(201,162,87,.04)
}
.why-n{
 font-family:'Playfair Display',serif;
 font-size:2rem;
 font-weight:700;
 color:rgba(201,162,87,.11);
 display:block;
 line-height:1;
 margin-bottom:11px
}
.why-ic{
 font-size:1.2rem;
 margin-bottom:10px;
 display:block
}
.why-t{
 /*font-family:'Playfair Display',serif;*/
 font-size:.9rem;
 font-weight:400;
 color:var(--gold-lt);
 margin-bottom:6px;
 line-height:1.3
}
.why-d{
 font-size:.68rem;
 color:rgba(255,255,255,.35);
 line-height:1.8;
 font-weight:300
}

/* ── TESTIMONIALS ── */
.tc{
 background:var(--cream);
 padding:26px 22px;
 border-bottom:3px solid transparent;
 transition:all .3s
}
.tc:hover{
 border-bottom-color:var(--gold);
 box-shadow:0 8px 30px rgba(0,0,0,.07)
}
.t-st{
 color:var(--gold);
 font-size:.68rem;
 letter-spacing:2px;
 margin-bottom:10px
}
.t-tx{
 font-family:'Playfair Display',serif;
 font-size:.91rem;
 font-style:italic;
 color:var(--char);
 line-height:1.8;
 margin-bottom:16px
}
.t-au{
 display:flex;
 align-items:center;
 gap:9px
}
.t-av{
 width:36px;
 height:36px;
 border-radius:50%;
 display:flex;
 align-items:center;
 justify-content:center;
 font-family:'Playfair Display',serif;
 font-size:.9rem;
 color:#fff;
 flex-shrink:0
}
.t-nm{
 font-size:.75rem;
 font-weight:600;
 color:var(--char)
}.t-tr{
 font-size:.55rem;
 letter-spacing:.11em;
 text-transform:uppercase;
 color:var(--teal);
 margin-top:2px
}

/* ── FOOTER ── */
footer{
 background:#070705;
 padding:60px 48px 26px
}
.ft{
 display:grid;
 grid-template-columns:2fr 1fr 1fr 1.3fr;
 gap:44px;
 padding-bottom:40px;
 border-bottom:1px solid rgba(201,162,87,.07);
 margin-bottom:18px
}
.fl{
 height:44px;
 margin-bottom:10px;
 width:auto
}
.ftag{
 font-family:'Playfair Display',serif;
 font-style:italic;
 font-size:.82rem;
 color:var(--gold);
 margin-bottom:7px
}
.fdesc{
 font-size:.7rem;
 color:rgba(255,255,255,.23);
 line-height:1.9;
 font-weight:300;
 max-width:240px
}
.fh{
 font-size:.53rem;
 letter-spacing:.26em;
 text-transform:uppercase;
 color:var(--gold);
 margin-bottom:13px;
 font-weight:600
}
.fc ul{
 list-style:none
}.fc ul li{
 margin-bottom:7px
}
.fc ul li a{
 font-size:.7rem;
 color:rgba(255,255,255,.25);
 text-decoration:none;
 transition:color .25s;
 font-weight:300
}
.fc ul li a:hover{
 color:var(--gold)
}
.fr{
 display:flex;
 gap:6px;
 margin-bottom:7px;
 font-size:.7rem;
 color:rgba(255,255,255,.25);
 font-weight:300;
 line-height:1.5
}
.fwa-lnk{
 color:#25D366!important;
 font-weight:600
}
.fb{
 display:flex;
 justify-content:space-between;
 align-items:center;
 flex-wrap:wrap;
 gap:10px
}
.fcp{
 font-size:.57rem;
 letter-spacing:.06em;
 color:rgba(255,255,255,.14)
}
.fsc{
 display:flex;
 gap:6px
}
.fso{
 width:32px;
 height:32px;
 border:1px solid rgba(201,162,87,.13);
 display:flex;
 align-items:center;
 justify-content:center;
 text-decoration:none;
 color:rgba(255,255,255,.23);
 font-size:.57rem;
 font-weight:600;
 transition:all .3s
}
.fso:hover{
 border-color:var(--gold);
 color:var(--gold)
}

/* ── FLOATING WA ── */
.fwa-btn{
 position:fixed;
 bottom:22px;
 right:22px;
 z-index:997;
 width:52px;
 height:52px;
 border-radius:50%;
 background:#25D366;
 display:flex;
 align-items:center;
 justify-content:center;
 text-decoration:none;
 box-shadow:0 5px 22px rgba(37,211,102,.45);
 animation:waP 3s ease-in-out infinite;
 transition:transform .3s
}
.fwa-btn:hover{
 transform:scale(1.1)
}
/* Floating Call Button */
.fca-btn{
 position:fixed;
 bottom:82px;
 right:22px;
 z-index:997;
 width:52px;
 height:52px;
 border-radius:50%;
 background:var(--teal);
 display:flex;
 align-items:center;
 justify-content:center;
 text-decoration:none;
 box-shadow:0 5px 22px rgba(42,138,138,.45);
 transition:transform .3s,box-shadow .3s
}
.fca-btn:hover{
 transform:scale(1.1);
 box-shadow:0 8px 28px rgba(42,138,138,.6)
}
.fca-btn svg{
 width:22px;
 height:22px
}
@keyframes waP{
 0%,100%{
  box-shadow:0 5px 22px rgba(37,211,102,.45)
 }50%{
  box-shadow:0 5px 42px rgba(37,211,102,.65),0 0 0 8px rgba(37,211,102,.08)
 }
}

/* ── REVEAL ANIMATIONS ── */
.rv{
 opacity:0;
 transform:translateY(22px);
 transition:opacity .68s ease,transform .68s ease
}
.rv.on{
 opacity:1;
 transform:translateY(0)
}
.rv-l{
 opacity:0;
 transform:translateX(-18px);
 transition:opacity .68s ease,transform .68s ease
}
.rv-l.on{
 opacity:1;
 transform:translateX(0)
}
@keyframes fUp{
 from{
  opacity:0;
  transform:translateY(18px)
 }to{
  opacity:1;
  transform:translateY(0)
 }
}

/* ── BREADCRUMB ── */
.bc{
 display:flex;
 align-items:center;
 gap:5px;
 flex-wrap:wrap
}
.bc a,.bc span{
 font-size:.54rem;
 letter-spacing:.16em;
 text-transform:uppercase;
 font-weight:500;
 color:rgba(255,255,255,.4);
 text-decoration:none;
 transition:color .3s
}
.bc a:hover{
 color:var(--gold)
}.bc .bcs{
 color:rgba(255,255,255,.17)
}.bc .bcc{
 color:var(--gold)
}

/* ── ITINERARY ── */
.it-day{
 border-left:2px solid rgba(201,162,87,.25);
 padding:0 0 28px 24px;
 position:relative
}
.it-day:last-child{
 padding-bottom:0
}
.it-day::before{
 content:'';
 position:absolute;
 left:-7px;
 top:4px;
 width:12px;
 height:12px;
 border-radius:50%;
 background:var(--gold);
 border:2px solid var(--char)
}
.it-n{
 font-size:.52rem;
 letter-spacing:.23em;
 text-transform:uppercase;
 color:var(--gold);
 font-weight:600;
 margin-bottom:4px
}
.it-t{
 font-family:'Playfair Display',serif;
 font-size:.98rem;
 font-weight:400;
 color:var(--gold-lt);
 margin-bottom:6px
}
.it-d{
 font-size:.72rem;
 color:rgba(255,255,255,.43);
 line-height:1.82;
 font-weight:300
}

/* ── SEARCH BAR ── */
.sb-wrap{
 background:rgba(254,252,248,.97);
 display:flex;
 flex-wrap:wrap;
 box-shadow:0 18px 56px rgba(0,0,0,.32)
}
.sb-field{
 flex:1;
 min-width:140px;
 padding:12px 16px;
 border-right:1px solid var(--cream2);
 position:relative
}
.sb-field:last-of-type{
 border-right:none
}
.sb-label{
 font-size:.5rem;
 letter-spacing:.22em;
 text-transform:uppercase;
 color:var(--teal);
 font-weight:700;
 display:block;
 margin-bottom:4px
}
.sb-field select,.sb-field input[type="date"],.sb-field input[type="number"]{
 width:100%;
 background:transparent;
 border:none;
 outline:none;
 font-family:'Raleway',sans-serif;
 font-size:.78rem;
 color:var(--char);
 cursor:pointer;
 padding:0;
 -webkit-appearance:none;
 appearance:none
}
.sb-field select option{
 color:var(--char);
 background:var(--white)
}
.sb-btn{
 padding:0 24px;
 background:var(--gold);
 color:var(--dark);
 font-size:.62rem;
 letter-spacing:.15em;
 text-transform:uppercase;
 font-weight:700;
 border:none;
 cursor:pointer;
 font-family:'Raleway',sans-serif;
 transition:background .3s;
 min-width:130px;
 min-height:52px
}
.sb-btn:hover{
 background:var(--gold-dk)
}

/* ── CONTACT FORM ── */
.cf-wrap{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:60px;
 align-items:start
}
.cf input,.cf textarea,.cf select{
 width:100%;
 padding:11px 15px;
 background:var(--cream);
 border:1px solid var(--cream2);
 font-family:'Raleway',sans-serif;
 font-size:.78rem;
 color:var(--char);
 outline:none;
 transition:border .3s;
 -webkit-appearance:none;
 appearance:none;
 border-radius:0
}
.cf input:focus,.cf textarea:focus,.cf select:focus{
 border-color:var(--gold)
}
.cf label{
 display:block;
 font-size:.57rem;
 letter-spacing:.19em;
 text-transform:uppercase;
 color:var(--mid);
 font-weight:600;
 margin-bottom:5px
}
.cf .fg{
 margin-bottom:16px
}
.cf-2{
 display:grid;
 grid-template-columns:1fr 1fr;
 gap:14px
}

/* ── HERO ZOOM ── */
@keyframes hzoom{
 from{
  transform:scale(1.03)
 }to{
  transform:scale(1)
 }
}

/* ══ RESPONSIVE ══════════════════════════ */

/* Large tablet */
@media(max-width:1100px){

 #nav{
  padding:0 28px
 }
 .sp,.sp-sm,footer{
  padding-left:28px;
  padding-right:28px
 }
 .why-g{
  grid-template-columns:repeat(3,1fr)
 }
 .ft{
  grid-template-columns:1fr 1fr;
  gap:28px
 }
 .n-ph{
  display:none
 }

}

/* Tablet */
@media(max-width:900px){

 #nav{
  padding:0 20px
 }
 .sp,.sp-sm,footer{
  padding-left:20px;
  padding-right:20px
 }
 .n-links{
  display:none
 }
 .n-ham{
  display:flex
 }
 .cf-wrap{
  grid-template-columns:1fr;
  gap:32px
 }

}

/* Mobile */
@media(max-width:768px){

 #nav{
  height:72px;
  padding:0 16px
 }
 #nav.solid{
  height:60px
 }
 .n-logo{
  height:44px
 }
 #nav.solid .n-logo{
  height:36px
 }
 .sp,.sp-sm{
  padding:52px 16px
 }
 footer{
  padding:44px 16px 22px
 }
 .sr{
  flex-direction:column;
  align-items:flex-start;
  gap:8px
 }
 .why-g{
  grid-template-columns:1fr 1fr;
  border:none;
  gap:1px
 }
 .why-i{
  border:1px solid rgba(201,162,87,.11)
 }
 .ft{
  grid-template-columns:1fr;
  gap:22px
 }
 .sb-wrap{
  flex-direction:column
 }
 .sb-field{
  border-right:none;
  border-bottom:1px solid var(--cream2);
  min-width:100%
 }
 .sb-btn{
  min-height:48px;
  width:100%;
  padding:14px
 }
 .dc-tag{
  display:block
 }
 .dc-btn{
  opacity:1;
  transform:translateY(0)
 }
 .cf-2{
  grid-template-columns:1fr
 }
 .pkg-2col{
  grid-template-columns:1fr!important
 }

}

/* Small mobile */
@media(max-width:480px){

 .sp,.sp-sm{
  padding:44px 14px
 }
 footer{
  padding:38px 14px 20px
 }
 .st{
  font-size:clamp(1.5rem,5.5vw,2rem)
 }
 .btn{
  padding:11px 22px;
  font-size:.6rem
 }
 .n-logo{
  height:38px
 }
 #nav.solid .n-logo{
  height:32px
 }

}
/* ── WHY BOOK & FEATURES ── */
.feat-g{
 display:grid;
 grid-template-columns:repeat(5,1fr);
 gap:0;
 border:1px solid rgba(201,162,87,.15)
}
.feat-i{
 padding:28px 20px;
 border-right:1px solid rgba(201,162,87,.12);
 text-align:center;
 transition:background .3s
}
.feat-i:last-child{
 border-right:none
}
.feat-i:hover{
 background:rgba(201,162,87,.06)
}
.feat-ic{
 font-size:1.5rem;
 margin-bottom:12px;
 display:block
}
.feat-t{
 font-family:'Playfair Display',serif;
 font-size:.88rem;
 font-weight:400;
 color:var(--gold-lt);
 margin-bottom:7px;
 line-height:1.2
}
.feat-d{
 font-size:.68rem;
 color:rgba(255,255,255,.38);
 line-height:1.7;
 font-weight:300
}
@media(max-width:900px){
 .feat-g{
  grid-template-columns:repeat(3,1fr)
 }.feat-i{
  border-bottom:1px solid rgba(201,162,87,.12)
 }
}
@media(max-width:480px){
 .feat-g{
  grid-template-columns:1fr 1fr
 }.feat-i:nth-child(2n){
  border-right:none
 }
}

/* ── RESORT COLLECTION ── */
.resort-card{
 background:var(--white);
 overflow:hidden;
 transition:transform .3s,box-shadow .3s
}
.resort-card:hover{
 transform:translateY(-5px);
 box-shadow:0 14px 40px rgba(0,0,0,.1)
}
.resort-img{
 height:180px;
 overflow:hidden;
 position:relative
}
.resort-img img{
 width:100%;
 height:100%;
 object-fit:cover;
 transition:transform .6s
}
.resort-card:hover .resort-img img{
 transform:scale(1.06)
}
.resort-body{
 padding:16px
}
.resort-loc{
 font-size:.52rem;
 letter-spacing:.15em;
 text-transform:uppercase;
 color:var(--gold);
 font-weight:600;
 margin-bottom:4px
}
.resort-name{
 font-family:'Playfair Display',serif;
 font-size:.95rem;
 font-weight:400;
 color:var(--char);
 margin-bottom:8px
}
.resort-list{
 list-style:none;
 margin-bottom:12px
}
.resort-list li{
 font-size:.68rem;
 color:var(--mid);
 padding:2px 0;
 display:flex;
 gap:6px
}
.resort-list li::before{
 content:'•';
 color:var(--gold);
 font-weight:700;
 flex-shrink:0
}

/* ── TRIP PLANNER FORM ── */
.tp-form{
 display:grid;
 grid-template-columns:repeat(3,1fr);
 gap:14px;
 max-width:860px;
 margin:0 auto
}
.tp-field{
 display:flex;
 flex-direction:column;
 gap:5px
}
.tp-label{
 font-size:.5rem;
 letter-spacing:.2em;
 text-transform:uppercase;
 color:var(--gold);
 font-weight:600
}
.tp-inp,.tp-sel,.tp-ta{
 width:100%;
 padding:10px 14px;
 background:rgba(255,255,255,.06);
 border:1px solid rgba(201,162,87,.2);
 color:#fff;
 font-family:'Raleway',sans-serif;
 font-size:.74rem;
 font-weight:300;
 outline:none;
 transition:border-color .3s;
 -webkit-appearance:none
}
.tp-inp::placeholder,.tp-ta::placeholder{
 color:rgba(255,255,255,.28)
}
.tp-inp:focus,.tp-sel:focus,.tp-ta:focus{
 border-color:var(--gold)
}
.tp-sel option{
 background:var(--char);
 color:#fff
}
.tp-ta{
 resize:vertical;
 min-height:70px
}
.tp-full{
 grid-column:1/-1
}
@media(max-width:768px){
 .tp-form{
  grid-template-columns:1fr 1fr
 }
}
@media(max-width:480px){
 .tp-form{
  grid-template-columns:1fr
 }
}

/* ── SCROLLABLE PACKAGES ROW ── */
.pkg-scroll-wrap{
 overflow-x:auto;
 padding-bottom:12px;
 -webkit-overflow-scrolling:touch
}
.pkg-scroll-wrap::-webkit-scrollbar{
 height:3px
}
.pkg-scroll-wrap::-webkit-scrollbar-thumb{
 background:var(--gold)
}
.pkg-scroll{
 display:flex;
 gap:18px;
 width:max-content
}
.pkg-scroll .pc{
 width:300px;
 flex-shrink:0
}




/*new*/

.text_gold{
    color:var(--gold-lt);
}