/* ════════════════════════════════════════════════════════════════════════
   STYLE-ADVISORCRM.CSS — the ONE custom stylesheet for the AdvisorCRM
   public site. UPLOAD TO: public/css/style-yourfilecopy.css
   Load AFTER Bootstrap and the theme css in every public page:
     <link href="{{ asset('css/style-yourfilecopy.css') }}" rel="stylesheet">
   Brand palette (classy, industry-standard white background):
     dark green  #0A2540   dark blue  #1F2937   gold accent #8fbcbb
     pale green  #eef6f5   pale blue  #e7eff6   charcoal    #2c2c2a
   ════════════════════════════════════════════════════════════════════════ */

:root {
    --acrm-green-dark:  #0A2540;
    --acrm-green:       #0D9488;
    --acrm-blue-dark:   #1F2937;
    --acrm-blue:        #2a6f9e;
    --acrm-gold:        #8fbcbb;
    --acrm-pale-green:  #eef6f5;
    --acrm-pale-blue:   #e7eff6;
    --acrm-charcoal:    #2c2c2a;
    --acrm-mid:         #555555;
    --acrm-border:      #dbe4ec;
}

body.acrm {
    background: #ffffff;
    color: var(--acrm-charcoal);
    font-family: 'Lato', Helvetica, Arial, sans-serif;
}

