/* Core Accounting Inc. — area landing pages (self-contained, brand-matched) */
:root{
  --navy:#122a4d; --blue:#8fb0ec; --navy-mid:#132040; --gold:#c9a84c; --gold-light:#e4c97e;
  --cream:#f5f0e8; --muted:rgba(245,240,232,0.62); --line:rgba(201,168,76,0.14);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Inter',sans-serif; background:var(--navy); color:var(--cream);
  line-height:1.6;
  background-image:
    radial-gradient(circle at 18% 12%, rgba(201,168,76,0.06), transparent 42%),
    radial-gradient(circle at 85% 75%, rgba(19,32,64,0.5), transparent 55%);
}
a{color:inherit; text-decoration:none;}
.wrap{max-width:1080px; margin:0 auto; padding:0 6%;}

/* header */
header{
  position:sticky; top:0; z-index:9999;
  display:flex; align-items:center; justify-content:space-between;
  padding:14px 6%; background:rgba(10,22,40,0.96); backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line);
}
.brand{display:inline-flex; align-items:center; gap:13px;}
.brand img{height:30px; width:auto; display:block;}
.brand .n{font-family:'Playfair Display',serif; font-size:1.4rem; font-weight:900; color:#fff; line-height:1.1; white-space:nowrap;}
.brand .i{font-size:0.58rem; font-weight:600; letter-spacing:0.2em; text-transform:uppercase; color:rgba(201,168,76,0.7);}
.hnav{display:flex; align-items:center; gap:26px;}
.hnav a{font-size:0.9rem; color:rgba(245,240,232,0.8);}
.hnav a:hover{color:var(--gold);}
.hnav .cta{background:var(--gold); color:var(--navy); padding:10px 20px; border-radius:6px; font-weight:600;}
.hnav .cta:hover{background:var(--gold-light);}
@media(max-width:760px){ .hnav a{display:none;} }

/* hero */
.hero{padding:84px 0 64px; text-align:center;}
.eyebrow{color:var(--gold); font-weight:600; letter-spacing:0.18em; text-transform:uppercase; font-size:0.78rem; margin-bottom:18px;}
.hero h1{font-family:'Playfair Display',serif; font-weight:900; font-size:clamp(2.1rem,6vw,3.6rem); line-height:1.05; color:#fff; letter-spacing:-0.02em;}
.hero h1 em{color:var(--gold); font-style:italic;}
.hero p{max-width:620px; margin:22px auto 32px; color:var(--muted); font-size:1.08rem;}
.btns{display:flex; gap:14px; justify-content:center; flex-wrap:wrap;}
.btn{padding:14px 28px; border-radius:6px; font-weight:600; font-size:0.92rem; transition:transform .15s ease, background .2s ease;}
.btn-p{background:var(--gold); color:var(--navy);}
.btn-p:hover{background:var(--gold-light); transform:translateY(-2px);}
.btn-g{border:1px solid rgba(201,168,76,0.4); color:var(--gold);}
.btn-g:hover{background:rgba(201,168,76,0.08); transform:translateY(-2px);}

/* sections */
section{padding:54px 0; border-top:1px solid rgba(255,255,255,0.05);}
section h2{font-family:'Playfair Display',serif; font-weight:700; font-size:clamp(1.5rem,4vw,2.2rem); color:#fff; margin-bottom:18px;}
section p{color:var(--muted); margin-bottom:14px; max-width:760px;}
section p strong{color:var(--cream);}

/* services grid */
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:16px; margin-top:26px;}
.card{background:rgba(255,255,255,0.03); border:1px solid var(--line); border-radius:10px; padding:24px; transition:border-color .2s ease, transform .15s ease;}
.card:hover{border-color:rgba(201,168,76,0.4); transform:translateY(-3px);}
.card h3{font-family:'Playfair Display',serif; color:var(--gold); font-size:1.15rem; margin-bottom:8px;}
.card p{font-size:0.92rem; margin-bottom:10px;}
.card a{color:var(--gold); font-size:0.85rem; font-weight:600;}
.card a:hover{color:var(--gold-light);}

/* areas served */
.chips{display:flex; flex-wrap:wrap; gap:10px; margin-top:22px;}
.chip{background:rgba(201,168,76,0.08); border:1px solid var(--line); color:var(--cream); padding:8px 16px; border-radius:30px; font-size:0.86rem;}

/* faq */
.faq{margin-top:26px;}
.faq .q{font-family:'Playfair Display',serif; color:#fff; font-size:1.12rem; font-weight:700; margin-top:24px;}
.faq .a{color:var(--muted); margin-top:6px;}

/* cta band */
.band{text-align:center; background:linear-gradient(180deg, rgba(19,32,64,0.6), rgba(10,22,40,0.2)); border-radius:14px; padding:48px 6%; margin:54px 0;}
.band h2{margin-bottom:12px;}

/* footer */
footer{background:#060e1a; border-top:1px solid var(--line); padding:48px 6% 30px;}
.fcols{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:28px; max-width:1080px; margin:0 auto 30px;}
.fcols h4{color:var(--gold); font-size:0.82rem; letter-spacing:0.12em; text-transform:uppercase; margin-bottom:14px;}
.fcols a, .fcols p{display:block; color:rgba(245,240,232,0.6); font-size:0.88rem; margin-bottom:9px;}
.fcols a:hover{color:var(--gold);}
.fbrand .n{font-family:'Playfair Display',serif; color:var(--gold); font-size:1.15rem; font-weight:900;}
.fbrand p{color:rgba(245,240,232,0.45); font-size:0.84rem; margin-top:10px;}
.fbottom{text-align:center; color:rgba(245,240,232,0.3); font-size:0.76rem; border-top:1px solid rgba(255,255,255,0.05); padding-top:22px; max-width:1080px; margin:0 auto;}
@media(max-width:760px){ .fcols{grid-template-columns:1fr 1fr;} }


/* ===== footer — match main site ===== */
.footer-grid { display: grid; grid-template-columns: 1.8fr 1fr 1fr 1fr; gap: 48px; margin-bottom: 48px; }
footer .logo { display: inline-flex; align-items: center; gap: 11px; margin-bottom: 30px; font-size: 1.15rem; text-decoration: none; }
footer .logo img { height: 28px; width: auto; display: block; }
footer .logo .fb-name { font-family: 'Playfair Display', serif; font-weight: 900; color: #fff; line-height: 1.1; }
.footer-brand p { font-size: 0.81rem; color: rgba(255,255,255,0.6); line-height: 1.7; margin-bottom: 20px; max-width: 360px; }
.footer-contact-row a { font-size: 0.82rem; color: var(--gold); text-decoration: none; }
.footer-contact-row a:hover { color: var(--gold-light); text-decoration: underline; }
.footer-col h4 { font-size: 0.68rem; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--gold); margin-bottom: 18px; }
.footer-col ul { list-style: none; padding: 0; margin: 0; }
.footer-col ul li { margin-bottom: 10px; }
.footer-col ul a { display: block; font-size: 0.81rem; color: rgba(255,255,255,0.6); text-decoration: none; }
.footer-col ul a:hover { color: var(--gold); }
.footer-bottom { padding-top: 28px; border-top: 1px solid rgba(255,255,255,0.05); display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 12px; }
.footer-bottom p { font-size: 0.75rem; color: rgba(255,255,255,0.3); }
.footer-bottom a { font-size: 0.75rem; color: rgba(255,255,255,0.3); text-decoration: none; }
.footer-bottom a:hover { color: rgba(255,255,255,0.6); }
@media(max-width:760px){ .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; } }


/* ===== Compact mobile footer (2-col, shorter) ===== */
@media (max-width: 600px) {
  footer[style] { padding-top: 42px !important; padding-bottom: 26px !important; }
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 26px 20px !important; margin-bottom: 32px !important; }
  .footer-brand { grid-column: 1 / -1 !important; }
  .footer-brand p { max-width: none !important; margin-bottom: 16px !important; font-size: 0.8rem !important; }
  footer .logo { margin-bottom: 20px !important; }
  .footer-col h4 { margin-bottom: 11px !important; }
  .footer-col ul li { margin-bottom: 7px !important; }
  .footer-bottom { padding-top: 22px !important; }
}
