/* ==========================================
   Travel AI Platform — LUXURY EDITION
   Global Variables + Base Reset
   (loads FIRST — every other file reads
   colors/spacing/radius/fonts from here so
   the whole platform reads as one premium,
   five-star travel brand — MakeMyTrip/Oberoi/
   Taj-tier — instead of a generic SaaS blue.)
========================================== */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700;800;900&family=Inter:wght@400;500;600;700;800&display=swap');

:root{

    /* ---------- Brand: deep navy + champagne gold ---------- */

    --tap-primary:#0e2a52;           /* deep midnight navy   */
    --tap-primary-dark:#081c3a;
    --tap-primary-light:#1b3f70;

    --tap-secondary:#c9a227;         /* champagne gold        */
    --tap-gold:#c9a227;
    --tap-gold-light:#e8c766;
    --tap-gold-dark:#a3801f;
    --tap-gold-tint:#f4e8c8;         /* soft gold background   */

    --tap-emerald:#147a5f;
    --tap-success:#147a5f;
    --tap-warning:#b8860b;
    --tap-danger:#9c2f22;

    /* ---------- Gradients ---------- */

    --tap-gradient-gold:linear-gradient(135deg,#e8c766 0%,#c9a227 55%,#a3801f 100%);
    --tap-gradient-navy:linear-gradient(135deg,#16305a 0%,#0e2a52 60%,#081c3a 100%);
    --tap-gradient-luxury:linear-gradient(120deg,#0b1f3d 0%,#173963 45%,#a3801f 100%);
    --tap-gradient-hairline:linear-gradient(90deg,transparent,#c9a227,transparent);

    /* ---------- Background ---------- */

    --tap-bg:#faf7ef;                /* warm ivory            */
    --tap-bg-alt:#f4efe1;

    --tap-card:#fffdf9;

    /* ---------- Text ---------- */

    --tap-heading:#14203a;
    --tap-text:#3a3527;
    --tap-light:#726b58;

    --tap-text-light:var(--tap-light);

    --tap-on-dark:#f6efd9;           /* text on navy/gold surfaces */
    --tap-on-dark-muted:#c9c2a8;

    /* ---------- Border ---------- */

    --tap-border:#e7ddc0;
    --tap-border-strong:#d8c88f;

    /* ---------- Radius ---------- */

    --tap-radius-sm:8px;
    --tap-radius:16px;
    --tap-radius-lg:24px;

    /* ---------- Shadow (warm navy tint, not flat black) ---------- */

    --tap-shadow-sm:0 4px 14px rgba(14,42,82,.08);
    --tap-shadow:0 14px 34px rgba(14,42,82,.10);
    --tap-shadow-lg:0 24px 60px rgba(14,42,82,.16);
    --tap-shadow-gold:0 10px 30px rgba(201,162,39,.28);

    /* ---------- Fonts ---------- */

    --tap-font-heading:'Playfair Display', Georgia, 'Times New Roman', serif;
    --tap-font-body:'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

    /* ---------- Transition ---------- */

    --tap-transition:.3s cubic-bezier(.4,0,.2,1);

    /* ---------- Spacing scale ---------- */

    --tap-space-1:4px;
    --tap-space-2:8px;
    --tap-space-3:12px;
    --tap-space-4:16px;
    --tap-space-5:24px;
    --tap-space-6:32px;
    --tap-space-7:48px;
    --tap-space-8:64px;

    /* Section vertical padding — requested spec:
       10px top/bottom on desktop + tablet. Side padding
       is handled per-breakpoint below / in responsive.css. */
    --tap-section-pad-y:10px;

    /* ---------- Layout ---------- */

    --tap-container-width:1280px;
    --tap-container-pad:24px;

    /* Breakpoints, for reference only (CSS custom properties cannot
       be used inside @media queries, so responsive.css repeats these
       numbers directly — keep both in sync if they ever change):
       Desktop:      > 1200px
       Small desktop: 992px - 1200px
       Tablet:        768px - 991px
       Mobile:        481px - 767px
       Small mobile: <= 480px */

}

/* ==========================================
   Base Reset
========================================== */

.tap-planner,
.tap-planner *,
.tap-itinerary,
.tap-itinerary *,
.tap-dashboard,
.tap-dashboard *,
.tap-my-trips,
.tap-my-trips *,
.tap-favorites-page,
.tap-favorites-page *,
.tap-booking-page,
.tap-booking-page *,
.tap-trip-page,
.tap-trip-page *,
.tap-public-profile,
.tap-public-profile *,
.tap-public-trip,
.tap-public-trip *,
.tap-auth-wrapper,
.tap-auth-wrapper *,
.tap-hotel-archive,
.tap-hotel-archive *,
.tap-hotel-single,
.tap-hotel-single *{

    box-sizing:border-box;

}

.tap-planner img,
.tap-itinerary img,
.tap-dashboard img,
.tap-my-trips img,
.tap-favorites-page img,
.tap-booking-page img,
.tap-trip-page img,
.tap-public-profile img,
.tap-public-trip img{

    max-width:100%;

    height:auto;

    display:block;

}

/* Base typography — every TAP surface now speaks the same
   luxury voice: serif display headings, clean sans body. */

.tap-planner,
.tap-itinerary,
.tap-dashboard,
.tap-my-trips,
.tap-favorites-page,
.tap-booking-page,
.tap-trip-page,
.tap-public-profile,
.tap-public-trip,
.tap-auth-wrapper,
.tap-hotel-archive,
.tap-hotel-single{

    font-family:var(--tap-font-body);
    color:var(--tap-text);

}

.tap-planner h1, .tap-planner h2,
.tap-itinerary h1, .tap-itinerary h2, .tap-itinerary h3,
.tap-dashboard h1, .tap-dashboard h2,
.tap-my-trips h1, .tap-my-trips h2,
.tap-favorites-page h1, .tap-favorites-page h2,
.tap-booking-page h1, .tap-booking-page h2,
.tap-trip-page h1, .tap-trip-page h2,
.tap-public-profile h1, .tap-public-profile h2,
.tap-public-trip h1, .tap-public-trip h2,
.tap-auth-box h2,
.tap-hotel-archive h1,
.tap-hotel-single h1, .tap-hotel-title,
.tap-hero h1{

    font-family:var(--tap-font-heading);

}

/* Shared page-width wrapper. */

.tap-container{

    width:100%;

    max-width:var(--tap-container-width);

    margin:0 auto;

    padding:0 var(--tap-container-pad);

    box-sizing:border-box;

}

/* Reusable luxury flourishes, available to every template */

.tap-gold-rule{
    height:2px;
    width:64px;
    background:var(--tap-gradient-gold);
    border-radius:2px;
    margin:14px auto;
}

.tap-luxury-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-family:var(--tap-font-body);
    font-size:12px;
    font-weight:700;
    letter-spacing:2.5px;
    text-transform:uppercase;
    color:var(--tap-gold-dark);
    margin-bottom:10px;
}
