/*
Theme Name: Fintrovert Child
Template: generatepress
Description: Editorial child theme for fintrovert.com (GeneratePress 3.6.1 parent).
Version: 1.4.1
Requires at least: 6.3
Requires PHP: 7.4
Text Domain: fintrovert-child
License: GPL-2.0-or-later
*/
@font-face{font-family:'Newsreader';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/newsreader-400.woff2) format('woff2')}
@font-face{font-family:'Newsreader';font-style:normal;font-weight:600 700;font-display:swap;src:url(assets/fonts/newsreader-600.woff2) format('woff2')}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:400;font-display:swap;src:url(assets/fonts/public-sans-400.woff2) format('woff2')}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:500;font-display:swap;src:url(assets/fonts/public-sans-500.woff2) format('woff2')}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:600;font-display:swap;src:url(assets/fonts/public-sans-600.woff2) format('woff2')}
@font-face{font-family:'Public Sans';font-style:normal;font-weight:700;font-display:swap;src:url(assets/fonts/public-sans-700.woff2) format('woff2')}
:root{--ink:#1B1F23;--paper:#FAF7F2;--muted:#575C63;--rule:#D9D3C7;--green:#1F5A44;--green-tint:#E7EFEA;--rust:#A4431F;--white:#fff;--serif:'Newsreader',Georgia,serif;--sans:'Public Sans',system-ui,sans-serif;--max:1180px}
/* base (mobile first) */
body{background:var(--paper);color:var(--ink);font:400 1.0625rem/1.6 var(--sans)}
img{max-width:100%;height:auto}
a{color:var(--green);text-underline-offset:3px}a:hover{color:var(--ink)}
:focus-visible{outline:3px solid var(--rust);outline-offset:2px}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.15;letter-spacing:-.01em;color:var(--ink);margin:0 0 .5em}
h1{font-size:clamp(2.1rem,6vw,3.6rem)}h2{font-size:clamp(1.5rem,3.5vw,2.1rem)}h3{font-size:1.3rem}
.fc-wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.kicker{font:600 .78rem/1 var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rust);margin:0 0 .9rem}
.meta,.fc-meta{font:500 .85rem var(--sans);color:var(--muted)}
.btn{display:inline-block;font:600 .95rem var(--sans);background:var(--green);color:#fff;padding:12px 20px;text-decoration:none;border-radius:2px}
.btn:hover{background:var(--ink);color:#fff}
.btn-ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}
/* GP containers */
.site,.separate-containers .inside-article,.separate-containers .site-main>*,.one-container .container,.site-content{background:var(--paper)}
.separate-containers .inside-article,.one-container .site-content{padding:0}
/* header */
.site-header{background:var(--paper);border-bottom:1px solid var(--ink)}
.inside-header{padding:14px 20px}
.main-title{margin:0;line-height:0}.main-title a{display:inline-block}
.main-title img{width:auto;height:34px}
.main-navigation,.main-navigation ul ul{background:var(--paper)}
.main-navigation .main-nav ul li a{font:500 .95rem var(--sans);color:var(--ink);padding-left:0;padding-right:0;margin-right:22px;line-height:44px}
.main-navigation .main-nav ul li a:hover,.main-navigation .main-nav ul li[class*=current-menu-] > a{color:var(--green);box-shadow:inset 0 -2px var(--green);background:transparent}
.menu-toggle{font:600 .95rem var(--sans);color:var(--ink)}
/* home */
.fc-hero{padding:48px 0 40px;border-bottom:1px solid var(--rule)}
.fc-hero .lede{font:400 1.25rem/1.5 var(--serif);max-width:36ch}
.fc-section{padding:48px 0;border-bottom:1px solid var(--rule)}
.fc-section-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:24px;flex-wrap:wrap}.fc-section-head h2{margin:0}
.hubs{display:grid;border-top:1px solid var(--ink)}
.hub{display:block;padding:22px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.hub .num{font:600 .8rem var(--sans);color:var(--rust);letter-spacing:.08em}
.hub h3{margin:.3em 0 .25em;font-size:1.55rem}.hub:hover h3{color:var(--green)}
.hub p{margin:0;color:var(--muted);font-size:.98rem}
.features{display:grid;gap:28px}
.card{border-top:1px solid var(--ink);padding-top:16px}
.card h3{font-size:1.4rem}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{color:var(--green)}
.card .thumb{display:block;aspect-ratio:16/9;background:var(--green-tint);margin-bottom:16px;overflow:hidden}
.card .thumb img{width:100%;height:100%;object-fit:cover}
/* footer */
.site-footer,.site-info,.footer-widgets{background:var(--paper);color:var(--muted);font-size:.9rem}
.site-info{border-top:1px solid var(--rule)}.site-footer a{color:var(--ink)}
.widget-title{font:600 .78rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin:0 0 10px}
/* article */
.single .entry-header{max-width:780px;padding-top:40px}
.single .entry-title{margin-bottom:.4em}
.rank-math-breadcrumb,.fc-crumbs{font:500 .85rem var(--sans);margin-bottom:18px}.rank-math-breadcrumb a{color:var(--muted)}
.byline{display:flex;gap:12px;align-items:center;font-size:.92rem;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:12px 0;margin:16px 0 24px;flex-wrap:wrap;min-height:66px}
.byline img,.bio img{border-radius:50%;flex:none}
.byline .updated-label{color:var(--muted)}
.single .entry-content{max-width:680px;font:400 1.17rem/1.7 var(--serif)}
.single .entry-content h2{margin-top:1.8em;font-size:1.85rem}.single .entry-content h3{margin-top:1.4em;font-size:1.35rem}
.entry-content table{width:100%;border-collapse:collapse;font:400 .95rem var(--sans)}
.entry-content th,.entry-content td{text-align:left;padding:9px 8px;border:0;border-bottom:1px solid var(--rule)}.entry-content th{border-bottom:2px solid var(--ink)}
.entry-content blockquote{border-left:3px solid var(--rust);font-style:normal}
.post-image,.featured-image{aspect-ratio:16/9;overflow:hidden;background:var(--green-tint)}
.bio{display:flex;gap:16px;border-top:3px solid var(--ink);padding-top:20px;margin-top:40px;max-width:680px;font:400 .98rem/1.6 var(--sans)}
.bio .bio-name{font:600 1.25rem var(--serif);margin:0 0 .3em}
/* hubs = category archives */
.archive .page-header{padding:40px 0 24px;border-bottom:3px solid var(--ink);margin-bottom:24px;background:transparent}
.archive .taxonomy-description{font:400 1.2rem/1.5 var(--serif);color:var(--muted);max-width:60ch}
.archive .inside-article,.blog .inside-article{border-top:1px solid var(--ink);padding-top:16px}
.archive .entry-title,.blog .entry-title{font-size:1.4rem}.archive .entry-title a,.blog .entry-title a{color:var(--ink);text-decoration:none}
.archive .entry-summary{color:var(--muted);font-size:.98rem}
@media(min-width:760px){.hubs{grid-template-columns:repeat(2,1fr);column-gap:40px}}
@media(min-width:1000px){.hubs{grid-template-columns:repeat(4,1fr);column-gap:28px}.hub{border-bottom:0}.features{grid-template-columns:2fr 1fr 1fr}.fc-hero{padding:80px 0 64px}.card.lead h3{font-size:2.2rem}}
/* v1.1.0 QA fixes */
.no-sidebar .site-content .content-area{width:100%}
.fc-article .site-content .content-area,.fc-article .inside-article{max-width:720px;margin-left:auto;margin-right:auto}
.single .entry-header,.single .entry-content,.bio{max-width:720px}
.fc-wide .site-content .content-area{max-width:var(--max);margin:0 auto}
@media(max-width:767px){.fc-article .inside-article{padding:0 20px}.fc-article .site-content{padding:0}}
.byline .sep{color:var(--muted)}
.byline{gap:8px 10px}
.site-logo img{width:auto;height:34px}
.features{grid-template-columns:1fr}
@media(min-width:760px){.features{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1000px){.features{grid-template-columns:repeat(3,1fr)}.card.lead{grid-column:span 2}}
.fc-hub-head{padding:40px 0 24px;border-bottom:3px solid var(--ink);margin-bottom:28px}
.fc-hub-head .taxonomy-description{font:400 1.2rem/1.5 var(--serif);color:var(--muted);max-width:60ch}
.fc-pager{padding:32px 0;font:500 .95rem var(--sans)}.fc-pager .page-numbers{margin-right:12px}
.fc-empty{color:var(--muted)}
.fc-footer-hubs{display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:center;margin-bottom:8px}
.fc-footer-hubs a,.fc-footer-hubs span{font:500 .92rem var(--sans);color:var(--ink)}
.fc-copy{display:block;text-align:center}
.copyright-bar{width:100%}
.card .card-title{font-size:1.4rem}.card .card-title a{color:var(--ink);text-decoration:none}.card .card-title a:hover{color:var(--green)}
/* v1.3.0 tools, news strip, nav */
.tools{display:grid;gap:0;border-top:1px solid var(--ink)}
.tool{display:block;padding:20px 0;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}
.tool h3{font-size:1.3rem;margin:0 0 .25em}.tool:hover h3{color:var(--green)}
.tool p{margin:0;color:var(--muted);font-size:.95rem}
.fc-news{background:var(--green-tint);padding:28px 0;border-bottom:1px solid var(--rule)}
.fc-news-in{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px}
.fc-news .kicker{margin:0}.fc-news-text{margin:0;flex:1 1 280px;font:400 1.1rem/1.5 var(--serif)}
@media(min-width:760px){.tools{grid-template-columns:repeat(2,1fr);column-gap:40px}}
@media(min-width:1000px){.tools{grid-template-columns:repeat(4,1fr);column-gap:28px}.tool{border-bottom:0}}
/* GP primary nav: 7 items fit on desktop; mobile toggle unchanged */
@media(min-width:769px){
.main-navigation .main-nav>ul{display:flex;flex-wrap:nowrap}
.main-navigation .main-nav>ul>li>a{white-space:nowrap}
}
@media(min-width:769px) and (max-width:1100px){.main-navigation .main-nav ul li a{margin-right:14px;font-size:.88rem}}
/* v1.4.0 link boxes, 12-tool grid, dropdown */
.tools .tool h3{font-size:1.1rem}
@media(min-width:1000px){.tools{row-gap:8px}.tool{border-bottom:1px solid var(--rule)}}
.fc-box{border-top:3px solid var(--ink);margin:40px 0 0;padding-top:14px;max-width:720px;font:400 1rem/1.5 var(--sans)}
.fc-box-title{font:600 .78rem var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--rust);margin:0 0 8px}
.fc-box ul{list-style:none;margin:0;padding:0}.fc-box li{border-bottom:1px solid var(--rule);padding:9px 0;margin:0}
.fc-box a{color:var(--ink);text-decoration:none}.fc-box a:hover{color:var(--green);text-decoration:underline}
/* GP primary-menu dropdown */
.main-navigation ul ul{background:var(--paper);box-shadow:0 8px 24px rgba(27,31,35,.12);border-top:2px solid var(--green);width:240px}
.main-navigation .main-nav ul ul li a{margin:0;padding:10px 16px;line-height:1.35;font-size:.92rem;white-space:normal;box-shadow:none}
.main-navigation .main-nav ul ul li a:hover,.main-navigation .main-nav ul ul li[class*=current-menu-]>a{background:var(--green-tint);box-shadow:none}
.main-navigation .dropdown-menu-toggle{padding-left:6px}
@media(max-width:768px){
.main-navigation.toggled .main-nav ul ul{width:100%;box-shadow:none;border-top:0;border-left:2px solid var(--rule);margin-left:12px}
.main-navigation.toggled .main-nav li a{line-height:48px;margin-right:0}
.main-navigation.toggled .main-nav ul ul li a{padding:0 12px;line-height:44px}
.main-navigation.toggled .main-nav>ul{display:block}
}
/* v1.4.1 footer menu */
.fc-footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 40px;margin-bottom:10px}
.fc-footer-hubs{margin-bottom:0}
.fc-footer-menu{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px}
.fc-footer-menu li{margin:0}.fc-footer-menu a{font:400 .92rem var(--sans);color:var(--muted)}
.fc-footer-menu a:hover{color:var(--green)}
/* v1.4.1 mobile overflow */
.entry-content{overflow-wrap:break-word;word-wrap:break-word}
.entry-content a{overflow-wrap:anywhere}
.entry-content img,.entry-content iframe,.entry-content video,.entry-content embed,.entry-content object,.entry-content figure,.entry-content [class*="wp-block-"],.entry-content [style*="width"]{max-width:100%!important}
.entry-content img,.entry-content video,.entry-content figure{height:auto}
.entry-content table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.entry-content .wp-block-table,.entry-content .tablepress-table-wrap,.entry-content .dataTables_wrapper{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.entry-content .wp-block-table table{display:table;min-width:100%}
.entry-content pre{overflow-x:auto;white-space:pre}
@media(max-width:768px){.main-navigation.toggled .main-nav ul ul li a{line-height:1.35;padding:12px;white-space:normal}.menu-toggle,.menu-toggle:hover,.menu-toggle:focus{background:transparent}}
