/* ============================================================
   umrah-package.css
   Styles for: single-umrah_package.php + archive-umrah_package.php
   Place in: /assets/css/umrah-package.css
   ============================================================ */

:root {
    --g:     #1a5d3a;
    --gm:    #2d8a5e;
    --gd:    #0f3d26;
    --gold:  #d4a843;
    --goldd: #b8922e;
    --goldl: #f0d78c;
    --white: #fff;
    --off:   #faf9f7;
    --cream: #f5f0e8;
    --g100:  #f3f4f6;
    --g300:  #d1d5db;
    --g500:  #6b7280;
    --g700:  #374151;
    --black: #111827;
    --r:     12px;
    --rl:    20px;
    --ease:  cubic-bezier(0.4,0,0.2,1);
    --sh:    0 4px 20px rgba(0,0,0,0.08);
    --shl:   0 12px 40px rgba(0,0,0,0.12);
    --font-h:'Playfair Display',Georgia,serif;
    --font-b:'Inter',system-ui,sans-serif;
    --w:     1240px;
    --pad:   1.5rem;
}

.usp-container{width:100%;max-width:var(--w);margin:0 auto;padding:0 var(--pad);}

/* ============================================================
   BREADCRUMB
   ============================================================ */
.usp-breadcrumb{background:var(--off);border-bottom:1px solid var(--g100);padding:0.75rem 0;font-size:0.82rem;}
.usp-breadcrumb ol{display:flex;align-items:center;gap:0.35rem;flex-wrap:wrap;list-style:none;padding:0;margin:0;}
.usp-breadcrumb li{color:var(--g500);}
.usp-breadcrumb li::after{content:'›';margin-left:0.35rem;color:var(--g300);}
.usp-breadcrumb li:last-child::after{display:none;}
.usp-breadcrumb li.current{color:var(--g700);font-weight:600;}
.usp-breadcrumb a{color:var(--g);text-decoration:none;}
.usp-breadcrumb a:hover{text-decoration:underline;}

/* ============================================================
   HERO
   ============================================================ */
