.packages-page .sg-hero{background-image:url('assets/Zebla.jpg');min-height:540px;height:66vh;max-height:740px;background-position:center}
.packages-page .sg-hero::before{background:linear-gradient(90deg,rgba(8,23,17,.75),rgba(8,23,17,.08))}
.packages-page .sg-hero h1{font-size:clamp(44px,5.1vw,74px)!important;max-width:820px}
.packages-page .sg-hero .sg-eyebrow{color:#e1c78b}
.packages-page .sg-facts .sg-wrap{grid-template-columns:repeat(3,1fr)}
.packages-page .sg-fact:last-child{border:0}
.packages-page .sg-fact span{letter-spacing:0;text-transform:none;font-size:12px}
.fa-journey{padding-top:55px;padding-bottom:40px}
.packages-page .fa-journey h2{font-size:38px!important}
.fa-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:25px}
.fa-cards>a{border:1px solid #dfd4ba;border-radius:6px;overflow:hidden;color:var(--sg-ink);background:var(--sg-paper);text-decoration:none}
.fa-cards img{width:100%;height:210px;object-fit:cover;transition:transform .3s}
.fa-cards>a:hover img{transform:scale(1.03)}
.fa-cards>a:focus-visible{outline:3px solid #a5803e;outline-offset:4px}
.fa-cards> a>div{padding:18px 20px}
.fa-cards h3{font-size:23px;margin:0 0 8px}
.fa-cards h3 span{float:right;color:#a5803e}
.packages-page .fa-cards p{font-size:14px!important;margin:0}
.fa-inquiry{display:grid;grid-template-columns:30% 70%;border:1px solid #b59a65;border-radius:12px;overflow:hidden;padding:0;margin-bottom:35px;scroll-margin-top:110px}
.fa-aside{padding:38px 32px;color:white;background:linear-gradient(rgba(13,45,32,.94),rgba(13,45,32,.9)),url('assets/tarangire-hero-v1.png') center bottom/cover}
.packages-page .fa-aside h2{color:white;font-size:36px!important;line-height:1.15}
.packages-page .fa-aside p{color:#f2f0e8;font-size:15px!important}
.fa-aside .sg-eyebrow{color:#d8bd7e}
.fa-aside ul{list-style:none;padding:0;margin:32px 0}
.fa-aside li{display:flex;gap:20px;align-items:center;margin:28px 0;font-size:15px}
.fa-aside li i{font-size:25px;color:#d8bd7e;width:30px;flex-shrink:0}
.fa-questions{border-top:1px solid #b7ad8b;padding-top:24px}
.fa-questions a{color:#e3c47f;overflow-wrap:anywhere}
.fa-form-panel{padding:32px 36px;background:var(--sg-paper)}
.packages-page .fa-form-panel h2{font-size:36px!important;margin-bottom:8px}
.packages-page .fa-form-panel>p{font-size:14px!important}
.fa-form-panel fieldset{border:0;padding:0;margin:22px 0;min-width:0}
.fa-form-panel legend{font:600 20px 'Playfair Display',serif;margin-bottom:14px}
.fa-grid{display:grid;gap:16px}
.fa-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.fa-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.fa-form-panel label{display:block;font-size:13px;line-height:1.5}
.fa-form-panel label span,.fa-submit>small span{color:#b94432}
.fa-form-panel input:not([type=checkbox]),.fa-form-panel select,.fa-form-panel textarea{width:100%;min-width:0;margin-top:5px;border:1px solid #cbc6b9;border-radius:4px;background:var(--sg-paper);color:var(--sg-ink);padding:10px;font:13px 'Inter',sans-serif}
.fa-form-panel textarea{resize:vertical}
.fa-form-panel :is(input,select,textarea):focus-visible{outline:2px solid #a5803e;outline-offset:2px}
.fa-form-panel small{display:block;font-size:11px;color:#737568;margin-top:5px}
.fa-options{display:flex;flex-wrap:wrap;gap:12px 20px}
.fa-options label,.fa-form-panel .fa-check{display:flex;align-items:center;gap:8px}
.fa-check{margin:16px 0}
.fa-form-panel input[type=checkbox]{width:16px;height:16px;accent-color:#a5803e;flex-shrink:0}
.fa-option-title{font-size:13px;margin:16px 0 10px}
.fa-submit{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:20px}
.fa-submit button{cursor:pointer;font-size:13px;border:1px solid #b99d61}
.packages-page .fa-status{font-size:12px!important;text-align:center;margin:14px 0 0}
.fa-faq{padding:10px 0 55px;max-width:900px;text-align:center}
.packages-page .fa-faq h2{font-size:34px!important;margin-bottom:8px}
.packages-page .fa-faq>p{font-size:14px!important}
.fa-faq details{text-align:left;border:1px solid #dacfba;border-radius:4px;padding:13px 18px;margin:10px 0;background:var(--sg-paper)}
.fa-faq summary{cursor:pointer;font-weight:600}
.packages-page .fa-faq details p{font-size:14px!important;margin:14px 0 0}
@media(max-width:992px){.fa-inquiry{grid-template-columns:1fr}.fa-aside{padding:30px}.fa-aside ul{display:grid;grid-template-columns:1fr 1fr;margin:15px 0}.fa-aside li{margin:10px 0}.fa-cards{gap:14px}.fa-cards h3{font-size:20px}.fa-cards img{height:170px}}
@media(max-width:640px){.packages-page .sg-hero{min-height:610px;background-position:58% center}.packages-page .sg-hero h1{font-size:44px!important}.packages-page .sg-fact{padding:8px 5px}.packages-page .sg-fact strong{font-size:13px}.packages-page .sg-fact span{font-size:10px}.fa-cards{grid-template-columns:1fr}.fa-cards img{height:230px}.packages-page .fa-journey h2,.packages-page .fa-form-panel h2{font-size:30px!important}.fa-form-panel{padding:26px 20px}.fa-grid.two,.fa-grid.three{grid-template-columns:1fr}.fa-submit{flex-direction:column;align-items:stretch}.fa-aside ul{grid-template-columns:1fr}.fa-faq{width:calc(100% - 40px)}}
@media(prefers-reduced-motion:reduce){.fa-cards img{transition:none}}
.packages-page .fa-journey,.packages-page .fa-inquiry { width:calc(100% - 40px); max-width:1250px; margin-left:auto; margin-right:auto; }
.packages-page .sg-hero{min-height:430px;height:52vh}
.packages-page :is(.pk-catalog,.pk-details,.pk-enquiry){width:calc(100% - 40px);max-width:1250px;margin:0 auto}
.pk-catalog{padding:35px 0}
.pk-catalog>h2{font-size:34px}
.pk-filters{display:flex;flex-wrap:wrap;align-items:end;gap:18px;padding:20px;border:1px solid #d9cba9;background:var(--sg-paper);border-radius:8px}
.pk-filters label{flex:1;min-width:160px;font-size:12px}
.pk-filters select{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #c6baa0;background:var(--sg-paper);color:var(--sg-ink);border-radius:4px}
.pk-filters>button{padding:12px;border:1px solid #a5803e;border-radius:4px;color:var(--sg-ink);background:transparent;cursor:pointer}
.pk-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.pk-card{border:1px solid #d9cba9;border-radius:10px;overflow:hidden;background:var(--sg-paper);box-shadow:0 8px 20px rgba(30,35,25,.06)}
.pk-card>img{width:100%;height:220px;object-fit:cover}
.pk-card>div{padding:20px}
.pk-card h3{font-size:23px;margin:0 0 12px}
.pk-category{font:10px 'Inter',sans-serif;letter-spacing:1px;text-transform:uppercase;color:#9a7434;margin-bottom:10px}
.packages-page .pk-card p{font-size:13px!important}
.pk-price{font-weight:700}
.pk-actions{display:flex;gap:10px}
.pk-actions button{flex:1;padding:11px 8px;border:1px solid #a5803e;border-radius:4px;cursor:pointer;background:transparent;color:var(--sg-ink);font-size:12px}
.pk-actions button:last-child{background:#a5803e;color:white}
.pk-custom{display:flex;flex-direction:column;justify-content:center;text-align:center;background:linear-gradient(rgba(244,240,225,.85),rgba(244,240,225,.95)),url('assets/Zebla.jpg') center/cover;padding:35px}
.pk-custom i{font-size:40px;color:#36503d;margin-bottom:20px}
.pk-custom .sg-button{cursor:pointer;justify-content:center}
.packages-page .pk-note{font-size:12px!important;text-align:center;line-height:1.7;margin-top:22px}
.pk-details{display:grid;grid-template-columns:32% 1fr;gap:30px;border:1px solid #d9cba9;border-radius:10px;padding:25px;margin-bottom:30px!important;scroll-margin-top:105px;background:var(--sg-paper)}
.pk-details[hidden]{display:none!important}
.pk-details>img{width:100%;height:100%;max-height:600px;min-height:330px;object-fit:cover;border-radius:6px}
.packages-page .pk-details h2{font-size:32px!important}
.pk-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.pk-tabs button{padding:10px;border:1px solid #d9cba9;background:transparent;color:var(--sg-ink);border-radius:4px;cursor:pointer}
.pk-tabs button[aria-pressed=true]{background:#173b2b;color:white}
#detail-content{min-height:160px}
.packages-page #detail-content p,.packages-page #detail-content li{font-size:14px!important;line-height:1.6}
#detail-content h3{font-size:22px;margin:18px 0 10px}
.pk-pending{padding:15px;background:rgba(194,155,66,.12);border-left:3px solid #b1934f}
.pk-enquiry{display:grid;grid-template-columns:28% 1fr;gap:25px;border:1px solid #d9cba9;border-radius:10px;padding:25px;scroll-margin-top:105px;margin-bottom:35px!important}
.pk-summary{background:#173b2b;padding:25px;color:white;border-radius:8px;align-self:start}
.pk-summary img{width:100%;height:180px;object-fit:cover;border-radius:5px}
.packages-page .pk-summary h2{color:white;font-size:26px!important;margin-top:20px}
.packages-page .pk-summary p{color:#f3efdf;font-size:14px!important}
.pk-summary a{font-size:12px;color:#e8ca8a;overflow-wrap:anywhere}
.pk-summary .sg-eyebrow{color:#e8ca8a}
.pk-summary hr{border:0;border-top:1px solid #aa945f;margin:20px 0}
.pk-enquiry .fa-form-panel{padding:0;background:transparent}
.packages-page .pk-enquiry h2{font-size:34px!important}
#package-form .fa-grid{margin:18px 0}
.pk-request{margin-top:18px}
#package-form>button{cursor:pointer;width:100%;justify-content:center}
.pk-catalog #filter-status{font-size:12px;margin:15px 0}
.packages-page :is(button,select,input,textarea):focus-visible{outline:3px solid #a5803e;outline-offset:3px}
#custom-fields[hidden]{display:none!important}
@media(max-width:992px){.pk-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.pk-details{grid-template-columns:1fr}.pk-details>img{height:250px;min-height:0}.pk-enquiry{grid-template-columns:1fr}.pk-summary img{height:200px}}
@media(max-width:640px){.pk-cards{grid-template-columns:1fr}.pk-card>img{height:250px}.pk-details,.pk-enquiry{padding:18px}.packages-page .pk-enquiry h2{font-size:29px!important}.pk-filters label{flex-basis:100%}.pk-tabs button{flex:1 1 40%}.packages-page .sg-hero h1{font-size:44px!important}.pk-actions button{min-height:44px}}
.pk-cost-summary{display:grid;gap:10px;margin:18px 0 4px;padding:16px;border:1px solid rgba(232,202,138,.55);border-radius:7px;background:rgba(0,0,0,.13)}
.pk-cost-summary[hidden]{display:none}
.pk-cost-summary>div{display:flex;justify-content:space-between;align-items:center;gap:14px;color:#f3efdf;font-size:13px}
.pk-cost-summary strong{color:#ffe0a0;font-size:16px;white-space:nowrap}
.pk-cost-summary .pk-cost-total{padding-top:11px;border-top:1px solid rgba(232,202,138,.45)}
.pk-cost-summary .pk-cost-total strong{font-size:21px}
.pk-cost-summary small{color:#d9d1b8;font-size:11px;line-height:1.45}

/* Mobile trip detail polish */
@media (max-width: 640px) {
  .packages-page .pk-details {
    width: calc(100% - 24px);
    box-sizing: border-box;
    display: block;
    padding: 14px;
    border-radius: 14px;
    margin-bottom: 22px !important;
    scroll-margin-top: 82px;
    overflow: hidden;
  }
  .packages-page .pk-details > img {
    display: block;
    width: 100%;
    height: 156px;
    min-height: 0;
    max-height: none;
    margin-bottom: 16px;
    border-radius: 10px;
    object-fit: cover;
    object-position: center;
  }
  .packages-page .pk-details > div { min-width: 0; }
  .packages-page .pk-details .sg-eyebrow {
    margin-bottom: 8px;
    font-size: .68rem;
    letter-spacing: 2px;
  }
  .packages-page .pk-details h2 {
    margin: 0 0 8px;
    font-size: clamp(2rem, 9.5vw, 2.65rem) !important;
    line-height: 1.04 !important;
    letter-spacing: -.7px;
    overflow-wrap: anywhere;
  }
  .packages-page #detail-subtitle {
    margin: 0;
    font-size: .88rem !important;
    line-height: 1.45;
  }
  .packages-page .pk-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    margin: 16px 0 18px;
  }
  .packages-page .pk-tabs button {
    width: 100%;
    min-height: 44px;
    box-sizing: border-box;
    padding: 8px 6px;
    font-size: .74rem;
    line-height: 1.25;
    white-space: normal;
  }
  .packages-page #detail-content { min-height: 0; }
  .packages-page #detail-content p,
  .packages-page #detail-content li {
    font-size: .9rem !important;
    line-height: 1.55;
  }
  .packages-page #detail-content h3 {
    margin: 16px 0 8px;
    font-size: 1.25rem;
    line-height: 1.2;
  }
  .packages-page #detail-content ul,
  .packages-page #detail-content ol { padding-left: 20px; }
  .packages-page #detail-select {
    width: 100%;
    min-height: 46px;
    margin-top: 20px;
    justify-content: center;
    box-sizing: border-box;
  }
}
/* Mobile and tablet packages layout refinement */
@media (min-width: 641px) and (max-width: 1100px) {
  .packages-page .sg-hero {
    min-height: 390px;
    height: auto;
    padding: 76px 0 54px;
  }
  .packages-page :is(.pk-catalog, .pk-details, .pk-enquiry) {
    width: calc(100% - 36px);
  }
  .packages-page .pk-catalog {
    padding: 30px 0;
  }
  .packages-page .pk-filters {
    gap: 12px;
    padding: 16px;
    align-items: stretch;
  }
  .packages-page .pk-filters label {
    flex: 1 1 calc(50% - 12px);
    min-width: 0;
  }
  .packages-page .pk-filters select {
    min-height: 44px;
    box-sizing: border-box;
  }
  .packages-page .pk-filters > button {
    min-height: 44px;
    align-self: end;
  }
  .packages-page .pk-cards {
    gap: 16px;
  }
  .packages-page .pk-card > img {
    height: 188px !important;
  }
  .packages-page .pk-card > div {
    padding: 16px;
  }
  .packages-page .pk-card h3 {
    font-size: 20px;
    line-height: 1.2;
  }
  .packages-page .pk-actions {
    gap: 8px;
  }
  .packages-page .pk-actions button {
    min-height: 44px;
  }
  .packages-page .pk-details {
    grid-template-columns: 34% 1fr;
    gap: 20px;
    padding: 20px;
  }
  .packages-page .pk-details > img {
    height: 280px;
    min-height: 0;
  }
  .packages-page .pk-details h2 {
    font-size: clamp(2rem, 4.2vw, 2.8rem) !important;
    line-height: 1.08 !important;
  }
  .packages-page .pk-tabs {
    gap: 7px;
  }
  .packages-page .pk-tabs button {
    flex: 1 1 calc(50% - 7px);
    min-height: 44px;
    line-height: 1.25;
  }
  .packages-page .pk-enquiry {
    grid-template-columns: 280px 1fr;
    gap: 18px;
    padding: 20px;
  }
  .packages-page .pk-summary {
    padding: 18px;
  }
  .packages-page .pk-summary img {
    height: 155px;
  }
  .packages-page .fa-form-panel {
    padding: 0;
  }
  .packages-page .fa-form-panel h2 {
    font-size: 29px !important;
    line-height: 1.15;
  }
  .packages-page .fa-grid.two,
  .packages-page .fa-grid.three {
    gap: 12px;
  }
}

@media (max-width: 640px) {
  .packages-page .sg-hero {
    min-height: 440px;
    height: auto;
    padding: 70px 0 42px;
  }
  .packages-page .sg-hero h1 {
    font-size: clamp(2.25rem, 11vw, 3rem) !important;
    line-height: 1.05;
  }
  .packages-page .sg-hero p {
    font-size: .88rem;
    line-height: 1.55;
  }
  .packages-page :is(.pk-catalog, .pk-details, .pk-enquiry) {
    width: calc(100% - 24px);
  }
  .packages-page .pk-catalog {
    padding: 26px 0;
  }
  .packages-page .pk-catalog > h2 {
    font-size: 27px;
    margin-bottom: 16px;
  }
  .packages-page .pk-filters {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
    padding: 13px;
    border-radius: 12px;
  }
  .packages-page .pk-filters label {
    min-width: 0;
    width: 100%;
  }
  .packages-page .pk-filters select {
    min-height: 44px;
    margin-top: 5px;
    padding: 10px;
    font-size: .86rem;
    box-sizing: border-box;
  }
  .packages-page .pk-filters > button {
    width: 100%;
    min-height: 44px;
  }
  .packages-page .pk-cards {
    gap: 14px;
  }
  .packages-page .pk-card {
    border-radius: 12px;
  }
  .packages-page .pk-card > img {
    height: 178px !important;
  }
  .packages-page .pk-card > div {
    padding: 15px;
  }
  .packages-page .pk-card h3 {
    font-size: 20px;
    line-height: 1.2;
    margin-bottom: 8px;
  }
  .packages-page .pk-card p {
    font-size: .8rem !important;
    line-height: 1.5;
  }
  .packages-page .pk-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .packages-page .pk-actions button {
    min-height: 44px;
    padding: 9px 7px;
    font-size: .72rem;
  }
  .packages-page .pk-note {
    font-size: .7rem !important;
    line-height: 1.55;
  }
  .packages-page .pk-enquiry {
    display: block;
    padding: 12px;
    border-radius: 14px;
  }
  .packages-page .pk-summary {
    padding: 16px;
    border-radius: 11px;
    margin-bottom: 14px;
  }
  .packages-page .pk-summary img {
    height: 140px;
    margin-top: 10px;
  }
  .packages-page .pk-summary h2 {
    font-size: 23px !important;
    margin-top: 14px;
  }
  .packages-page .pk-summary p {
    font-size: .8rem !important;
    line-height: 1.5;
  }
  .packages-page .fa-form-panel {
    padding: 2px 2px 0;
  }
  .packages-page .fa-form-panel h2 {
    font-size: 26px !important;
    line-height: 1.15;
  }
  .packages-page .fa-form-panel > p {
    font-size: .8rem !important;
    line-height: 1.5;
  }
  .packages-page .fa-form-panel fieldset {
    margin: 16px 0;
  }
  .packages-page .fa-form-panel legend {
    font-size: 17px;
    margin-bottom: 10px;
  }
  .packages-page .fa-grid.two,
  .packages-page .fa-grid.three {
    gap: 11px;
  }
  .packages-page .fa-form-panel input:not([type=checkbox]),
  .packages-page .fa-form-panel select,
  .packages-page .fa-form-panel textarea {
    min-height: 44px;
    padding: 10px;
    font-size: .82rem;
    box-sizing: border-box;
  }
  .packages-page .fa-form-panel textarea {
    min-height: 100px;
  }
  .packages-page .fa-options {
    gap: 8px 12px;
    font-size: .8rem;
  }
  .packages-page .fa-submit {
    gap: 10px;
  }
  .packages-page .fa-submit button,
  .packages-page #package-form > button {
    width: 100%;
    min-height: 46px;
    justify-content: center;
  }
}