/*
Theme Name: BlogVTC Editorial
Theme URI: https://blogvtc.fr/
Author: Manus AI
Description: A clean, premium French VTC editorial theme inspired by the information architecture of modern VTC media sites.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: blogvtc
License: GNU General Public License v2 or later
*/
:root{--navy:#072f85;--navy-dark:#041f5a;--gold:#c69444;--gold-pale:#f3ddb9;--ink:#17233b;--text:#4a5568;--muted:#748198;--line:#e8edf3;--surface:#f7f9fc;--white:#fff;--container:1180px;--radius:5px;--shadow:0 10px 28px rgba(7,47,133,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--text);font-family:"Open Sans",Inter,Arial,sans-serif;line-height:1.7}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}a:hover{color:var(--gold)}button,input{font:inherit}.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link:focus{position:fixed;z-index:1000;top:10px;left:10px;width:auto;height:auto;padding:10px 16px;background:var(--gold);color:var(--navy);clip:auto}
.site-header{background:var(--white);position:relative;z-index:10;border-bottom:1px solid var(--line)}.utility{background:var(--navy);color:#fff;font-size:.78rem}.utility-inner{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:16px}.utility a{color:#fff}.utility-links{display:flex;gap:18px}.header-inner{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px;color:var(--navy);font-weight:800}.brand img{max-height:54px;width:auto}.brand-mark{display:grid;place-items:center;width:45px;height:45px;border:2px solid var(--gold);color:var(--navy);font-weight:900;font-size:1.2rem}.brand-text{font-size:1.35rem;letter-spacing:-.04em}.brand-text small{display:block;color:var(--gold);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.primary-nav ul{display:flex;align-items:center;gap:2px;list-style:none;margin:0;padding:0}.primary-nav a{display:block;color:var(--navy);font-size:.88rem;font-weight:700;padding:12px 10px}.primary-nav a:hover,.primary-nav .current-menu-item>a{color:var(--gold)}.header-tools{display:flex;align-items:center;gap:8px}.menu-toggle,.search-toggle{border:1px solid var(--line);background:#fff;color:var(--navy);padding:8px 11px;border-radius:var(--radius);cursor:pointer}.menu-toggle{display:none}.search-panel{display:none;background:var(--surface);border-top:1px solid var(--line);padding:16px 0}.search-panel.is-open{display:block}.search-form{display:flex;gap:8px}.search-form input{flex:1;border:1px solid #d6deea;border-radius:var(--radius);padding:11px 13px;background:#fff}.button{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--radius);background:var(--gold);color:#fff;font-weight:750;padding:11px 18px;cursor:pointer}.button:hover{background:var(--navy);color:#fff}.outline-button{border:1px solid var(--navy);color:var(--navy);background:#fff}
.breadcrumbs{background:var(--surface);border-bottom:1px solid var(--line);font-size:.78rem;color:var(--muted);padding:10px 0}.breadcrumbs a{color:var(--navy);font-weight:650}.breadcrumb-sep{margin:0 8px;color:#bcc5d1}.hero{background:linear-gradient(105deg,var(--navy-dark),var(--navy));color:#fff;padding:70px 0 78px;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;right:-100px;bottom:-180px;width:530px;height:530px;border:1px solid rgba(198,148,68,.45);border-radius:50%;box-shadow:0 0 0 30px rgba(198,148,68,.05),0 0 0 60px rgba(198,148,68,.035)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center;position:relative;z-index:1}.eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;font-weight:800}.hero h1{font-size:clamp(2.3rem,4.6vw,4rem);line-height:1.08;letter-spacing:-.045em;margin:12px 0 16px;color:#fff}.hero p{max-width:650px;color:#d9e2f2;font-size:1.1rem}.hero-card{background:#fff;color:var(--ink);padding:30px;border-radius:var(--radius);box-shadow:var(--shadow)}.hero-card h2{color:var(--navy);margin:0 0 8px;font-size:1.45rem}.hero-card p{color:var(--text);font-size:.95rem;margin:0}.hero-card .button{margin-top:20px}
.section{padding:64px 0}.section.alt{background:var(--surface)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:25px}.section-heading h2{margin:5px 0 0;color:var(--navy);font-size:clamp(1.7rem,3vw,2.35rem);line-height:1.15;letter-spacing:-.035em}.section-heading p{margin:0;color:var(--muted)}.link-arrow{color:var(--navy);font-size:.88rem;font-weight:750;white-space:nowrap}.featured-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:24px}.feature-card,.post-card,.story-card{border:1px solid var(--line);background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.feature-card{position:relative;min-height:420px;background:var(--navy)}.feature-card .thumb{display:block;height:100%;min-height:420px}.feature-card .thumb img{width:100%;height:100%;object-fit:cover;opacity:.78}.feature-card:after{content:"";position:absolute;inset:30% 0 0;background:linear-gradient(transparent,rgba(4,31,90,.95))}.feature-copy{position:absolute;z-index:1;bottom:24px;left:28px;right:28px;color:#fff}.feature-copy h3{font-size:clamp(1.55rem,3vw,2.35rem);line-height:1.15;margin:9px 0;color:#fff}.feature-copy .category-pill,.feature-copy .meta{color:#fff}.story-list{display:grid;gap:24px}.story-card{display:grid;grid-template-columns:145px 1fr}.story-card .thumb{min-height:145px}.story-card .thumb img{height:100%;width:100%;object-fit:cover}.story-copy{padding:18px}.story-copy h3,.post-card h3{color:var(--navy);font-size:1.17rem;line-height:1.3;margin:8px 0}.story-copy h3 a:hover,.post-card h3 a:hover{color:var(--gold)}.category-pill{color:var(--gold);text-transform:uppercase;letter-spacing:.1em;font-size:.69rem;font-weight:800}.meta{color:var(--muted);font-size:.75rem;display:flex;gap:9px;flex-wrap:wrap}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.post-card .thumb{display:block;aspect-ratio:16/10;background:#e9eef5}.post-card .thumb img{width:100%;height:100%;object-fit:cover}.post-card .story-copy{padding:21px}.post-card p{font-size:.9rem;line-height:1.55}.thumb-placeholder{width:100%;height:100%;min-height:120px;background:linear-gradient(135deg,#dfe7f2,#f5f7fb)}
.page-header{padding:48px 0 44px;background:var(--surface);border-bottom:1px solid var(--line)}.page-header h1{color:var(--navy);font-size:clamp(2.3rem,4.2vw,3.6rem);line-height:1.08;margin:10px 0 12px}.page-header p{max-width:760px;margin:0;color:var(--text)}.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:48px}.article{max-width:860px}.article-header h1{color:var(--navy);font-size:clamp(2.15rem,4.6vw,3.7rem);line-height:1.1;letter-spacing:-.04em;margin:10px 0 15px}.article-excerpt{font-size:1.13rem;color:var(--text)}.article-hero{margin:28px 0 34px}.article-hero img{width:100%;border-radius:var(--radius)}.article-content{font-size:1.05rem;line-height:1.85;color:#344054}.article-content h2,.article-content h3{color:var(--navy);line-height:1.25;margin-top:2em}.article-content a{color:var(--navy);text-decoration:underline;text-decoration-color:var(--gold);text-underline-offset:3px}.article-content blockquote{margin:1.5em 0;border-left:4px solid var(--gold);background:var(--surface);padding:16px 20px}.article-footer{border-top:1px solid var(--line);margin-top:36px;padding-top:22px}.share-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.share-links a{border:1px solid var(--line);border-radius:var(--radius);padding:7px 11px;color:var(--navy);font-size:.78rem;font-weight:700}.sidebar-box{background:var(--surface);border:1px solid var(--line);padding:22px;margin-bottom:20px;border-radius:var(--radius)}.sidebar-box h2,.sidebar-box h3{color:var(--navy);font-size:1.08rem;margin-top:0}.sidebar-box ul{list-style:none;padding:0;margin:0}.sidebar-box li{border-bottom:1px solid var(--line);padding:8px 0}.sidebar-box li:last-child{border-bottom:0}.pagination{display:flex;gap:8px;margin-top:30px}.pagination .page-numbers{display:grid;place-items:center;min-width:38px;height:38px;border:1px solid var(--line);border-radius:var(--radius);color:var(--navy);background:#fff}.pagination .current{background:var(--navy);color:#fff}.newsletter{background:var(--gold-pale);border-left:5px solid var(--gold);padding:34px 38px;display:flex;align-items:center;justify-content:space-between;gap:28px}.newsletter h2{color:var(--navy);margin:5px 0}.newsletter p{margin:0}.newsletter .search-form{min-width:min(100%,430px)}
.site-footer{background:var(--navy-dark);color:#d9e2f2;padding:54px 0 22px}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr 1fr;gap:34px}.site-footer h2,.site-footer h3{color:#fff;margin-top:0}.site-footer h2{font-size:1.5rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:6px 0}.site-footer a{color:#d9e2f2}.site-footer a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid rgba(255,255,255,.15);margin-top:36px;padding-top:17px;display:flex;justify-content:space-between;gap:12px;color:#afbdd1;font-size:.8rem}
@media(max-width:1050px){.primary-nav{display:none}.menu-toggle{display:block}.primary-nav.is-open{display:block;position:absolute;left:20px;right:20px;top:124px;background:#fff;padding:10px;border:1px solid var(--line);box-shadow:var(--shadow);z-index:20}.primary-nav.is-open ul{display:block}.primary-nav.is-open a{padding:12px}.hero-grid,.featured-grid{grid-template-columns:1fr}.hero-card{max-width:540px}.card-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.container{width:min(calc(100% - 28px),var(--container))}.utility-inner{min-height:30px}.utility-links{display:none}.header-inner{min-height:74px}.brand-text{font-size:1.1rem}.brand-text small{display:none}.search-toggle{font-size:0}.search-toggle:after{content:"⌕";font-size:1.1rem}.primary-nav.is-open{top:108px;left:14px;right:14px}.hero{padding:54px 0 62px}.hero h1{font-size:2.55rem}.section{padding:48px 0}.section-heading{display:block}.section-heading .link-arrow{display:inline-block;margin-top:11px}.story-card{grid-template-columns:105px 1fr}.story-card .thumb{min-height:120px}.story-copy{padding:14px}.story-copy h3{font-size:1rem}.card-grid{grid-template-columns:1fr}.content-layout{display:block}.sidebar{margin-top:28px}.newsletter{display:block;padding:26px 22px}.newsletter .search-form{margin-top:20px}.article-header h1{font-size:2.35rem}.article-content{font-size:1rem}.footer-grid{grid-template-columns:1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Cross-browser article-card visibility — 2026-08-18 */
.feature-card{display:flex;flex-direction:column;min-height:0;background:#fff}
.feature-card:after{display:none}
.feature-card .thumb{display:block;flex:0 0 auto;height:auto;min-height:0;aspect-ratio:16/10;background:#e9eef5}
.feature-card .thumb img{display:block;width:100%;height:100%;object-fit:cover;opacity:1}
.feature-copy{position:static;z-index:auto;color:var(--text);padding:22px 26px 26px;background:#fff}
.feature-copy h3{color:var(--navy);margin:9px 0 10px;font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.2}
.feature-copy h3 a{color:var(--navy)}
.feature-copy h3 a:hover{color:var(--gold)}
.feature-copy .category-pill,.feature-copy .meta{color:var(--muted)}
.post-card,.story-card{min-width:0}
.post-card .story-copy,.story-card .story-copy{display:block;min-width:0;background:#fff}
.post-card h3,.story-card h3{overflow-wrap:anywhere}
.post-card h3 a,.story-card h3 a{color:var(--navy)}
.post-card h3 a:hover,.story-card h3 a:hover{color:var(--gold)}
.post-card .thumb,.story-card .thumb{background:#e9eef5}
@media (min-width:681px) and (max-width:1050px){.featured-grid{gap:20px}.card-grid{gap:20px}.post-card .story-copy,.story-card .story-copy{padding:18px}.post-card h3,.story-card h3{font-size:1.08rem}.story-card{grid-template-columns:128px 1fr}.story-card .thumb{min-height:128px}}
@media (max-width:680px){.feature-copy{padding:18px 18px 21px}.feature-copy h3{font-size:1.35rem}.story-card{display:block}.story-card .thumb{display:block;min-height:0;aspect-ratio:16/10}.story-card .story-copy{padding:16px 17px 18px}.story-card h3{font-size:1.08rem;margin:8px 0}.post-card .story-copy{padding:17px 17px 19px}.post-card h3{font-size:1.08rem}.card-grid{gap:18px}.featured-grid{gap:18px}}