.usp-hero{
    position:relative;
    min-height:60vh;
    display:flex;
    align-items:flex-end;
    background-size:cover;
    background-position:center;
    background-attachment:fixed;
    overflow:hidden;
}
.usp-hero-overlay{
    position:absolute;inset:0;
    background:linear-gradient(to top, rgba(10,30,18,0.92) 0%, rgba(10,30,18,0.5) 50%, rgba(10,30,18,0.25) 100%);
}
.usp-hero-content{
    position:relative;z-index:2;
    padding:4rem var(--pad) 3.5rem;
    max-width:var(--w);width:100%;margin:0 auto;
}
.usp-hero-top-tag{
    font-size:0.82rem;font-weight:500;
    color:var(--goldl);letter-spacing:0.1em;text-transform:uppercase;
    margin-bottom:0.75rem;
}
.usp-hero-title{
    font-family:var(--font-h);
    font-size:clamp(1.8rem,4vw,3.2rem);
    font-weight:700;color:var(--white);
    line-height:1.15;margin-bottom:0.75rem;
    text-transform:uppercase;letter-spacing:0.02em;
}
.usp-hero-title span{color:var(--gold);}
.usp-hero-nights{
    display:inline-block;
    font-size:1.05rem;font-weight:600;
    color:var(--gold);margin-bottom:0.5rem;
}
.usp-hero-dates{font-size:0.9rem;color:rgba(255,255,255,0.8);margin-bottom:1rem;}
.usp-hero-dates i{color:var(--gold);margin-right:0.35rem;}
.usp-hero-badge{
    display:inline-flex;align-items:center;gap:0.4rem;
    padding:0.4rem 1.1rem;border-radius:30px;
    font-size:0.82rem;font-weight:700;text-transform:uppercase;
    letter-spacing:0.06em;
}
.usp-hero-badge.green {background:var(--g);color:#fff;}
.usp-hero-badge.gold  {background:var(--gold);color:#fff;}
.usp-hero-badge.red,
.usp-hero-badge.sold-out{background:#dc2626;color:#fff;}
.usp-hero-badge.limited {background:#f97316;color:#fff;}
.usp-hero-scroll{
    position:absolute;bottom:1.5rem;left:50%;transform:translateX(-50%);
    color:rgba(255,255,255,0.5);font-size:1.2rem;
    animation:bounce 2s infinite;
}
@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0);}50%{transform:translateX(-50%) translateY(6px);}}

/* ============================================================
   MAIN LAYOUT
   ============================================================ */
.usp-main-section{padding:3rem 0 4rem;background:var(--off);}
.usp-layout{display:grid;grid-template-columns:1fr 380px;gap:2rem;align-items:start;}

/* ── CONTENT COLUMN ── */
.usp-content{}
.usp-h3{
    font-family:var(--font-h);font-size:1.2rem;color:var(--black);
    margin:1.5rem 0 0.875rem;padding-bottom:0.5rem;
    border-bottom:2px solid var(--g100);
}
.usp-h3 i{color:var(--gold);margin-right:0.4rem;}
.usp-post-content{font-size:0.95rem;line-height:1.75;color:var(--g700);margin-bottom:1.25rem;}
.usp-post-content p{margin-bottom:0.875rem;}

/* Price Tabs */
.usp-price-box{background:var(--white);border-radius:var(--rl);padding:1.5rem;box-shadow:var(--sh);margin-bottom:1.5rem;}
.usp-price-tabs{display:flex;gap:0.75rem;flex-wrap:wrap;margin-bottom:0.75rem;}
.usp-price-tab{
    flex:1;min-width:100px;
    background:var(--g100);border:2px solid transparent;
    border-radius:var(--r);padding:0.875rem 0.75rem;
    text-align:center;cursor:pointer;
    transition:all 0.2s var(--ease);
    display:flex;flex-direction:column;gap:0.15rem;
    font-family:var(--font-b);
}
.usp-price-tab:hover{border-color:var(--g);background:#e8f5ee;}
.usp-price-tab.active{background:var(--g);border-color:var(--g);color:var(--white);}
.usp-occ-type{font-size:0.82rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;}
.usp-occ-price{font-family:var(--font-h);font-size:1.5rem;font-weight:700;color:var(--gold);}
.usp-price-tab.active .usp-occ-price{color:var(--goldl);}
.usp-occ-sub{font-size:0.7rem;opacity:0.7;}
.usp-price-note{font-size:0.8rem;color:var(--g500);margin:0;display:flex;align-items:flex-start;gap:0.4rem;}
.usp-price-note i{color:var(--g);margin-top:2px;flex-shrink:0;}

/* Quick Info */
.usp-quick-info{
    display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));
    gap:0.75rem;margin-bottom:1.5rem;
}
.usp-qi-item{
    background:var(--white);border-radius:var(--r);
    padding:0.875rem 1rem;
    display:flex;align-items:center;gap:0.75rem;
    box-shadow:var(--sh);
}
.usp-qi-item i{font-size:1.25rem;color:var(--gold);flex-shrink:0;}
.usp-qi-item span{font-size:0.72rem;color:var(--g500);display:block;}
.usp-qi-item strong{font-size:0.82rem;color:var(--g700);}

/* Content Tabs */
.usp-tabs{background:var(--white);border-radius:var(--rl);box-shadow:var(--sh);overflow:hidden;margin-bottom:1.5rem;}
.usp-tab-nav{display:flex;border-bottom:2px solid var(--g100);}
.usp-tab-btn{
    padding:1rem 1.5rem;font-size:0.875rem;font-weight:600;color:var(--g500);
    background:none;border:none;cursor:pointer;border-bottom:2px solid transparent;
    margin-bottom:-2px;transition:all 0.2s;font-family:var(--font-b);
}
.usp-tab-btn:hover{color:var(--g);background:var(--off);}
.usp-tab-btn.active{color:var(--g);border-bottom-color:var(--g);}
.usp-tab-content{display:none;padding:1.75rem;}
.usp-tab-content.active{display:block;}

