/*
Theme Name: GrowthCraft Digital
Theme URI: https://example.com/growthcraft-digital
Author: GrowthCraft Digital
Author URI: https://example.com
Description: A modern luxury editorial WordPress theme for SEO, WordPress, content marketing, and digital growth blogs.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
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: growthcraft-digital
Tags: blog, news, education, custom-logo, custom-menu, featured-images, editor-style, full-width-template, threaded-comments
*/
:root {
  --gc-bg: #111211;
  --gc-panel: #191a18;
  --gc-panel-2: #20211f;
  --gc-text: #f4f1eb;
  --gc-muted: #aaa9a2;
  --gc-accent: #d5a45f;
  --gc-accent-light: #efc889;
  --gc-border: rgba(255,255,255,.12);
  --gc-width: 1180px;
  --gc-serif: Georgia, "Times New Roman", serif;
  --gc-sans: Inter, "Helvetica Neue", Arial, sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0; background: var(--gc-bg); color: var(--gc-text);
  font-family: var(--gc-sans); font-size: 16px; line-height: 1.75;
  -webkit-font-smoothing: antialiased;
}
body, button, input, textarea { font-family: var(--gc-sans); }
a { color: var(--gc-accent-light); text-decoration: none; transition: color .2s ease, opacity .2s ease; }
a:hover { color: #fff; }
img { max-width: 100%; height: auto; display: block; }
button, input, textarea { font-size: inherit; }
button, .button, input[type="submit"] {
  cursor: pointer; border: 1px solid var(--gc-accent); border-radius: 2px;
  padding: 12px 18px; background: var(--gc-accent); color: #151512; font-weight: 700;
}
input, textarea {
  width: 100%; padding: 13px 14px; border: 1px solid var(--gc-border);
  border-radius: 2px; background: #151614; color: var(--gc-text);
}
:focus-visible { outline: 2px solid var(--gc-accent-light); outline-offset: 3px; }
.gc-container { width: min(var(--gc-width), calc(100% - 44px)); margin-inline: auto; }
.gc-skip-link { position:absolute; left:-9999px; top:auto; }
.gc-skip-link:focus { left:15px; top:15px; z-index:9999; background:#fff; color:#111; padding:10px; }
.gc-site-header { border-bottom: 1px solid var(--gc-border); background: rgba(17,18,17,.94); position: relative; z-index: 20; }
.gc-header-inner { min-height: 86px; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.gc-brand { display:flex; align-items:center; gap:13px; min-width:0; }
.custom-logo { max-height: 48px; width:auto; }
.gc-brand-text { display:flex; flex-direction:column; line-height:1.15; }
.gc-brand-name { font-family:var(--gc-serif); font-size:24px; letter-spacing:-.6px; color:var(--gc-text); font-weight:700; }
.gc-brand-tagline { color:var(--gc-muted); font-size:10px; letter-spacing:2px; text-transform:uppercase; margin-top:7px; }
.gc-nav { display:flex; align-items:center; gap:26px; }
.gc-nav ul { display:flex; align-items:center; gap:25px; list-style:none; padding:0; margin:0; }
.gc-nav li { position:relative; }
.gc-nav a { color:#e9e5dd; font-size:12px; font-weight:700; letter-spacing:1px; text-transform:uppercase; }
.gc-nav a:hover, .gc-nav .current-menu-item > a { color:var(--gc-accent-light); }
.gc-nav .sub-menu { display:none; position:absolute; top:100%; left:0; min-width:210px; background:var(--gc-panel); padding:14px; border:1px solid var(--gc-border); }
.gc-nav li:hover > .sub-menu, .gc-nav li:focus-within > .sub-menu { display:block; }
.gc-nav .sub-menu li { padding:8px 0; }
.gc-nav-toggle { display:none; background:transparent; color:var(--gc-text); border:1px solid var(--gc-border); padding:8px 12px; }
.gc-header-cta { border:1px solid var(--gc-accent); padding:10px 14px; color:var(--gc-accent-light)!important; }
.gc-hero { padding:92px 0 75px; border-bottom:1px solid var(--gc-border); background:radial-gradient(ellipse at 80% 15%, rgba(213,164,95,.12), transparent 35%), linear-gradient(135deg,#111211 0%,#171815 100%); }
.gc-eyebrow { display:inline-flex; align-items:center; gap:10px; color:var(--gc-accent-light); text-transform:uppercase; font-size:11px; font-weight:700; letter-spacing:2.4px; }
.gc-eyebrow:before { content:""; width:26px; height:1px; background:var(--gc-accent); }
.gc-hero-grid { display:grid; grid-template-columns:1.2fr .8fr; gap:70px; align-items:center; }
.gc-hero h1 { max-width:760px; font-family:var(--gc-serif); font-size:clamp(42px,6vw,76px); line-height:1.03; letter-spacing:-2.5px; font-weight:400; margin:24px 0; }
.gc-hero h1 em { color:var(--gc-accent-light); font-weight:400; }
.gc-hero p { max-width:590px; color:#c2c0b8; font-size:17px; line-height:1.85; }
.gc-hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:30px; }
.gc-button { display:inline-flex; align-items:center; justify-content:center; gap:10px; background:var(--gc-accent); color:#171611; border:1px solid var(--gc-accent); padding:13px 20px; font-size:12px; text-transform:uppercase; font-weight:800; letter-spacing:1px; }
.gc-button:hover { background:var(--gc-accent-light); color:#171611; }
.gc-button-outline { background:transparent; color:var(--gc-text); border-color:var(--gc-border); }
.gc-button-outline:hover { border-color:var(--gc-accent); color:var(--gc-accent-light); background:transparent; }
.gc-hero-card { padding:28px; background:linear-gradient(145deg,#22231f,#151614); border:1px solid rgba(213,164,95,.34); position:relative; }
.gc-hero-card:before { content:""; position:absolute; inset:10px; border:1px solid rgba(255,255,255,.06); pointer-events:none; }
.gc-card-index { color:var(--gc-accent); font-size:11px; letter-spacing:2px; text-transform:uppercase; }
.gc-hero-card h2 { font:400 31px/1.2 var(--gc-serif); margin:22px 0 13px; }
.gc-hero-card p { font-size:14px; }
.gc-card-link { display:inline-block; margin-top:12px; font-size:11px; font-weight:800; letter-spacing:1.3px; text-transform:uppercase; }
.gc-stats { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--gc-border); margin-top:28px; padding-top:20px; gap:12px; }
.gc-stats strong { display:block; color:var(--gc-text); font:400 22px var(--gc-serif); }
.gc-stats span { display:block; color:var(--gc-muted); font-size:10px; text-transform:uppercase; letter-spacing:1px; }
.gc-section { padding:75px 0; }
.gc-section-alt { background:#151614; border-block:1px solid var(--gc-border); }
.gc-section-head { display:flex; justify-content:space-between; align-items:end; gap:24px; margin-bottom:30px; }
.gc-section-head h2 { font:400 clamp(30px,4vw,46px)/1.15 var(--gc-serif); margin:10px 0 0; letter-spacing:-1px; }
.gc-section-head p { max-width:430px; color:var(--gc-muted); margin:0; font-size:14px; }
.gc-post-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
.gc-post-card { min-width:0; background:var(--gc-panel); border:1px solid var(--gc-border); transition:transform .25s ease,border-color .25s ease; }
.gc-post-card:hover { transform:translateY(-4px); border-color:rgba(213,164,95,.55); }
.gc-post-image { aspect-ratio: 16/10; background:linear-gradient(135deg,#2a2b26,#171815); overflow:hidden; }
.gc-post-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.gc-post-card:hover .gc-post-image img { transform:scale(1.04); }
.gc-post-body { padding:22px; }
.gc-meta { display:flex; flex-wrap:wrap; gap:12px; color:var(--gc-muted); font-size:11px; text-transform:uppercase; letter-spacing:1px; }
.gc-category { color:var(--gc-accent-light); }
.gc-post-title { font:400 25px/1.25 var(--gc-serif); letter-spacing:-.4px; margin:13px 0 12px; }
.gc-post-title a { color:var(--gc-text); }
.gc-post-title a:hover { color:var(--gc-accent-light); }
.gc-excerpt { color:var(--gc-muted); font-size:14px; line-height:1.8; }
.gc-read-more { display:inline-block; margin-top:8px; color:var(--gc-accent-light); font-size:11px; font-weight:800; letter-spacing:1.2px; text-transform:uppercase; }
.gc-topic-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
.gc-topic { padding:24px 20px; border:1px solid var(--gc-border); background:linear-gradient(145deg,#1d1e1b,#151614); min-height:155px; }
.gc-topic-number { color:var(--gc-accent); font-size:11px; letter-spacing:1.5px; }
.gc-topic h3 { font:400 22px/1.2 var(--gc-serif); margin:17px 0 8px; }
.gc-topic p { color:var(--gc-muted); font-size:12px; margin:0; }
.gc-newsletter { display:grid; grid-template-columns:1fr .8fr; gap:40px; align-items:center; padding:42px; background:linear-gradient(115deg,#24251f,#171815); border:1px solid rgba(213,164,95,.28); }
.gc-newsletter h2 { font:400 36px/1.2 var(--gc-serif); margin:10px 0; }
.gc-newsletter p { color:var(--gc-muted); font-size:14px; }
.gc-newsletter-note { color:var(--gc-muted); font-size:11px; margin-top:10px; }
.gc-site-footer { border-top:1px solid var(--gc-border); padding:45px 0 25px; background:#0c0d0c; }
.gc-footer-top { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:40px; padding-bottom:35px; }
.gc-footer-about p { max-width:390px; color:var(--gc-muted); font-size:13px; }
.gc-footer-title { color:var(--gc-accent-light); text-transform:uppercase; font-size:11px; letter-spacing:1.8px; margin:5px 0 16px; }
.gc-footer-links { list-style:none; padding:0; margin:0; }
.gc-footer-links li { margin:8px 0; font-size:13px; }
.gc-footer-links a { color:#c8c6bf; }
.gc-footer-bottom { display:flex; justify-content:space-between; gap:20px; padding-top:20px; border-top:1px solid var(--gc-border); color:#85857f; font-size:11px; }
.gc-page-heading { padding:60px 0 35px; border-bottom:1px solid var(--gc-border); background:radial-gradient(ellipse at 80% 10%,rgba(213,164,95,.08),transparent 40%); }
.gc-page-heading h1 { font:400 clamp(38px,5vw,60px)/1.1 var(--gc-serif); margin:14px 0; }
.gc-page-heading p { color:var(--gc-muted); max-width:680px; }
.gc-content-layout { display:grid; grid-template-columns:minmax(0,1fr) 290px; gap:55px; padding:55px 0 80px; }
.gc-article { min-width:0; }
.gc-article-header { margin-bottom:30px; }
.gc-article-title { font:400 clamp(36px,5vw,58px)/1.12 var(--gc-serif); letter-spacing:-1.5px; margin:16px 0; }
.gc-article-featured { margin:25px 0 35px; }
.gc-article-featured img { width:100%; max-height:520px; object-fit:cover; }
.gc-prose { color:#d4d1c8; font-size:17px; line-height:1.9; }
.gc-prose h2,.gc-prose h3,.gc-prose h4 { color:var(--gc-text); font-family:var(--gc-serif); font-weight:400; line-height:1.25; margin-top:1.8em; }
.gc-prose h2 { font-size:34px; }
.gc-prose h3 { font-size:27px; }
.gc-prose blockquote { margin:28px 0; padding:6px 0 6px 22px; border-left:2px solid var(--gc-accent); color:#e7d2b1; font:italic 23px/1.55 var(--gc-serif); }
.gc-prose ul,.gc-prose ol { padding-left:25px; }
.gc-prose li { margin:7px 0; }
.gc-prose table { width:100%; border-collapse:collapse; }
.gc-prose td,.gc-prose th { border:1px solid var(--gc-border); padding:10px; }
.gc-sidebar-widget { padding:23px; border:1px solid var(--gc-border); background:var(--gc-panel); margin-bottom:22px; }
.gc-sidebar-widget h2,.gc-sidebar-widget h3 { font:400 23px var(--gc-serif); margin:0 0 15px; }
.gc-sidebar-widget ul { padding-left:18px; margin:0; color:var(--gc-muted); }
.gc-sidebar-widget li { margin:8px 0; }
.gc-pagination { display:flex; gap:8px; margin-top:35px; }
.gc-pagination .page-numbers { padding:9px 13px; border:1px solid var(--gc-border); }
.gc-pagination .current { background:var(--gc-accent); color:#111; }
.gc-search-form { display:flex; gap:8px; }
.gc-search-form label { flex:1; }
.gc-search-form input[type="submit"] { width:auto; }
.gc-empty { padding:35px; border:1px solid var(--gc-border); color:var(--gc-muted); }
.comment-list { padding-left:20px; }
.comment-body { border-bottom:1px solid var(--gc-border); padding:18px 0; }
.comment-form-comment label,.comment-form-author label,.comment-form-email label,.comment-form-url label { display:block; margin-bottom:7px; }
.alignwide { max-width:var(--gc-width); margin-left:auto; margin-right:auto; }
.alignfull { width:100%; max-width:none; }
.wp-block-image img { height:auto; }
.wp-block-button__link { background:var(--gc-accent); color:#171611; border-radius:2px; }
.wp-block-quote { border-left:2px solid var(--gc-accent); padding-left:20px; }
.wp-caption-text,.gallery-caption { color:var(--gc-muted); font-size:12px; }
.sticky { outline:1px solid rgba(213,164,95,.4); }
.screen-reader-text { clip:rect(1px,1px,1px,1px); clip-path:inset(50%); height:1px; overflow:hidden; position:absolute!important; width:1px; white-space:nowrap; }
@media (max-width: 980px) {
  .gc-hero-grid { grid-template-columns:1fr; gap:35px; }
  .gc-hero-card { max-width:650px; }
  .gc-post-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .gc-topic-grid { grid-template-columns:repeat(2,1fr); }
  .gc-content-layout { grid-template-columns:minmax(0,1fr) 240px; gap:30px; }
  .gc-nav ul { gap:15px; }
  .gc-header-cta { display:none; }
}
@media (max-width: 720px) {
  .gc-container { width:min(var(--gc-width),calc(100% - 30px)); }
  .gc-header-inner { min-height:72px; }
  .gc-brand-name { font-size:21px; }
  .gc-brand-tagline { font-size:8px; letter-spacing:1.5px; }
  .gc-nav-toggle { display:block; }
  .gc-nav { display:none; position:absolute; top:100%; left:0; right:0; background:#111211; border-bottom:1px solid var(--gc-border); padding:15px; }
  .gc-nav.is-open { display:block; }
  .gc-nav ul { display:flex; flex-direction:column; align-items:stretch; gap:0; }
  .gc-nav li { padding:10px 0; border-bottom:1px solid rgba(255,255,255,.06); }
  .gc-nav .sub-menu { display:block; position:static; border:0; padding:8px 0 0 15px; }
  .gc-hero { padding:60px 0 50px; }
  .gc-hero h1 { letter-spacing:-1.5px; }
  .gc-section { padding:52px 0; }
  .gc-section-head { align-items:start; flex-direction:column; }
  .gc-post-grid { grid-template-columns:1fr; }
  .gc-topic-grid { grid-template-columns:1fr 1fr; }
  .gc-newsletter { grid-template-columns:1fr; padding:26px; gap:15px; }
  .gc-newsletter h2 { font-size:30px; }
  .gc-footer-top { grid-template-columns:1fr; gap:25px; }
  .gc-footer-bottom { flex-direction:column; gap:6px; }
  .gc-content-layout { grid-template-columns:1fr; padding-top:35px; }
  .gc-article-title { letter-spacing:-.8px; }
  .gc-prose { font-size:16px; }
  .gc-prose h2 { font-size:29px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { transition-duration:.01ms!important; animation-duration:.01ms!important; }
}
