/*
Theme Name: Right Click
Theme URI: https://rightclick.law/
Author: Right Click
Author URI: https://rightclick.law/
Description: Minimal Elementor-ready theme for Right Click — a legal operations platform. Based on a Hello Elementor style blank canvas so Elementor's page builder has no theme chrome to fight with. Ships with global typography, color tokens, and responsive styles baked in.
Version: 1.1.0
Tested up to: 6.7
Requires at least: 5.9
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rightclick
Tags: one-column, custom-colors, custom-menu, editor-style, featured-images, threaded-comments, translation-ready, blog
*/

/* ============================================================
   1. Minimal theme reset
   ============================================================ */
* { box-sizing: border-box; }

html {
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body {
    margin: 0;
    padding: 0;
    color: #333333;
    font-size: 15px;
    line-height: 1.7;
    font-weight: 400;
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    background: #FFFFFF;
}

img, video, svg {
    max-width: 100%;
    height: auto;
    display: block;
}

a { color: inherit; }

/* ============================================================
   2. Right Click homepage styles (matches the imported template)
   ============================================================ */

body,
.elementor-widget-text-editor,
.elementor-widget-heading,
.elementor-widget-button .elementor-button,
.elementor-widget-icon-list {
    font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

h1, h2, h3, h4, h5, h6 {
    color: #1A1A1A;
    font-weight: 500;
    letter-spacing: -0.005em;
    margin: 0 0 16px;
}

h1 { font-size: 38px; line-height: 1.15; }
h2 { font-size: 30px; line-height: 1.2; }
h3 { font-size: 22px; line-height: 1.3; }
h4 { font-size: 15px; line-height: 1.4; }

/* Sticky nav polish */
.rc-nav {
    transition: box-shadow 160ms ease;
}
.rc-nav.elementor-sticky--effects {
    box-shadow: 0 1px 0 #E0E0DC;
}

/* Nav links — tight spacing + hover */
.rc-nav-links a {
    transition: color 140ms ease;
}
.rc-nav-links a:hover {
    color: #1A1A1A !important;
}
.rc-nav-ctas a[href="#signin"]:hover {
    color: #1A1A1A !important;
}
.rc-nav-ctas a[href="#trial"]:hover {
    background: #1F3F2B !important;
}

/* Brand wordmark / custom logo container — sits inline */
.rc-brand .elementor-heading-title {
    margin: 0;
}
.rc-nav .custom-logo-link img,
.rc-brand img {
    max-height: 32px;
    width: auto;
    display: block;
}

/* Buttons */
.elementor-button {
    font-family: "Inter", sans-serif;
    font-weight: 500;
    letter-spacing: 0;
    transition: background-color 140ms ease, color 140ms ease, border-color 140ms ease;
}

/* Pillar section spacing */
.rc-pillars-intro h2 {
    max-width: 500px;
}

/* Trust strip: tight vertical alignment */
.rc-trust .elementor-column {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Pricing cards */
.rc-pricing .elementor-icon-list-items .elementor-icon-list-item {
    padding: 0;
    margin-bottom: 10px;
}
.rc-pricing .elementor-icon-list-icon {
    width: 14px;
    height: 14px;
}

/* Testimonials / cards */
.rc-testimonials .elementor-column {
    transition: transform 200ms ease, box-shadow 200ms ease;
}
.rc-testimonials .elementor-column:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(26, 26, 26, 0.04);
}

/* Final CTA buttons — HTML flex pair, tight gap */
.rc-final-cta-buttons {
    gap: 16px;
}
.rc-final-cta-buttons a[href="#trial"]:hover {
    background: #1F3F2B !important;
    color: #FFFFFF !important;
}
.rc-final-cta-buttons a[href="#demo"]:hover {
    color: #1A1A1A !important;
    border-color: #1A1A1A !important;
}

/* Pricing — single-plan centered card */
.rc-pricing a[href="#trial"]:hover {
    background: #1F3F2B !important;
}
.rc-pricing .elementor-icon-list-text {
    color: #1A1A1A;
    font-weight: 400;
    font-size: 13px;
}

/* SVG mockup containers */
.elementor-widget-html svg {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Eyebrow labels */
.elementor-widget-heading .elementor-heading-title[style*="font-size:11px"] {
    letter-spacing: 0.1em;
    font-weight: 600;
}

/* ============================================================
   3. Responsive: tablet + mobile stacking
   ============================================================ */

@media (max-width: 1024px) {
    .rc-hero .elementor-column {
        width: 100% !important;
    }
    .rc-hero .elementor-widget-html {
        margin-top: 32px;
    }
}

@media (max-width: 767px) {
    h1 { font-size: 28px; line-height: 1.2; }
    h2 { font-size: 24px; }

    /* Trust strip: stack vertically, hide dividers */
    .rc-trust .elementor-inner-section .elementor-column:nth-child(even) {
        display: none;
    }
    .rc-trust .elementor-column {
        width: 100% !important;
        margin-bottom: 12px;
    }

    /* Pillars stack */
    .elementor-section.elementor-section-boxed > .elementor-container {
        flex-direction: column;
    }

    /* Pricing cards stack */
    .rc-pricing .elementor-inner-section .elementor-column {
        width: 100% !important;
        margin-bottom: 16px;
    }

    /* Testimonials stack */
    .rc-testimonials .elementor-inner-section .elementor-column {
        width: 100% !important;
        margin-bottom: 16px;
    }

    /* How-it-works steps stack */
    .rc-steps .elementor-column {
        width: 100% !important;
        margin-bottom: 40px;
    }

    /* Final CTA buttons: already centered flex, just make sure they wrap on mobile */
    .rc-final-cta-buttons {
        flex-direction: column;
        gap: 12px;
    }
    .rc-final-cta-buttons a {
        width: 100%;
        max-width: 280px;
        text-align: center;
    }

    /* Nav: stack vertically on mobile, links hidden (or inline menu) */
    .rc-nav-links {
        display: none !important;
    }
    .rc-nav-ctas {
        gap: 12px !important;
    }

    /* Pricing: single card full width */
    .rc-pricing .elementor-inner-section .elementor-column {
        width: 100% !important;
    }
}

/* ============================================================
   4. Basic fallback styles when a page isn't built in Elementor
   ============================================================ */
.rc-site-content {
    max-width: 1140px;
    margin: 0 auto;
    padding: 48px 24px;
}
.rc-site-content h1 { margin-top: 0; }
.rc-site-content p { margin: 0 0 1em; }
.rc-site-content a { color: #2D5A3D; text-decoration: underline; }