/* Pricing Table */
.usp-pricing-table{border:1px solid var(--g100);border-radius:var(--r);overflow:hidden;margin-bottom:1rem;}
.usp-pt-row{display:flex;justify-content:space-between;align-items:center;padding:0.75rem 1.1rem;border-bottom:1px solid var(--g100);}
.usp-pt-row:last-child{border-bottom:none;}
.usp-pt-row span{font-size:0.875rem;color:var(--g700);}
.usp-pt-row strong{font-family:var(--font-h);font-size:1.05rem;color:var(--g);}
.usp-pt-note{font-size:0.78rem;color:var(--g500);padding:0.75rem 1.1rem;background:var(--off);}

/* Inclusions */
.usp-inc-list,.usp-exc-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:0.5rem;}
.usp-inc-list li,.usp-exc-list li{display:flex;align-items:center;gap:0.65rem;font-size:0.9rem;color:var(--g700);padding:0.5rem 0;border-bottom:1px solid var(--g100);}
.usp-inc-list li:last-child,.usp-exc-list li:last-child{border-bottom:none;}
.usp-inc-list i{color:var(--g);font-size:0.9rem;}
.usp-exc-list i{color:#dc2626;font-size:0.9rem;}

/* Hotels */
.usp-hotel-card{background:var(--off);border-radius:var(--r);padding:1.25rem;margin-bottom:1rem;border:1px solid var(--g100);}
.usp-hotel-city{font-size:0.75rem;font-weight:700;text-transform:uppercase;color:var(--g);letter-spacing:0.06em;margin-bottom:0.4rem;}
.usp-hotel-city i{margin-right:0.35rem;}
.usp-hotel-name{font-family:var(--font-h);font-size:1.1rem;color:var(--black);margin-bottom:0.5rem;}
.usp-hotel-stars{color:var(--gold);font-size:0.85rem;margin-bottom:0.5rem;}
.usp-hotel-stars span{color:var(--g500);margin-left:0.4rem;font-size:0.8rem;}
.usp-hotel-meta{font-size:0.82rem;color:var(--g500);display:flex;align-items:center;gap:0.4rem;margin-bottom:0.25rem;}
.usp-hotel-meta i{color:var(--gold);}

/* Itinerary */
.usp-itinerary{display:flex;flex-direction:column;gap:0;}
.usp-itin-row{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--g100);}
.usp-itin-row:last-child{border-bottom:none;}
.usp-itin-day-badge{
    flex-shrink:0;width:60px;height:60px;
    background:linear-gradient(135deg,var(--g),var(--gm));
    color:#fff;border-radius:10px;
    display:flex;align-items:center;justify-content:center;
    font-size:0.7rem;font-weight:700;text-align:center;line-height:1.3;text-transform:uppercase;
}
.usp-itin-body h4{font-size:0.95rem;color:var(--black);margin-bottom:0.35rem;}
.usp-itin-body p{font-size:0.85rem;color:var(--g500);line-height:1.65;}

/* Highlights */
.usp-highlights-section{background:var(--white);border-radius:var(--rl);box-shadow:var(--sh);padding:1.75rem;margin-bottom:1.5rem;}
.usp-highlights-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-top:0.875rem;}
.usp-highlight-card{
    background:var(--off);border-radius:var(--r);padding:1.1rem;
    text-align:center;transition:transform 0.2s,box-shadow 0.2s;
    border:1px solid var(--g100);
}
.usp-highlight-card:hover{transform:translateY(-4px);box-shadow:var(--sh);}
.usp-highlight-icon{
    width:50px;height:50px;margin:0 auto 0.6rem;
    background:linear-gradient(135deg,var(--g),var(--gm));
    border-radius:12px;display:flex;align-items:center;justify-content:center;
    color:#fff;font-size:1.2rem;
}
.usp-highlight-card h4{font-size:0.85rem;color:var(--black);margin-bottom:0.25rem;}
.usp-highlight-card p{font-size:0.78rem;color:var(--g500);line-height:1.5;}