/* ── Navigation — selectors use #mainNav to outrank the theme's ID rules ── */
#mainNav.acrm-nav { background: #ffffff !important; border-top: 5px solid var(--acrm-green-dark); border-bottom: 1px solid var(--acrm-border); box-shadow: 0 1px 6px rgba(0,0,0,0.05); padding-top: 14px; padding-bottom: 14px; }
#mainNav.acrm-nav .navbar-brand { color: var(--acrm-green-dark) !important; font-weight: 700; letter-spacing: 0.02em; font-size: 1.15rem; }
#mainNav.acrm-nav .navbar-brand span { color: var(--acrm-blue-dark); font-weight: 400; }
#mainNav.acrm-nav .nav-link { color: var(--acrm-charcoal) !important; font-size: 14px; font-weight: 600; letter-spacing: 0.03em; }
#mainNav.acrm-nav .nav-link:hover { color: var(--acrm-green) !important; }
#mainNav.acrm-nav .navbar-toggler { color: var(--acrm-green-dark) !important; border: 1px solid var(--acrm-border); font-size: 13px; padding: 6px 10px; }
.acrm-btn-cta { background: var(--acrm-green); color: #ffffff !important; border-radius: 6px; padding: 10px 22px; font-weight: 700; font-size: 13px; letter-spacing: 0.05em; text-transform: uppercase; text-decoration: none; border: none; }
.acrm-btn-cta:hover { background: var(--acrm-green-dark); }
.acrm-btn-outline { background: transparent; color: var(--acrm-blue-dark) !important; border: 1.5px solid var(--acrm-blue-dark); border-radius: 6px; padding: 9px 20px; font-weight: 700; font-size: 13px; letter-spacing: 0.05em; text-transform: uppercase; text-decoration: none; }
.acrm-btn-outline:hover { background: var(--acrm-pale-blue); }

/* ── Hero / masthead: LIGHT. White room, dark type, green punctuation. ── */
.acrm-hero { background: linear-gradient(170deg, #ffffff 0%, var(--acrm-pale-green) 100%); color: var(--acrm-charcoal); padding: 140px 0 70px; }
.acrm-hero h1 { font-family: Georgia, serif; font-weight: 400; font-size: 2.4rem; line-height: 1.3; color: var(--acrm-charcoal); }
.acrm-hero .acrm-hero-label { color: var(--acrm-green); font-size: 12px; font-weight: 700; letter-spacing: 0.18em; text-transform: uppercase; margin-bottom: 14px; }
.acrm-hero p.lead { color: var(--acrm-mid); font-size: 1.1rem; }

/* ── Sections ── */
.acrm-section { padding: 52px 0; }
.acrm-section-alt { background: var(--acrm-pale-green); }
.acrm-section-blue { background: var(--acrm-pale-blue); }
.acrm-section-label { color: var(--acrm-gold); font-size: 12px; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; }
.acrm-section h2 { font-family: Georgia, serif; font-weight: 400; color: var(--acrm-charcoal); margin: 8px 0 18px; }

/* ── Cards / feature boxes ── */
.acrm-card { background: #ffffff; border: 1px solid var(--acrm-border); border-radius: 12px; padding: 28px; box-shadow: 0 2px 10px rgba(0,0,0,0.04); }
.acrm-card .acrm-card-icon { font-size: 30px; color: var(--acrm-green); margin-bottom: 14px; }
.acrm-card h4 { font-size: 17px; font-weight: 700; color: var(--acrm-blue-dark); }
.acrm-card p { font-size: 14px; color: var(--acrm-mid); line-height: 1.65; margin: 0; }
.acrm-card-green { background: var(--acrm-pale-green); border-color: #d3e2ef; }
.acrm-card-blue { background: var(--acrm-pale-blue); border-color: #cfdfee; }

/* ── Footer ── */
.acrm-footer { background: var(--acrm-green-dark); color: rgba(255,255,255,0.75); padding: 44px 0 30px; font-size: 13px; }
.acrm-footer a { color: var(--acrm-gold); text-decoration: none; }
.acrm-footer a:hover { text-decoration: underline; }
.acrm-footer .acrm-footer-brand { color: #ffffff; font-weight: 700; font-size: 16px; }

/* ── Case-study cards (welcome page) ── */
.acrm-case-card { display: block; border-radius: 10px; padding: 18px 22px; font-weight: 700; font-size: 15px; text-align: center; text-decoration: none !important; border: 1px solid transparent; transition: transform .12s ease, box-shadow .12s ease; }
.acrm-case-card:hover { transform: translateY(-2px); box-shadow: 0 4px 14px rgba(0,0,0,0.08); }
.acrm-case-green { background: var(--acrm-pale-green); color: var(--acrm-green-dark) !important; border-color: #d3e2ef; }
.acrm-case-blue { background: var(--acrm-pale-blue); color: var(--acrm-blue-dark) !important; border-color: #cfdfee; }

/* ── CTA band ── */
.acrm-cta { background: linear-gradient(160deg, var(--acrm-blue-dark) 0%, var(--acrm-green-dark) 100%); color: #ffffff; padding: 42px 0; text-align: center; }
.acrm-cta h2 { font-family: Georgia, serif; font-weight: 400; font-size: 1.8rem; color: #ffffff; margin-bottom: 4px; }
.acrm-cta .btn { padding: 10px 26px !important; font-size: 13px !important; }

/* ── Contact strip ── */
.acrm-contact { background: var(--acrm-pale-blue); padding: 36px 0; text-align: center; }
.acrm-contact h2 { font-family: Georgia, serif; font-weight: 400; color: var(--acrm-blue-dark); margin-bottom: 22px; }
.acrm-contact .acrm-social-btn { display: inline-block; width: 52px; height: 52px; line-height: 52px; border-radius: 50%; background: var(--acrm-blue-dark); color: #ffffff !important; font-size: 20px; margin: 0 8px; text-align: center; }
.acrm-contact .acrm-social-btn:hover { background: var(--acrm-green); }

/* ── Hero overrides on top of the theme masthead (theme sets 100vh + its own gradient) ── */
header.masthead.acrm-hero { background: linear-gradient(170deg, #ffffff 0%, var(--acrm-pale-green) 100%) !important; height: auto !important; min-height: 0 !important; padding: 150px 0 70px !important; color: var(--acrm-charcoal); }
header.masthead.acrm-hero h1 { font-family: Georgia, serif; font-weight: 400; color: var(--acrm-charcoal) !important; font-size: 2.4rem; line-height: 1.3; }
/* Theme's .btn-outline is a white ghost button (invisible on a light hero) — make ours solid green */
header.masthead.acrm-hero .btn-outline,
.acrm-cta .btn-outline { background: var(--acrm-green) !important; border: 2px solid var(--acrm-green) !important; color: #ffffff !important; border-radius: 6px; font-weight: 700; letter-spacing: 0.05em; }
header.masthead.acrm-hero .btn-outline:hover { background: var(--acrm-green-dark) !important; border-color: var(--acrm-green-dark) !important; }
.acrm-cta .btn-outline { background: transparent !important; border-color: #ffffff !important; }
.acrm-cta .btn-outline:hover { background: rgba(255,255,255,0.12) !important; }
.acrm-section .feature-item i { color: var(--acrm-green) !important; }
.acrm-section .feature-item h3 { color: var(--acrm-blue-dark); font-size: 18px; font-weight: 700; }


/* ── Hero screenshot (replaces the old iPhone mockup) ── */
.acrm-hero-img { max-width: 380px; width: 100%; border-radius: 14px; box-shadow: 0 14px 40px rgba(10,37,64,0.18); border: 1px solid var(--acrm-border); }

/* ── Trust bar — dark credibility strip under the hero ── */
.acrm-trustbar { background: var(--acrm-green-dark); padding: 16px 0; }
.acrm-trustbar-inner { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 46px; }
.acrm-trust-item { color: #ffffff; font-size: 13.5px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; white-space: nowrap; }
.acrm-trust-item i { color: var(--acrm-gold); margin-right: 8px; }

/* ── Feature grid tightening (3-across, shorter page) ── */
.acrm-section .feature-item { max-width: 100%; padding: 18px 8px; }
.acrm-section .feature-item i { font-size: 42px !important; }


/* ── Product tour strip (Features section) ── */
.acrm-tour-card { background: #ffffff; border: 1px solid var(--acrm-border); border-radius: 10px; overflow: hidden; box-shadow: 0 2px 10px rgba(0,0,0,0.05); transition: transform .12s ease, box-shadow .12s ease; }
.acrm-tour-card:hover { transform: translateY(-3px); box-shadow: 0 8px 22px rgba(10,37,64,0.12); }
.acrm-tour-card img { width: 100%; display: block; aspect-ratio: 16 / 10; object-fit: cover; object-position: top; background: var(--acrm-pale-green); }
.acrm-tour-card p { margin: 0; padding: 10px 12px; font-size: 13px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; color: var(--acrm-blue-dark); text-align: center; border-top: 1px solid var(--acrm-border); }


/* ── Interior page header band (case studies, privacy, terms, demo) ── */
.acrm-pagehead { background: linear-gradient(170deg, #ffffff 0%, var(--acrm-pale-green) 100%); padding: 140px 0 40px; border-bottom: 1px solid var(--acrm-border); }
.acrm-pagehead h1 { font-family: Georgia, serif; font-weight: 400; font-size: 2.1rem; color: var(--acrm-charcoal); margin: 6px 0 0; }

/* ── Long-form prose (case studies, legal pages) ── */
.acrm-prose { font-size: 16px; line-height: 1.8; color: var(--acrm-mid); }
.acrm-prose h3 { font-family: Georgia, serif; font-weight: 400; color: var(--acrm-blue-dark); font-size: 1.3rem; margin: 28px 0 10px; }
.acrm-prose p { margin-bottom: 16px; }
.acrm-case-tag { color: var(--acrm-gold); font-size: 12px; font-weight: 700; letter-spacing: 0.15em; text-transform: uppercase; margin-bottom: 6px; }
.acrm-prose .content h3 { font-family: Georgia, serif; font-weight: 400; color: var(--acrm-blue-dark); font-size: 1.25rem; margin-top: 24px; }

/* ── Forms on brand pages ── */
.acrm .form-group label { font-weight: 700; font-size: 13px; letter-spacing: 0.04em; color: var(--acrm-blue-dark); text-transform: uppercase; }
.acrm .form-control { border: 1px solid var(--acrm-border); border-radius: 6px; padding: 10px 14px; }
.acrm .form-control:focus { border-color: var(--acrm-green); box-shadow: 0 0 0 3px rgba(13,148,136,0.12); }


/* ════ YourFileCopy front page — product-site components ════ */
/* Dark hero: deliberately opposite to AdvisorCRM's light hero */
.yfc-hero { background: linear-gradient(165deg, var(--acrm-green-dark) 0%, #1F2937 100%); color: #fff; padding: 150px 0 70px; text-align: center; }
.yfc-hero h1 { font-size: 3.4rem; font-weight: 800; letter-spacing: -0.02em; color: #fff; margin: 0 0 10px; }
.yfc-hero .yfc-hero-sub { font-size: 1.25rem; color: rgba(255,255,255,0.85); max-width: 640px; margin: 0 auto 28px; line-height: 1.6; }
.yfc-hero .yfc-hero-label { color: var(--acrm-gold); font-size: 12px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; margin-bottom: 16px; }
.yfc-hero .acrm-btn-cta { padding: 14px 34px; font-size: 14px; }
.yfc-hero .yfc-hero-note { color: rgba(255,255,255,0.6); font-size: 13px; margin-top: 14px; }

/* 3-step how it works */
.yfc-step { text-align: center; padding: 10px 18px; }
.yfc-step .yfc-step-num { width: 54px; height: 54px; line-height: 54px; border-radius: 50%; background: var(--acrm-pale-green); color: var(--acrm-green); font-size: 22px; font-weight: 800; margin: 0 auto 14px; }
.yfc-step h4 { font-size: 17px; font-weight: 700; color: var(--acrm-blue-dark); }
.yfc-step p { font-size: 14px; color: var(--acrm-mid); line-height: 1.65; }

/* FedEx-homage band */
.yfc-band { background: var(--acrm-pale-green); padding: 34px 0; text-align: center; }
.yfc-band p { font-size: 1.3rem; font-style: italic; color: var(--acrm-green-dark); margin: 0; }

/* Pricing */
.yfc-price-card { background: #fff; border: 1px solid var(--acrm-border); border-radius: 14px; padding: 30px 26px; text-align: center; height: 100%; display: flex; flex-direction: column; }
.yfc-price-card.yfc-featured { border: 2px solid var(--acrm-green); box-shadow: 0 12px 34px rgba(10,37,64,0.14); position: relative; }
.yfc-price-tag { position: absolute; top: -13px; left: 50%; transform: translateX(-50%); background: var(--acrm-green); color: #fff; font-size: 11px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; padding: 4px 14px; border-radius: 12px; }
.yfc-price-name { font-size: 13px; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--acrm-blue-dark); }
.yfc-price-amount { font-size: 2.6rem; font-weight: 800; color: var(--acrm-green-dark); margin: 8px 0 2px; }
.yfc-price-amount span { font-size: 1rem; font-weight: 400; color: var(--acrm-mid); }
.yfc-price-card ul { list-style: none; padding: 0; margin: 18px 0 22px; text-align: left; flex: 1; }
.yfc-price-card ul li { font-size: 14px; color: var(--acrm-mid); padding: 7px 0; border-bottom: 1px solid var(--acrm-pale-blue); }
.yfc-price-card ul li i { color: var(--acrm-green); margin-right: 8px; }


/* ════ v2 per branding notes: cat treatment, trust strip, story section ════ */
.yfc-trust { background: #0A2540; padding: 14px 0; }
.yfc-trust-inner { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px 42px; }
.yfc-trust-item { color: #fff; font-size: 13px; font-weight: 700; letter-spacing: 0.05em; text-transform: uppercase; white-space: nowrap; }
.yfc-trust-item i { color: #8fbcbb; margin-right: 8px; }

/* Header cat mark: small, circular, cool-graded */
.yfc-cat-mark { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; vertical-align: middle; margin-right: 10px; border: 2px solid #0A2540; }  /* treatment baked into the image itself */

/* Story section: cat below the fold, subordinated, treated */
.yfc-story-img { width: 100%; max-width: 340px; border-radius: 14px; box-shadow: 0 14px 40px rgba(10,37,64,0.25); position: relative; }  /* treatment baked into the image itself */
.yfc-story-imgwrap { position: relative; display: inline-block; }
/* overlay removed — the photo carries its own baked vignette */
.yfc-founder { display: flex; align-items: center; gap: 14px; margin-top: 22px; }
.yfc-founder img { width: 58px; height: 58px; border-radius: 50%; object-fit: cover; }
.yfc-founder .yfc-founder-name { font-weight: 700; color: #1F2937; font-size: 15px; margin: 0; }
.yfc-founder .yfc-founder-role { color: #0D9488; font-size: 13px; margin: 0; }
.yfc-happiness { font-size: 12px; color: #9aa5b1; font-style: italic; }