/* =============================================================
   UNIFIED DESIGN SYSTEM — sydneytourguide.com.au
   Loaded last in <head> → overrides Site.css, style.css
   and all inline <style> blocks in individual pages.
   NO text, NO functionality, NO VB code touched.
   ============================================================= */

/* ── CSS VARIABLES ──────────────────────────────────────────── */
:root {
    --u-blue:        #004890;
    --u-blue-mid:    #0068c8;
    --u-blue-pale:   #f0f4ff;
    --u-blue-border: #d0dff5;
    --u-green:       #16a34a;
    --u-green-dark:  #15803d;
    --u-gold:        #f59e0b;
    --u-gold-pale:   #fffbeb;
    --u-text:        #1a2e4a;
    --u-muted:       #6b7280;
    --u-radius-sm:   8px;
    --u-radius-md:   12px;
    --u-radius-lg:   16px;
    --u-shadow:      0 4px 18px rgba(0, 72, 144, .12);
}

/* ── BUTTONS ────────────────────────────────────────────────── */

/* Calculate / primary action */
.btn-calc {
    background: linear-gradient(135deg, var(--u-blue), var(--u-blue-mid));
    border-radius: var(--u-radius-sm);
    box-shadow: 0 3px 12px rgba(0, 72, 144, .28);
    transition: background .2s, box-shadow .2s, transform .1s;
}
.btn-calc:hover {
    background: linear-gradient(135deg, var(--u-blue-mid), var(--u-blue));
    box-shadow: 0 5px 18px rgba(0, 72, 144, .38);
    background-color: var(--u-blue-mid); /* fallback */
}
.btn-calc:active {
    transform: scale(.98);
}

/* Book / order — unified green across all pages */
.btn-order,
.book-button,
a.book-button,
a.btn-order {
    background-color: var(--u-green);
    background: linear-gradient(135deg, var(--u-green), #22c55e);
    border-radius: var(--u-radius-sm);
    box-shadow: 0 3px 12px rgba(22, 163, 74, .28);
    transition: background .2s, box-shadow .2s, transform .1s;
    color: #fff;
}
.btn-order:hover,
.book-button:hover,
a.book-button:hover,
a.btn-order:hover {
    background: var(--u-green-dark);
    background-color: var(--u-green-dark);
    box-shadow: 0 5px 18px rgba(22, 163, 74, .38);
    color: #fff;
}
.btn-order:active,
.book-button:active {
    transform: scale(.98);
}

/* ── PRICE WARNING BOX ──────────────────────────────────────── */
/* Was yellow (#FFFFE0) on some pages, blue on others — now unified */
.price-warning-box {
    background-color: var(--u-blue-pale);
    border: 2px solid var(--u-blue);
    color: var(--u-text);
    border-radius: var(--u-radius-sm);
}

/* ── HERO TITLE BAR ─────────────────────────────────────────── */
/* Was #003399 — unify to #004890 */
.hero-title-bar {
    background: linear-gradient(135deg, var(--u-blue) 0%, var(--u-blue-mid) 60%, #33aaff 100%);
    border-radius: var(--u-radius-md);
}

/* ── HIGHLIGHTS BOX ─────────────────────────────────────────── */
.highlights-box {
    background: var(--u-blue-pale);
    border-left-color: var(--u-blue);
    border-radius: 0 var(--u-radius-md) var(--u-radius-md) 0;
}
.highlights-box h3,
.highlights-box h2 {
    color: var(--u-blue);
}
.highlights-box li::before,
.highlights-box li:before {
    color: var(--u-blue);
}

/* ── INSIDER TIP ────────────────────────────────────────────── */
.insider-tip {
    background-color: var(--u-gold-pale);
    border-left-color: var(--u-gold);
    border-radius: 0 var(--u-radius-sm) var(--u-radius-sm) 0;
}

/* ── TIMELINE ───────────────────────────────────────────────── */
/* Dot colour — was #003399, now #004890 */
.timeline-item::before,
.timeline-item:before {
    border-color: var(--u-blue);
}
/* Hover on ALL pages (was only on tour3) */
.timeline-item:hover::before,
.timeline-item:hover:before {
    background-color: var(--u-blue);
    transform: scale(1.5);
    box-shadow: 0 0 0 4px rgba(0, 72, 144, .18);
}
.timeline-time {
    color: var(--u-blue);
}

/* ── GALLERY ────────────────────────────────────────────────── */
/* Consistent hover: scale + shadow (was just opacity on some pages) */
.column img {
    opacity: 1;
    transition: transform .3s ease, box-shadow .3s ease;
    border-radius: var(--u-radius-sm);
}
.column img:hover {
    opacity: 1;
    transform: scale(1.04);
    box-shadow: 0 6px 20px rgba(0, 0, 0, .22);
}

/* ── BOOKING CALCULATOR CARD ────────────────────────────────── */
.calc-card {
    border-radius: var(--u-radius-lg);
    box-shadow: var(--u-shadow);
    border: 1px solid var(--u-blue-border);
}
.calc-title {
    color: var(--u-text);
    border-bottom-color: var(--u-blue-border);
}

/* ── FORM CONTROLS ──────────────────────────────────────────── */
.form-control:focus {
    border-color: var(--u-blue);
    box-shadow: 0 0 0 3px rgba(0, 72, 144, .14);
    outline: none;
}

/* ── SECTION TITLE (tours.aspx listing pages) ───────────────── */
/* Was #184F9B — now unified #004890 */
h2.section-title {
    background-color: var(--u-blue);
    border-radius: var(--u-radius-sm);
}

/* ── CTA BUTTON (Site.css .cta-button) ─────────────────────── */
.cta-button {
    background: linear-gradient(135deg, var(--u-green), #22c55e);
    border-radius: var(--u-radius-sm);
    transition: background .2s, box-shadow .2s;
}
.cta-button:hover {
    background: var(--u-green-dark);
}

/* ── SHARE TOUR BANNER (sharetour / tours pages) ────────────── */
.share-tour-banner {
    border-color: var(--u-blue);
    border-style: dashed;
    background: linear-gradient(135deg, var(--u-blue-pale) 0%, #e0ecff 100%);
}

/* ── LINK / ITEM BOXES (Site.css .link-item-box) ────────────── */
.link-item-box:hover {
    border-color: var(--u-blue);
    box-shadow: 0 4px 16px rgba(0, 72, 144, .14);
}

/* ── PAGE HEADING (Site.css .page-heading) ──────────────────── */
.page-heading {
    color: var(--u-blue);
}

/* ── SECTION HEADING UNDERLINE ──────────────────────────────── */
.section-heading::after,
.section-heading:after {
    background-color: var(--u-blue);
}