/* Confidence Bar */
.usp-confidence-bar{
    background:linear-gradient(135deg,var(--g),var(--gm));
    border-radius:var(--rl);padding:1.5rem;margin-bottom:1.5rem;
    text-align:center;
}
.usp-confidence-title{
    font-size:0.8rem;font-weight:700;text-transform:uppercase;
    letter-spacing:0.1em;color:var(--goldl);margin-bottom:1rem;
}
.usp-confidence-items{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;}
.usp-conf-item{display:flex;flex-direction:column;align-items:center;gap:0.4rem;}
.usp-conf-item i{font-size:1.5rem;color:var(--gold);}
.usp-conf-item span{font-size:0.75rem;color:rgba(255,255,255,0.85);text-align:center;line-height:1.4;}

/* Airlines */
.usp-airlines-section{background:var(--white);border-radius:var(--rl);box-shadow:var(--sh);padding:1.75rem;margin-bottom:1.5rem;}
.usp-airlines-grid{display:flex;gap:1.25rem;flex-wrap:wrap;margin-top:0.875rem;}
.usp-airline-card{
    display:flex;align-items:center;gap:0.6rem;
    background:var(--off);border:1px solid var(--g100);border-radius:var(--r);
    padding:0.75rem 1.25rem;font-size:0.85rem;font-weight:600;color:var(--g700);
}
.usp-airline-card i{font-size:1.2rem;color:var(--g);}
.usp-airlines-note{font-size:0.82rem;color:var(--g500);margin-top:0.875rem;}
.usp-airlines-note i{color:var(--gold);margin-right:0.3rem;}

/* Gallery */
.usp-gallery-section{background:var(--white);border-radius:var(--rl);box-shadow:var(--sh);padding:1.75rem;margin-bottom:1.5rem;}
.usp-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:0.75rem;margin-top:0.875rem;}
.usp-gallery-item img{width:100%;height:100px;object-fit:cover;border-radius:var(--r);transition:transform 0.3s;}
.usp-gallery-item:hover img{transform:scale(1.05);}

/* ============================================================
   SIDEBAR
   ============================================================ */
.usp-sidebar{display:flex;flex-direction:column;gap:1.25rem;}
.usp-sidebar-card{background:var(--white);border-radius:var(--rl);box-shadow:var(--sh);overflow:hidden;}
.usp-sc-title{
    font-family:var(--font-h);font-size:1.05rem;color:var(--black);
    padding:1rem 1.25rem;border-bottom:2px solid var(--g100);
    margin:0;
}
.usp-sc-title i{color:var(--g);margin-right:0.4rem;}

/* Booking Card */
.usp-booking-card{border:2px solid var(--gold);}
.usp-booking-price{
    background:linear-gradient(135deg,var(--g),var(--gm));
    padding:1.25rem;text-align:center;
    display:flex;flex-direction:column;gap:0.15rem;
}
.usp-bp-from{font-size:0.75rem;text-transform:uppercase;color:rgba(255,255,255,0.7);letter-spacing:0.06em;}
.usp-bp-amount{font-family:var(--font-h);font-size:2.4rem;font-weight:700;color:var(--gold);line-height:1;}
.usp-bp-per{font-size:0.78rem;color:rgba(255,255,255,0.7);}

