/*
 * Irish Driving Test Finder — public UI v6
 * Familiar Inter typography and restrained interface effects.
 * Loaded last on public/customer pages; admin is intentionally excluded.
 */

:root {
    --idtf-ui-font: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    --idtf-ui-radius-sm: 6px;
    --idtf-ui-radius: 10px;
    --idtf-ui-radius-lg: 12px;
    --idtf-ui-shadow: 0 2px 8px rgba(25, 23, 19, .055);
}

/* Direct headings only: remove decorative pre-head copy across public pages. */
.finder-site .finder-live-label,
.finder-site [class*="eyebrow"],
.finder-site [class*="kicker"],
.finder-site [class*="overline"],
.finder-site .blog-guide-label,
.finder-site .post-category-tag {
    display: none !important;
}

.page-home .finder-hero-layout {
    display: block !important;
}

.page-home .finder-hero-intro {
    max-width: 900px !important;
}

.page-home .finder-section-heading {
    padding-left: 0 !important;
}

.page-home .finder-section-heading::before {
    display: none !important;
    content: none !important;
}

.page-home .finder-date-story-heading {
    display: block !important;
}

body.finder-site,
.finder-site button,
.finder-site input,
.finder-site select,
.finder-site textarea,
.finder-site optgroup {
    font-family: var(--idtf-ui-font) !important;
    font-style: normal;
}

.finder-site :where(h1, h2, h3, h4, h5, h6, p, a, span, strong, small, label, button, input, select, textarea, li, dt, dd, td, th, legend, blockquote, cite, figcaption) {
    font-family: var(--idtf-ui-font) !important;
}

.finder-site h1,
.finder-site h2,
.finder-site h3,
.finder-site h4,
.finder-site h5,
.finder-site h6,
.finder-site .booking-title,
.finder-site .blog-card-title,
.finder-site .post-content h2,
.finder-site .post-content h3 {
    font-style: normal !important;
    font-weight: 700 !important;
    letter-spacing: -.025em !important;
    text-shadow: none !important;
}

.finder-site h1 {
    line-height: 1.08 !important;
}

.finder-site h2,
.finder-site h3 {
    line-height: 1.16 !important;
}

.finder-site h1 em,
.finder-site h2 em,
.finder-site h3 em,
.finder-site .finder-date-months,
.finder-site .finder-price strong,
.finder-site .booking-plan-price,
.finder-site .checkout-price,
.finder-site .price-amount {
    font-family: var(--idtf-ui-font) !important;
    font-style: normal !important;
}

.finder-site h1 em,
.finder-site h2 em,
.finder-site h3 em {
    color: #0b6b52;
    font-weight: inherit !important;
}

.finder-site .card,
.finder-site .form-card,
.finder-site .booking-card,
.finder-site .checkout-card,
.finder-site .order-summary,
.finder-site .payment-card,
.finder-site .trust-card,
.finder-site .content-card,
.finder-site .sidebar-card,
.finder-site .loc-sidebar-card,
.finder-site .info-card,
.finder-site .nr-card,
.finder-site .nr-side-card,
.finder-site .blog-card,
.finder-site .related-card {
    border-radius: var(--idtf-ui-radius-lg) !important;
    box-shadow: var(--idtf-ui-shadow) !important;
}

.finder-site .btn,
.finder-site [class*="-button"],
.finder-site [class*="-btn"],
.finder-site input,
.finder-site select,
.finder-site textarea,
.finder-site .alert,
.finder-site [class*="-alert"],
.finder-site [class*="-notice"] {
    border-radius: var(--idtf-ui-radius) !important;
    text-shadow: none !important;
}

.finder-site .badge,
.finder-site [class*="-badge"],
.finder-site .booking-overline,
.finder-site .booking-kicker,
.finder-site .finder-centre-chip,
.finder-site .loc-chip,
.finder-site .tc-region-links a {
    border-radius: var(--idtf-ui-radius-sm) !important;
}

.finder-site-header {
    box-shadow: 0 1px 5px rgba(25, 23, 19, .06) !important;
}

