/* Secondary pages of feelinggoodvegas.com on the FEELING GOOD look (calendar, venue, FAQ, performers, contact, terms…).
   layouts/app.blade.php adds body.tpl-page.tpl-page-feelinggood and loads templates/page-skin.css (colour variables
   below) then this file. Same language as the show page: snow white, thin red art-deco titles, evergreen labels.
   The .fg-* parts (nav, buttons, snowflake rule, band, footer bar) come from feelinggood-show.css.
   SKIN ONLY: no section moves, hides or resizes. Real photos only (Josh's own cutouts, the show's snow art). */
@import url('feelinggood-show.css');

body.tpl-page.tpl-page-feelinggood {
    --pg-bg: #f7f9fa; --pg-surface: #ffffff; --pg-surface-2: #f1f4f5; --pg-line: #dde3e6; --pg-chip-line: #c7cdd1;
    --pg-ink: #1c2326; --pg-ink-2: #46524f; --pg-ink-3: #6b7774;
    --pg-accent: #c8102e; --pg-accent-hover: #9e0c24; --pg-accent-ink: #ffffff;
    --pg-price: #c8102e; --pg-star: #c8102e;
    --pg-display: 'Poiret One'; --pg-display-weight: 400; --pg-display-tracking: .04em;
    --pg-text: 'Montserrat'; --pg-button-font: 'Josefin Sans'; --pg-nav-font: 'Josefin Sans';
    --pg-nav-transform: uppercase; --pg-nav-tracking: .12em; --pg-nav-size: 15px;
    --pg-radius: 12px; --pg-btn-radius: 8px;
    --pg-header-bg: #ffffff; --pg-header-ink: #1f4d3a;
    background: #f7f9fa !important;
}
html:has(> body.tpl-page-feelinggood) { background: #f7f9fa; }
body.tpl-page.tpl-page-feelinggood .layout-main { background: transparent; }

/* ---- header + footer ---------------------------------------------------------------------- */
body.tpl-page.tpl-page-feelinggood .site-header { background: #ffffff; border-bottom: 1px solid #dde3e6; box-shadow: 0 2px 14px rgba(28, 35, 38, .06); }
body.tpl-page.tpl-page-feelinggood .site-header .logo img { max-height: 44px; width: auto; }
body.tpl-page.tpl-page-feelinggood .site-header .hamburger { color: #1f4d3a; }
body.tpl-page.tpl-page-feelinggood .site-header .nav-links { display: none; }
body.tpl-page.tpl-page-feelinggood footer#contact { background: #1f4d3a !important; color: #e6efe9; border-top: 3px solid #c8102e; }
body.tpl-page.tpl-page-feelinggood footer#contact a { color: #e6efe9; }
body.tpl-page.tpl-page-feelinggood footer#contact :is(h2, h3, h4) { color: #ffffff; }
body.tpl-page.tpl-page-feelinggood .footer-newsletter-band { background: #ffffff !important; border: 1px solid #dde3e6 !important; }
body.tpl-page.tpl-page-feelinggood .footer-newsletter-title { color: #1f4d3a !important; }
body.tpl-page.tpl-page-feelinggood .footer-newsletter-btn { background: #c8102e !important; color: #ffffff !important; border: 0 !important; }

/* ---- headings ------------------------------------------------------------------------------- */
body.tpl-page.tpl-page-feelinggood .layout-main :is(h1, h2, .section-title, .calendar-title, .faq-header__title, .contact-header__title, .tos-header__title) {
    font-family: 'Poiret One', sans-serif !important; font-weight: 400 !important; letter-spacing: .04em; text-transform: uppercase;
    color: #1f4d3a !important; text-shadow: none !important; -webkit-text-stroke: .5px currentColor; background: none; -webkit-text-fill-color: currentColor;
}
body.tpl-page.tpl-page-feelinggood :is(.calendar-header, .faq-header, .contact-header, .tos-header) { background: transparent !important; border: 0 !important; box-shadow: none !important; }
body.tpl-page.tpl-page-feelinggood .layout-main :is(.cta-button, .btn-primary, button[type="submit"]):not(.fg-btn) {
    background: #c8102e; color: #ffffff; border-color: #c8102e; font-family: 'Josefin Sans', sans-serif; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
}

/* Pages that draw the decorative page hero keep their own H1 for readers; hide the duplicate visual title. */
body.tpl-page.tpl-page-feelinggood .fg-phero ~ :is(.faq-header, .contact-header, .tos-header) :is(.faq-header__title, .contact-header__title, .tos-header__title) {
    position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* ---- page hero ------------------------------------------------------------------------------ */
.fg-phero { position: relative; overflow: hidden; isolation: isolate; background: #eef2f4; border-bottom: 1px solid #dde3e6; }
.fg-phero .fg-hero-bg { position: absolute; inset: 0; z-index: -1; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.fg-phero-inner { max-width: 1100px; margin: 0 auto; box-sizing: border-box; display: grid; grid-template-columns: 1fr auto; align-items: end; padding: 0 16px; min-height: 170px; }
.fg-phero-copy { padding: 22px 0; text-align: left; }
.fg-phero-copy .fg-rule { margin: 8px 0; max-width: 240px; }
.fg-phero-kicker { margin: 0 0 4px; font: 600 10px/1.3 'Josefin Sans', sans-serif; letter-spacing: .2em; text-transform: uppercase; color: #1f4d3a; }
.fg-phero-title { margin: 0; font: 400 30px/1.05 'Poiret One', sans-serif; color: #c8102e; text-transform: uppercase; -webkit-text-stroke: .8px currentColor; }
.fg-phero-sub { margin: 0; font: 500 13px/1.45 'Montserrat', sans-serif; color: #46524f; }
.fg-phero-josh { display: block; height: 170px; width: auto; align-self: end; }
@media (min-width: 760px) {
    .fg-phero-inner { min-height: 260px; padding: 0 32px; }
    .fg-phero-title { font-size: 52px; -webkit-text-stroke: 1px currentColor; }
    .fg-phero-kicker { font-size: 12px; }
    .fg-phero-sub { font-size: 16px; }
    .fg-phero-josh { height: 260px; }
}