.usp-booking-card .usp-btn-primary,
.usp-booking-card .usp-btn-whatsapp,
.usp-booking-card .usp-btn-call,
.usp-booking-card .usp-btn-secondary {
    display:flex;align-items:center;justify-content:center;gap:0.5rem;
    padding:0.9rem;font-weight:700;font-size:0.9rem;
    border-radius:var(--r);transition:all 0.2s;text-decoration:none;
    margin:0.75rem 1rem 0;
}
.usp-booking-card .usp-btn-primary{background:linear-gradient(135deg,var(--g),var(--gm));color:#fff;}
.usp-booking-card .usp-btn-primary:hover{box-shadow:0 6px 20px rgba(26,93,58,0.4);transform:translateY(-2px);}
.usp-booking-card .usp-btn-whatsapp{background:#25d366;color:#fff;}
.usp-booking-card .usp-btn-whatsapp:hover{background:#1eb855;}
.usp-booking-card .usp-btn-call{background:var(--off);color:var(--g);border:2px solid var(--g);font-size:0.85rem;}
.usp-booking-card .usp-btn-call:hover{background:var(--g);color:#fff;}
.usp-booking-card .usp-btn-secondary{background:var(--off);color:var(--g);border:2px solid var(--g300);}

.usp-sold-out-notice{background:#fee2e2;color:#dc2626;border-radius:var(--r);padding:0.75rem 1rem;margin:1rem;font-size:0.85rem;font-weight:600;}
.usp-seats-warning{background:#fff7ed;color:#ea580c;border-radius:var(--r);padding:0.65rem 1rem;margin:0.75rem 1rem 0;font-size:0.82rem;}
.usp-installment-note{background:var(--off);border-radius:var(--r);padding:0.75rem 1rem;margin:0.75rem 1rem 0;font-size:0.8rem;color:var(--g700);display:flex;align-items:flex-start;gap:0.4rem;}
.usp-installment-note i{color:var(--g);margin-top:2px;flex-shrink:0;}
.usp-trust-small{display:flex;justify-content:center;gap:1.5rem;padding:0.875rem;font-size:0.75rem;color:var(--g500);}
.usp-trust-small span{display:flex;align-items:center;gap:0.3rem;}
.usp-trust-small i{color:var(--g);}

/* Summary Card */
.usp-summary-card{}
.usp-sc-row{display:flex;align-items:flex-start;gap:0.65rem;padding:0.6rem 1.25rem;border-bottom:1px solid var(--g100);font-size:0.82rem;color:var(--g700);}
.usp-sc-row:last-child{border-bottom:none;}
.usp-sc-row i{color:var(--gold);margin-top:2px;flex-shrink:0;width:14px;}
.usp-sc-row.usp-sc-green i{color:var(--g);}

/* Enquiry Form */
.usp-enquiry-card .usp-enquiry-form{padding:1.1rem;}
.usp-enquiry-form input,
.usp-enquiry-form select,
.usp-enquiry-form textarea{
    width:100%;padding:0.75rem 0.9rem;margin-bottom:0.65rem;
    border:1.5px solid var(--g100);border-radius:var(--r);
    font-family:var(--font-b);font-size:0.875rem;color:var(--g700);
    background:var(--white);transition:border-color 0.2s;
}
.usp-enquiry-form input:focus,
.usp-enquiry-form select:focus,
.usp-enquiry-form textarea:focus{outline:none;border-color:var(--gold);}
.usp-enquiry-form textarea{resize:vertical;}
.usp-form-submit{
    width:100%;background:linear-gradient(135deg,var(--gold),var(--goldd));
    color:#fff;padding:0.85rem;border:none;border-radius:var(--r);
    font-weight:700;font-size:0.9rem;cursor:pointer;
    display:flex;align-items:center;justify-content:center;gap:0.4rem;
    transition:all 0.2s;margin-bottom:0.6rem;font-family:var(--font-b);
}
.usp-form-submit:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(212,168,67,0.4);}
.usp-form-trust{display:flex;align-items:center;justify-content:center;gap:0.35rem;font-size:0.74rem;color:var(--g500);}
.usp-form-trust i{color:var(--g);}

/* Contact Card */
.usp-contact-card{}
.usp-contact-row{
    display:flex;align-items:center;gap:0.75rem;
    padding:0.9rem 1.25rem;border-bottom:1px solid var(--g100);
    text-decoration:none;transition:background 0.2s;
}
.usp-contact-row:hover{background:var(--off);}
.usp-contact-row i{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.95rem;color:#fff;flex-shrink:0;}
.usp-contact-row:first-of-type i,.usp-contact-row i{background:var(--g);}
.usp-contact-row.whatsapp i{background:#25d366;}
.usp-contact-row.email i{background:#3b82f6;}
.usp-contact-row strong{display:block;font-size:0.82rem;color:var(--g700);}
.usp-contact-row span{font-size:0.8rem;color:var(--g500);}
.usp-hours{font-size:0.78rem;color:var(--g500);padding:0.75rem 1.25rem;margin:0;display:flex;align-items:center;gap:0.35rem;}
.usp-hours i{color:var(--gold);}

/* ============================================================
   RELATED PACKAGES
   ============================================================ */
.usp-related-section{padding:4rem 0;background:var(--cream);}
.usp-related-title{font-family:var(--font-h);font-size:1.8rem;color:var(--black);text-align:center;margin-bottom:2rem;}
.usp-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.usp-related-card{
    background:var(--white);border-radius:var(--rl);overflow:visible;
    box-shadow:var(--sh);text-decoration:none;display:flex;flex-direction:column;
    transition:transform 0.3s,box-shadow 0.3s;position:relative;
}
.usp-related-card:hover{transform:translateY(-6px);box-shadow:var(--shl);}
.usp-rc-img{height:180px;overflow:hidden;border-radius:var(--rl) var(--rl) 0 0;}
.usp-rc-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.4s;}
.usp-related-card:hover .usp-rc-img img{transform:scale(1.07);}
.usp-rc-badge{position:absolute;top:0.75rem;right:0.75rem;background:var(--g);color:#fff;padding:0.25rem 0.75rem;border-radius:6px;font-size:0.7rem;font-weight:700;text-transform:uppercase;}
.usp-rc-body{padding:1.25rem;}
.usp-rc-body h3{font-family:var(--font-h);font-size:0.95rem;color:var(--black);margin-bottom:0.5rem;line-height:1.3;}
.usp-rc-body p{font-size:0.8rem;color:var(--g500);display:flex;align-items:center;gap:0.35rem;margin-bottom:0.25rem;}
.usp-rc-body i{color:var(--gold);font-size:0.75rem;}
.usp-rc-price{font-family:var(--font-h);font-size:1.2rem;color:var(--g);font-weight:700;margin-top:0.6rem;}

/* ============================================================
   ARCHIVE PAGE
   ============================================================ */
.usp-archive-hero{
    position:relative;min-height:45vh;
    display:flex;align-items:flex-end;
    background:linear-gradient(135deg,var(--gd),var(--g));overflow:hidden;
}
.usp-archive-hero-overlay{position:absolute;inset:0;background:rgba(10,30,18,0.45);}
.usp-archive-hero-content{position:relative;z-index:2;padding:3rem var(--pad) 2.5rem;}
.usp-archive-label{display:inline-flex;align-items:center;gap:0.4rem;background:rgba(255,255,255,0.1);color:var(--goldl);padding:0.35rem 0.9rem;border-radius:20px;font-size:0.75rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;margin-bottom:0.75rem;}
.usp-archive-hero-content h1{font-family:var(--font-h);font-size:clamp(1.8rem,4vw,3rem);color:#fff;margin-bottom:0.6rem;}
.usp-archive-hero-content p{color:rgba(255,255,255,0.78);font-size:1rem;}

/* Filter Bar */
.usp-filter-bar{background:var(--white);border-bottom:1px solid var(--g100);padding:1rem 0;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,0.06);}
.usp-filter-inner{display:flex;align-items:center;gap:0.75rem;flex-wrap:wrap;}
.usp-filter-label{font-size:0.8rem;font-weight:700;color:var(--g500);text-transform:uppercase;letter-spacing:0.06em;flex-shrink:0;}
.usp-filter-btns{display:flex;gap:0.5rem;flex-wrap:wrap;}
.usp-filter-btn{
    padding:0.45rem 1rem;border-radius:20px;font-size:0.82rem;font-weight:600;
    background:var(--off);color:var(--g700);border:1.5px solid var(--g100);
    text-decoration:none;transition:all 0.2s;
}
.usp-filter-btn:hover,.usp-filter-btn.active{background:var(--g);color:#fff;border-color:var(--g);}

/* Archive Grid */
.usp-archive-section{padding:3rem 0 5rem;background:var(--off);}
.usp-archive-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1.75rem;}

.usp-arch-card{
    background:var(--white);border-radius:var(--rl);overflow:visible;
    box-shadow:var(--sh);border:2px solid transparent;
    transition:transform 0.3s,box-shadow 0.3s,border-color 0.3s;
    display:flex;flex-direction:column;position:relative;
}
.usp-arch-card:hover{transform:translateY(-8px);box-shadow:var(--shl);}
.usp-arch-featured{border-color:var(--gold);}
.usp-arch-popular{
    position:absolute;top:-1px;right:18px;
    background:linear-gradient(135deg,var(--gold),var(--goldd));
    color:#fff;padding:0.35rem 0.9rem;border-radius:0 0 8px 8px;
    font-size:0.7rem;font-weight:700;text-transform:uppercase;letter-spacing:0.06em;
    box-shadow:0 4px 12px rgba(212,168,67,0.3);z-index:4;
}
.usp-arch-soldout{
    position:absolute;top:0.75rem;left:0.75rem;
    background:#dc2626;color:#fff;padding:0.25rem 0.75rem;border-radius:6px;
    font-size:0.7rem;font-weight:700;text-transform:uppercase;z-index:4;
}
.usp-arch-badge{
    position:absolute;top:0.75rem;right:0.75rem;
    padding:0.25rem 0.75rem;border-radius:6px;
    font-size:0.7rem;font-weight:700;text-transform:uppercase;z-index:4;color:#fff;
}
.usp-arch-badge.green{background:var(--g);}
.usp-arch-badge.gold{background:var(--gold);}
.usp-arch-badge.red{background:#dc2626;}

.usp-arch-img{position:relative;height:215px;overflow:hidden;border-radius:var(--rl) var(--rl) 0 0;}
.usp-arch-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s;}
.usp-arch-card:hover .usp-arch-img img{transform:scale(1.08);}
.usp-arch-img-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--g),var(--gm));display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.3);font-size:4rem;}
.usp-arch-price-tag{
    position:absolute;bottom:-18px;left:50%;transform:translateX(-50%);
    background:linear-gradient(135deg,var(--gold),var(--goldd));
    color:#fff;padding:0.6rem 1.3rem;border-radius:30px;
    font-weight:700;font-size:1rem;white-space:nowrap;z-index:3;
    box-shadow:0 4px 16px rgba(212,168,67,0.35);
}

.usp-arch-body{padding:1.6rem 1.25rem 1.25rem;padding-top:2rem;display:flex;flex-direction:column;flex:1;}
.usp-arch-title{font-family:var(--font-h);font-size:1.02rem;color:var(--g);margin-bottom:0.875rem;font-weight:700;text-transform:uppercase;letter-spacing:0.02em;text-align:center;}
.usp-arch-title a{text-decoration:none;color:inherit;}

.usp-arch-meta-grid{display:grid;grid-template-columns:1fr 1fr;gap:0.5rem;margin-bottom:0.75rem;}
.usp-arch-meta-item{background:var(--off);border-radius:8px;padding:0.65rem;text-align:center;}
.usp-arch-meta-item i{display:block;font-size:1.05rem;margin-bottom:0.2rem;}
.usp-arch-meta-item span{font-size:0.7rem;color:var(--g500);display:block;}
.usp-arch-meta-item strong{font-size:0.78rem;font-weight:700;color:var(--g700);}

.usp-arch-details{display:flex;justify-content:center;gap:1.25rem;font-size:0.8rem;color:var(--g500);margin-bottom:0.6rem;flex-wrap:wrap;}
.usp-arch-details span{display:flex;align-items:center;gap:0.3rem;}
.usp-arch-details i{color:var(--gold);}
.usp-arch-cities{font-size:0.78rem;color:var(--g500);text-align:center;margin-bottom:0.875rem;}
.usp-arch-cities i{color:var(--g);margin-right:0.3rem;}

.usp-arch-btn{
    display:flex;align-items:center;justify-content:center;gap:0.4rem;
    background:linear-gradient(135deg,var(--g),var(--gm));color:#fff;
    padding:0.8rem;border-radius:var(--r);font-weight:700;font-size:0.88rem;
    text-decoration:none;transition:all 0.2s;margin-top:auto;
}
.usp-arch-btn:hover{box-shadow:0 6px 20px rgba(26,93,58,0.35);transform:translateY(-1px);}
.usp-arch-btn.disabled{background:var(--g300);color:var(--g500);cursor:not-allowed;pointer-events:none;}

/* Pagination */
.usp-pagination{margin-top:3rem;text-align:center;}
.usp-pagination .nav-links{display:flex;justify-content:center;gap:0.5rem;flex-wrap:wrap;}
.usp-pagination .page-numbers{
    display:inline-flex;align-items:center;justify-content:center;
    width:40px;height:40px;border-radius:var(--r);
    background:var(--white);border:1.5px solid var(--g300);color:var(--g700);
    text-decoration:none;font-weight:600;font-size:0.9rem;transition:all 0.2s;
}
.usp-pagination .page-numbers.current,.usp-pagination .page-numbers:hover{background:var(--g);border-color:var(--g);color:#fff;}
.usp-pagination .page-numbers.prev,.usp-pagination .page-numbers.next{width:auto;padding:0 1rem;}

/* No packages */
.usp-no-packages{text-align:center;padding:5rem 1rem;}
.usp-no-packages i{font-size:4rem;color:var(--g300);display:block;margin-bottom:1rem;}
.usp-no-packages h3{font-family:var(--font-h);font-size:1.5rem;color:var(--g500);margin-bottom:0.5rem;}
.usp-no-packages p{color:var(--g500);margin-bottom:1.5rem;}

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media(max-width:1024px){
    .usp-layout{grid-template-columns:1fr;}
    .usp-sidebar{order:-1;}
    .usp-booking-card{position:static;}
    .usp-related-grid{grid-template-columns:1fr 1fr;}
    .usp-quick-info{grid-template-columns:1fr 1fr;}
}
@media(max-width:768px){
    .usp-hero{background-attachment:scroll;}
    .usp-hero-title{font-size:1.6rem;}
    .usp-tab-btn{padding:0.7rem 0.9rem;font-size:0.8rem;}
    .usp-related-grid{grid-template-columns:1fr;}
    .usp-archive-grid{grid-template-columns:1fr;max-width:420px;margin:0 auto;}
    .usp-highlights-grid{grid-template-columns:1fr 1fr;}
    .usp-confidence-items{gap:1.25rem;}
    .usp-price-tabs{flex-direction:row;}
    .usp-tab-nav{overflow-x:auto;}
}
@media(max-width:480px){
    .usp-price-tabs{grid-template-columns:1fr 1fr;}
    .usp-price-tabs{display:grid;}
    .usp-quick-info{grid-template-columns:1fr;}
    .usp-highlights-grid{grid-template-columns:1fr;}
    .usp-arch-meta-grid{grid-template-columns:1fr 1fr;}
}