.finder-site .finder-nav,
.finder-site .hub-chip,
.finder-site [class*="glass"] {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.finder-site .finder-nav-cta {
    border-radius: 8px !important;
    box-shadow: none !important;
}

.finder-site .finder-nav-cta:hover,
.finder-site .finder-button:hover,
.finder-site .btn:hover,
.finder-site .booking-plan-card:hover,
.finder-site .finder-plan-card:hover,
.finder-site .finder-steps article:hover,
.finder-site .finder-resource-grid > a:hover,
.finder-site .tc-resource-card:hover,
.finder-site .tc-link:hover,
.finder-site .blog-card:hover,
.finder-site .related-card:hover,
.finder-site .hub-card:hover,
.finder-site .loc-card:hover {
    box-shadow: none !important;
    transform: none !important;
}

.finder-site .finder-centre-search .container,
.finder-site .finder-date-story .container,
.finder-site .finder-steps article,
.finder-site .finder-plan-card,
.finder-site .finder-plan-featured,
.finder-site .finder-clarity-list article,
.finder-site .finder-resource-grid > a,
.finder-site .finder-faq-section .container,
.finder-site .finder-final-cta .container {
    border-radius: var(--idtf-ui-radius-lg) !important;
    box-shadow: none !important;
}

.finder-site .tc-hero,
.finder-site .hub-hero,
.finder-site .loc-hero,
.finder-site .blog-hero,
.finder-site .post-hero,
.finder-site .nr-hero,
.finder-site .finder-legal-hero,
.finder-site .editorial-hero,
.finder-site .tc-cta,
.finder-site .hub-final-cta,
.finder-site .loc-final-cta {
    background-image: none !important;
    text-shadow: none !important;
}

.finder-site .tc-cta-btn,
.finder-site .hub-cta-btn,
.finder-site .loc-cta-btn,
.finder-site .booking-plan-cta,
.finder-site .cta-button {
    background-image: none !important;
    box-shadow: none !important;
}

.finder-site .finder-centre-searchbar,
.finder-site .finder-centre-option,
.finder-site .finder-date-track,
.finder-site .finder-faq-list {
    border-radius: var(--idtf-ui-radius) !important;
}

.page-home .finder-hero h1 {
    max-width: 840px !important;
    font-size: clamp(46px, 5.2vw, 70px) !important;
    font-weight: 750 !important;
    letter-spacing: -.04em !important;
    line-height: 1.02 !important;
}

.page-home .finder-hero h1 em {
    display: inline;
}

.page-home .finder-section-heading h2,
.page-home .finder-clarity-grid h2,
.page-home .finder-final-cta h2 {
    font-size: clamp(30px, 3.7vw, 48px) !important;
    letter-spacing: -.03em !important;
}

.page-home .finder-centre-search-heading h2 {
    font-size: clamp(30px, 3.5vw, 44px);
}

.page-home.finder-site .finder-centre-searchbar input {
    font-family: var(--idtf-ui-font) !important;
    font-size: clamp(17px, 1.6vw, 21px) !important;
    font-weight: 500;
    letter-spacing: -.015em;
}

.page-home .finder-price strong {
    font-size: clamp(36px, 4vw, 48px) !important;
    font-weight: 750 !important;
}

.page-home .finder-resource-grid > a,
.page-home .finder-steps article {
    transition: border-color .15s ease, background-color .15s ease !important;
}

.finder-site .booking-title {
    max-width: 860px !important;
    font-size: clamp(38px, 5vw, 60px) !important;
    font-weight: 750 !important;
    letter-spacing: -.035em !important;
    line-height: 1.05 !important;
}

.finder-site .booking-plan-card,
.finder-site .booking-form-shell,
.finder-site .booking-summary-shell,
.finder-site .checkout-card,
.finder-site .order-summary {
    border-radius: var(--idtf-ui-radius-lg) !important;
    box-shadow: none !important;
    transform: none !important;
}

.finder-site .booking-plan-price,
.finder-site .checkout-price,
.finder-site .price-amount {
    font-weight: 750 !important;
    letter-spacing: -.03em !important;
}

.finder-site .post-content,
.finder-site .finder-legal-content,
.finder-site .editorial-content {
    font-family: var(--idtf-ui-font) !important;
}

.finder-site .post-content h2,
.finder-site .post-content h3,
.finder-site .finder-legal-content h2,
.finder-site .editorial-content h2 {
    font-family: var(--idtf-ui-font) !important;
    font-weight: 700 !important;
}

.finder-site [style*="gradient"],
.finder-site .monitoring-activity-card,
.finder-site .success-panel,
.finder-site .details-panel {
    background-image: none !important;
}

.finder-site [class*="floating"],
.finder-site [class*="pulse"],
.finder-site [class*="shimmer"] {
    animation: none !important;
}

.page-home .finder-hero-intro,
.page-home .finder-centre-search,
.page-home .finder-date-story,
.page-home .finder-date-track img {
    animation: none !important;
    transform: none !important;
}

@media (prefers-reduced-motion: no-preference) {
    .finder-site .finder-nav-cta,
    .finder-site .finder-button,
    .finder-site .btn,
    .finder-site a,
    .finder-site button {
        transition-duration: .15s !important;
    }
}

@media (max-width: 767px) {
    .page-home .finder-hero h1 {
        font-size: clamp(40px, 11vw, 56px) !important;
    }

    .finder-site .booking-title {
        font-size: clamp(36px, 10vw, 50px) !important;
    }
}
