/* =====================================================
   VIDENT HOMEPAGE -- PAGE-SPECIFIC CSS
   Page: French homepage (/fr/)
   File target: css/pages/home-fr.css  (Site Assets Manager)
   Page Assets box -> Asset key: home-fr
   Loads ONLY on this page. Depends on the design tokens and
   reveal/cursor/button system defined once in css/global.css
   -- do not duplicate those here and do not add this file's
   selectors to global.css.
   Every selector below is namespaced under .vident-home-fr so it
   cannot leak onto, or be overridden by, another Elementor
   widget, the WP admin bar, or a future page.
===================================================== */

/* Page background / base typography, re-scoped from the
   original body{} rule (a wrapper <div> can't be targeted
   with a bare body selector). Cursor hiding now lives in
   global.css behind the .vd-cursor-on class instead of an
   unconditional body{cursor:none} -- see VALIDATION notes. */
.vident-home-fr{font-family:"Inter",sans-serif;background:var(--vd-soft);color:var(--vd-ink);overflow-x:hidden;line-height:1.65;}

:where(.vident-home-fr, .vident-home-fr *, .vident-home-fr *::before, .vident-home-fr *::after){margin:0;padding:0;box-sizing:border-box;}

/* Common */
.vident-home-fr .section{position:relative;padding:130px 72px;}

.vident-home-fr .section-kicker{display:inline-flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:700;color:var(--vd-base);margin-bottom:22px;}

.vident-home-fr .section-kicker::before{content:"";width:34px;height:1px;background:var(--vd-base);opacity:.55;}

.vident-home-fr .section-title{font-family:"Playfair Display",serif;font-size:clamp(38px,5vw,76px);line-height:1.02;letter-spacing:-.03em;font-weight:400;color:var(--vd-ink);}

.vident-home-fr .section-title em{color:var(--vd-base);font-style:italic;}

.vident-home-fr .section-sub{max-width:560px;color:var(--vd-muted);font-size:16px;font-weight:300;line-height:1.85;}

.vident-home-fr .section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:48px;margin-bottom:62px;}

/* =====================================================
 HERO
===================================================== */
.vident-home-fr .hero{min-height:100svh;position:relative;padding:42px 72px 40px;background:radial-gradient(circle at
80% 12%,rgba(199,164,106,.18),transparent 28%),radial-gradient(circle at 18%
18%,rgba(52,73,94,.13),transparent 26%),linear-gradient(135deg,#fbfbfa 0%,#eef3f5 56%,#f7f3ec
100%);overflow:hidden;display:flex;flex-direction:column;justify-content:center;}

.vident-home-fr .hero::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(52,73,94,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(52,73,94,.055)
1px,transparent 1px);background-size:68px 68px;mask-image:radial-gradient(circle at 45%
30%,black,transparent 70%);pointer-events:none;}

.vident-home-fr .hero-liquid{position:absolute;right:-140px;top:120px;width:520px;height:520px;background:linear-gradient(135deg,rgba(52,73,94,.15),rgba(199,164,106,.16));filter:blur(.2px);opacity:.8;animation:morph
9s ease-in-out infinite;}

@keyframes morph{0%,100%{border-radius:44% 56% 60% 40% / 46% 40% 60%
54%;transform:rotate(0deg)}50%{border-radius:60% 40% 42% 58% / 58% 62% 38%
42%;transform:rotate(8deg)}}

.vident-home-fr .hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.08fr)
minmax(360px,.92fr);gap:72px;align-items:center;}

.vident-home-fr .hero-brand{display:inline-flex;align-items:center;gap:14px;width:max-content;padding:9px
16px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid
rgba(52,73,94,.12);backdrop-filter:blur(18px);margin-bottom:36px;}

.vident-home-fr .hero-brand img{width:72px;height:auto;}

.vident-home-fr .hero-brand span{font-size:11px;letter-spacing:.24em;text-transform:uppercase;color:var(--vd-base);font-weight:700;}

.vident-home-fr .hero-title{font-family:"Playfair Display",serif;font-size:clamp(54px,7.2vw,116px);line-height:.93;letter-spacing:-.055em;font-weight:400;color:var(--vd-ink);max-width:920px;}

.vident-home-fr .hero-title em{font-style:italic;color:var(--vd-base);}

.vident-home-fr .hero-copy{margin-top:34px;display:grid;grid-template-columns:minmax(0,520px) auto;gap:34px;align-items:end;}

.vident-home-fr .hero-copy p{color:var(--vd-muted);font-size:16px;line-height:1.9;font-weight:300;}

.vident-home-fr .hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:40px;}

/* Hero Visual */
.vident-home-fr .hero-visual{position:relative;min-height:660px;}

.vident-home-fr .hero-photo{position:absolute;inset:44px 0 60px 54px;border-radius:42px;overflow:hidden;box-shadow:var(--vd-shadow);clip-path:inset(0 0 0 0 round 42px);}

.vident-home-fr .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center top;}

.vident-home-fr .hero-photo::after{content:"";position:absolute;inset:0;background:linear-gradient(to
top,rgba(52,73,94,.42),transparent 55%);}

.vident-home-fr .hero-glass{position:absolute;left:0;bottom:24px;width:310px;padding:22px;border-radius:26px;background:rgba(255,255,255,.74);border:1px solid rgba(255,255,255,.8);backdrop-filter:blur(26px);box-shadow:0 24px 60px rgba(52,73,94,.14);}

.vident-home-fr .hero-glass small{display:block;font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--vd-base);font-weight:800;margin-bottom:10px;}

.vident-home-fr .hero-glass strong{display:block;font-size:18px;color:var(--vd-ink);line-height:1.35;}

.vident-home-fr .hero-glass p{color:var(--vd-muted);font-size:13px;margin-top:8px;}

.vident-home-fr .hero-floating-card{position:absolute;right:6px;top:22px;width:250px;border-radius:24px;padding:20px;background:rgba(52,73,94,.9);color:white;box-shadow:0 26px 60px
rgba(52,73,94,.2);}

.vident-home-fr .hero-floating-card .num{font-family:"Playfair Display",serif;font-size:50px;line-height:1;color:var(--vd-gold-2);}

.vident-home-fr .hero-floating-card span{display:block;margin-top:8px;color:rgba(255,255,255,.76);font-size:13px;}

.vident-home-fr .hero-mini{position:absolute;right:0px;bottom:160px;display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:999px;background:white;box-shadow:0 20px
50px rgba(52,73,94,.12);border:1px solid var(--vd-line);}

.vident-home-fr .hero-mini-dot{width:10px;height:10px;border-radius:50%;background:#35b779;box-shadow:0 0 0 6px
rgba(53,183,121,.12);}

.vident-home-fr .hero-mini span{font-size:12px;font-weight:700;color:var(--vd-base);}

/* Hero Stats */
.vident-home-fr .hero-stats{position:relative;z-index:2;margin-top:54px;display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}

.vident-home-fr .hero-stat{padding:24px;border-radius:24px;background:rgba(255,255,255,.68);border:1px solid
rgba(52,73,94,.11);backdrop-filter:blur(20px);}

.vident-home-fr .hero-stat b{font-family:"Playfair Display",serif;display:block;font-size:36px;line-height:1;color:var(--vd-base);font-weight:500;}

.vident-home-fr .hero-stat span{display:block;margin-top:8px;color:var(--vd-muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;}

@keyframes marquee{to{transform:translateX(-50%)}}

/* Trust */
.vident-home-fr .trust{padding-top:100px;background:var(--vd-soft);}

.vident-home-fr .trust-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;}

.vident-home-fr .trust-card{border-radius:var(--vd-radius-xl);background:white;border:1px solid var(--vd-line);box-shadow:0
24px 70px rgba(52,73,94,.08);overflow:hidden;}

.vident-home-fr .trust-main{padding:52px;display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:end;}

.vident-home-fr .trust-main h2{font-family:"Playfair Display",serif;font-size:clamp(28px,3vw,44px);line-height:1.1;letter-spacing:-.03em;font-weight:400;}

.vident-home-fr .trust-main h2 em{color:var(--vd-base);font-style:italic;}

.vident-home-fr .trust-main p{color:var(--vd-muted);font-size:15px;line-height:1.85;}

.vident-home-fr .trust-side{display:grid;grid-template-columns:1fr;gap:18px;}

.vident-home-fr .trust-side-card{padding:34px;border-radius:var(--vd-radius-xl);background:linear-gradient(135deg,#fff,#eef3f5);border:1px solid var(--vd-line);}

.vident-home-fr .trust-side-card:nth-child(2){background:linear-gradient(135deg,var(--vd-base),var(--vd-base-2));color:white;}

.vident-home-fr .trust-side-card small{display:block;color:var(--vd-base);font-size:10px;text-transform:uppercase;letter-spacing:.24em;font-weight:800;margin-bottom:16px;}

.vident-home-fr .trust-side-card:nth-child(2) small{color:var(--vd-gold-2);}

.vident-home-fr .trust-side-card strong{display:block;font-size:22px;line-height:1.3;}

.vident-home-fr .trust-side-card p{color:var(--vd-muted);font-size:14px;margin-top:10px;}

.vident-home-fr .trust-side-card:nth-child(2) p{color:rgba(255,255,255,.66);}

/* Why */
.vident-home-fr .why{background:radial-gradient(circle at 90% 10%,rgba(199,164,106,.13),transparent 28%),var(--vd-cream);}

.vident-home-fr .why-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:86px;align-items:start;}

.vident-home-fr .why-sticky{position:sticky;top:80px;}

.vident-home-fr .why-image{border-radius:var(--vd-radius-xl);overflow:hidden;box-shadow:var(--vd-shadow);height:650px;}

.vident-home-fr .why-image img{width:100%;height:100%;object-fit:cover;object-position:center top;}

.vident-home-fr .why-note{margin-top:-96px;margin-left:32px;margin-right:32px;position:relative;z-index:2;padding:26px;border-radius:24px;background:rgba(255,255,255,.76);border:1px solid
rgba(255,255,255,.88);backdrop-filter:blur(24px);box-shadow:0 28px 70px rgba(52,73,94,.14);}

.vident-home-fr .why-note p{font-family:"Playfair Display",serif;font-style:italic;font-size:20px;line-height:1.45;color:var(--vd-ink);}

.vident-home-fr .why-note strong{display:block;margin-top:16px;font-size:13px;color:var(--vd-base);}

.vident-home-fr .why-list{margin-top:54px;display:grid;gap:14px;}

.vident-home-fr .why-item{display:grid;grid-template-columns:72px 1fr;gap:22px;padding:30px;border-radius:26px;background:rgba(255,255,255,.72);border:1px solid rgba(52,73,94,.1);backdrop-filter:blur(18px);transition:transform .35s var(--vd-ease),box-shadow .35s var(--vd-ease),border-color .35s var(--vd-ease);}

.vident-home-fr .why-item:hover{transform:translateY(-4px);box-shadow:0 24px 60px rgba(52,73,94,.1);border-color:rgba(52,73,94,.18);}

.vident-home-fr .why-num{font-family:"Playfair Display",serif;color:var(--vd-base);font-size:42px;line-height:1;}

.vident-home-fr .why-item h3{font-size:19px;color:var(--vd-ink);margin-bottom:8px;}

.vident-home-fr .why-item p{color:var(--vd-muted);font-size:14.5px;font-weight:300;}

/* Technology */
.vident-home-fr .tech{background:var(--vd-soft);}

.vident-home-fr .tech-bento{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;}

.vident-home-fr .tech-card{position:relative;min-height:270px;padding:36px;border-radius:var(--vd-radius-xl);background:white;border:1px solid var(--vd-line);box-shadow:0 26px 70px
rgba(52,73,94,.07);overflow:hidden;transition:transform .35s var(--vd-ease),box-shadow .35s var(--vd-ease);}

.vident-home-fr .tech-card:hover{transform:translateY(-5px);box-shadow:0 34px 90px rgba(52,73,94,.12);}

.vident-home-fr .tech-card::after{content:"";position:absolute;width:240px;height:240px;right:-90px;bottom:-120px;border-radius:50%;background:radial-gradient(circle,rgba(52,73,94,.12),transparent 70%);}

.vident-home-fr .tech-card.large{grid-column:span 5;}

.vident-home-fr .tech-card.mid{grid-column:span 4;}

.vident-home-fr .tech-card.small{grid-column:span 3;}

.vident-home-fr .tech-card.wide{grid-column:span 7;background:linear-gradient(135deg,var(--vd-base),var(--vd-base-2));color:white;}

.vident-home-fr .tech-card.wide p, .vident-home-fr .tech-card.wide .tech-label{color:rgba(255,255,255,.68);}

.vident-home-fr .tech-icon{width:54px;height:54px;border-radius:18px;background:rgba(52,73,94,.08);display:flex;align-items:center;justify-content:center;margin-bottom:26px;color:var(--vd-base);}

.vident-home-fr .tech-card.wide .tech-icon{background:rgba(255,255,255,.12);color:var(--vd-gold-2);}

.vident-home-fr .tech-icon svg{width:25px;height:25px;}

.vident-home-fr .tech-label{display:block;font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--vd-base);font-weight:800;margin-bottom:12px;}

.vident-home-fr .tech-card h3{font-size:22px;line-height:1.25;margin-bottom:14px;}

.vident-home-fr .tech-card p{color:var(--vd-muted);font-size:14px;font-weight:300;max-width:520px;}

.vident-home-fr .tech-pill{display:inline-flex;align-items:center;gap:8px;margin-top:24px;padding:8px 14px;border-radius:999px;background:rgba(199,164,106,.13);color:var(--vd-base);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;}

.vident-home-fr .tech-card.wide .tech-pill{background:rgba(255,255,255,.12);color:var(--vd-gold-2);}

/* Services */
.vident-home-fr .services{background:linear-gradient(180deg,var(--vd-soft),#ffffff 100%);}

.vident-home-fr .services-bento{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;opacity:1!important;}

.vident-home-fr .service-card{position:relative;min-height:280px;padding:34px;border-radius:var(--vd-radius-xl);background:white;border:1px solid var(--vd-line);box-shadow:0 26px 76px
rgba(52,73,94,.07);overflow:hidden;transition:transform .35s var(--vd-ease),box-shadow .35s var(--vd-ease),border-color .35s var(--vd-ease);opacity:1!important;}

.vident-home-fr .service-card:hover{transform:translateY(-6px);box-shadow:0 34px 95px rgba(52,73,94,.13);border-color:rgba(52,73,94,.2);}

.vident-home-fr .service-card.featured{grid-column:span 4;min-height:390px;background:linear-gradient(145deg,var(--vd-base),#496982);color:white;opacity:1!important;}

.vident-home-fr .service-card.standard{grid-column:span 4;opacity:1!important;}

.vident-home-fr .service-card.compact{grid-column:span 4;opacity:1!important;}

.vident-home-fr .service-card.half{grid-column:span 6;opacity:1!important;}

.vident-home-fr .service-card::before{content:"";position:absolute;inset:auto -80px -100px
auto;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,rgba(199,164,106,.16),transparent 70%);}

.vident-home-fr .service-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;position:relative;z-index:1;opacity:1!important;}

.vident-home-fr .service-no{color:var(--vd-base);font-size:11px;letter-spacing:.25em;text-transform:uppercase;font-weight:800;}

.vident-home-fr .service-card.featured .service-no{color:var(--vd-gold-2);}

.vident-home-fr .service-arrow{width:44px;height:44px;border-radius:50%;border:1px solid var(--vd-line);display:flex;align-items:center;justify-content:center;color:var(--vd-base);transition:background .35s var(--vd-ease),color .35s
var(--vd-ease),transform .35s var(--vd-ease);}

.vident-home-fr .service-card.featured .service-arrow{border-color:rgba(255,255,255,.22);color:white;}

.vident-home-fr .service-card:hover .service-arrow{background:var(--vd-base);color:white;transform:rotate(-12deg);}

.vident-home-fr .service-card.featured:hover .service-arrow{background:white;color:var(--vd-base);}

.vident-home-fr .service-card h3{position:relative;z-index:1;margin-top:0px;font-family:"Playfair Display",serif;font-size:clamp(27px,2.4vw,38px);line-height:1.08;font-weight:500;letter-spacing:-.03em;}

.vident-home-fr .service-card p{position:relative;z-index:1;margin-top:18px;color:var(--vd-muted);font-size:14px;font-weight:300;line-height:1.75;}

.vident-home-fr .service-card.featured p{color:rgba(255,255,255,.72);}

.vident-home-fr .service-price{position:absolute;left:34px;bottom:30px;color:var(--vd-base);font-size:13px;font-weight:800;}

.vident-home-fr .service-card.featured .service-price{color:var(--vd-gold-2);}

.vident-home-fr .service-card-link{position:absolute;inset:0;z-index:2;}

/* =====================================================
    GALLERY, Premium layout, images toutes visibles
    Grille masonry / éditoriale avec aspect-ratio fixe
    pour éviter tout crop involontaire
===================================================== */
.vident-home-fr .gallery{background:var(--vd-cream);overflow:hidden;}

/* Grille principale : 3 colonnes égales, images en contain */
.vident-home-fr .gallery-bento{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
}

.vident-home-fr .gallery-item{
    position:relative;
    border-radius:var(--vd-radius-xl);
    overflow:hidden;
    box-shadow:0 28px 70px rgba(52,73,94,.12);
    background:var(--vd-mist);
    /* Ratio fixe 4/3 pour que toutes les images soient entièrement visibles */
    aspect-ratio:4/3;
}

/* L'image occupe 100% du conteneur, object-fit:contain garantit l'affichage complet */
.vident-home-fr .gallery-item img{
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center center;
    transition:transform .9s var(--vd-ease);
    background:var(--vd-mist);
}

.vident-home-fr .gallery-item:hover img{transform:scale(1.04);}

/* Overlay informatif */
.vident-home-fr .gallery-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:28px;background:linear-gradient(to top,rgba(52,73,94,.72),transparent
55%);opacity:0;transition:opacity .35s var(--vd-ease);}

.vident-home-fr .gallery-item:hover .gallery-overlay, .vident-home-fr .gallery-item:focus-within .gallery-overlay{opacity:1;}

.vident-home-fr .gallery-overlay small{color:var(--vd-gold-2);font-size:10px;letter-spacing:.24em;text-transform:uppercase;font-weight:800;}

.vident-home-fr .gallery-overlay strong{color:white;margin-top:8px;font-size:19px;display:block;}

/* Strip scrollable en bas */
.vident-home-fr .gallery-strip{margin-top:22px;display:flex;gap:16px;overflow-x:auto;scrollbar-width:none;padding-bottom:8px;}

.vident-home-fr .gallery-strip::-webkit-scrollbar{display:none;}

.vident-home-fr .gallery-thumb{flex:0 0 250px;height:180px;border-radius:24px;overflow:hidden;border:1px solid
rgba(52,73,94,.12);background:var(--vd-mist);}

.vident-home-fr .gallery-thumb img{width:100%;height:100%;object-fit:contain;object-position:center
center;background:var(--vd-mist);}

/* Team */
.vident-home-fr .team{background:var(--vd-soft);}

.vident-home-fr .team-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:22px;}

.vident-home-fr .team-feature{position:sticky;top:80px;align-self:start;border-radius:var(--vd-radius-xl);overflow:hidden;background:var(--vd-base);min-height:720px;box-shadow:0 32px 90px
rgba(52,73,94,.16);}

.vident-home-fr .team-feature img{width:100%;height:100%;min-height:720px;object-fit:cover;object-position:center
top;opacity:.92;}

.vident-home-fr .team-feature-info{position:absolute;left:28px;right:28px;bottom:28px;padding:26px;border-radius:26px;background:rgba(255,255,255,.76);border:1px solid rgba(255,255,255,.78);backdrop-filter:blur(26px);}

.vident-home-fr .team-feature-info small{color:var(--vd-base);font-size:10px;text-transform:uppercase;letter-spacing:.24em;font-weight:800;}

.vident-home-fr .team-feature-info h3{font-family:"Playfair Display",serif;font-size:34px;line-height:1.1;margin-top:10px;}

.vident-home-fr .team-feature-info p{color:var(--vd-muted);font-size:14px;margin-top:10px;}

.vident-home-fr .team-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;}

.vident-home-fr .team-card{border-radius:var(--vd-radius-xl);overflow:hidden;background:white;border:1px solid var(--vd-line);box-shadow:0 26px 70px rgba(52,73,94,.07);transition:transform .35s var(--vd-ease),box-shadow .35s
var(--vd-ease);}

.vident-home-fr .team-card:hover{transform:translateY(-5px);box-shadow:0 32px 90px rgba(52,73,94,.12);}

.vident-home-fr .team-card img{width:100%;aspect-ratio:4/4.35;object-fit:cover;object-position:center top;}

.vident-home-fr .team-card-info{padding:22px;}

.vident-home-fr .team-card-info h3{font-size:17px;line-height:1.25;}

.vident-home-fr .team-card-info p{margin-top:6px;color:var(--vd-muted);font-size:13px;}

/* Reviews */
.vident-home-fr .reviews{background:white;overflow:hidden;}

.vident-home-fr .review-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:18px;margin-bottom:34px;}

.vident-home-fr .review-feature{padding:44px;border-radius:var(--vd-radius-xl);background:linear-gradient(135deg,var(--vd-base),#506f86);color:white;box-shadow:0 32px 90px rgba(52,73,94,.16);}

.vident-home-fr .review-stars{color:var(--vd-gold-2);letter-spacing:3px;margin-bottom:26px;}

.vident-home-fr .review-feature blockquote{font-family:"Playfair Display",serif;font-size:clamp(30px,3.5vw,54px);line-height:1.12;letter-spacing:-.03em;}

.vident-home-fr .review-feature p{color:rgba(255,255,255,.72);margin-top:24px;max-width:600px;}

.vident-home-fr .review-side{display:grid;gap:18px;}

.vident-home-fr .review-card{padding:30px;border-radius:var(--vd-radius-xl);background:var(--vd-soft);border:1px solid var(--vd-line);}

.vident-home-fr .review-card-top{display:flex;align-items:center;gap:14px;margin-bottom:16px;}

.vident-home-fr .review-avatar{width:44px;height:44px;border-radius:50%;background:var(--vd-base);color:white;display:flex;align-items:center;justify-content:center;font-weight:800;}

.vident-home-fr .review-card h4{font-size:15px;}

.vident-home-fr .review-card span{font-size:12px;color:var(--vd-muted);}

.vident-home-fr .review-card p{color:var(--vd-muted);font-size:14px;}

.vident-home-fr .review-marquee{overflow:hidden;margin-top:40px;}

.vident-home-fr .review-marquee-track{display:flex;gap:14px;width:max-content;animation:marquee 42s linear infinite;}

.vident-home-fr .review-pill{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:13px 20px;border-radius:999px;background:var(--vd-soft);border:1px solid var(--vd-line);white-space:nowrap;color:var(--vd-base);font-size:13px;font-weight:700;}

.vident-home-fr .review-pill small{color:var(--vd-gold);}

/* FAQ */
.vident-home-fr .faq{background:var(--vd-cream);}

.vident-home-fr .faq-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start;}

.vident-home-fr .faq-left{position:sticky;top:90px;}

.vident-home-fr .faq-list{border-top:1px solid var(--vd-line);}

.vident-home-fr .faq-item{border-bottom:1px solid var(--vd-line);}

.vident-home-fr .faq-q{width:100%;background:transparent;border:none;padding:28px 0;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--vd-ink);text-align:left;font-size:18px;font-weight:700;}

.vident-home-fr .faq-icon{width:36px;height:36px;flex:0 0 36px;border-radius:50%;border:1px solid var(--vd-line);display:flex;align-items:center;justify-content:center;color:var(--vd-base);transition:transform .35s
var(--vd-ease),background .35s var(--vd-ease),color .35s var(--vd-ease);}

.vident-home-fr .faq-item.active .faq-icon{transform:rotate(45deg);background:var(--vd-base);color:white;}

.vident-home-fr .faq-a{max-height:0;overflow:hidden;transition:max-height .45s var(--vd-ease);}

.vident-home-fr .faq-a p{color:var(--vd-muted);font-size:15px;padding:0 56px 28px 0;}

/* Contact */
.vident-home-fr .contact{padding:120px 72px 130px;background:radial-gradient(circle at 20%
20%,rgba(199,164,106,.17),transparent 30%),linear-gradient(135deg,#edf3f5,#f7f3ec);position:relative;overflow:hidden;}

.vident-home-fr .contact-shell{position:relative;z-index:1;display:grid;grid-template-columns:1fr 450px;gap:28px;align-items:stretch;}

.vident-home-fr .contact-main{padding:64px;border-radius:42px;background:var(--vd-base);color:white;overflow:hidden;position:relative;}

.vident-home-fr .contact-main::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.15),transparent 65%);}

.vident-home-fr .contact-main small{position:relative;z-index:1;display:block;color:var(--vd-gold-2);font-size:11px;letter-spacing:.28em;text-transform:uppercase;font-weight:800;margin-bottom:22px;}

.vident-home-fr .contact-main h2{position:relative;z-index:1;font-family:"Playfair Display",serif;font-size:clamp(42px,5vw,84px);line-height:.98;letter-spacing:-.05em;font-weight:400;max-width:760px;}

.vident-home-fr .contact-main h2 em{font-style:italic;color:var(--vd-gold-2);}

.vident-home-fr .contact-main p{position:relative;z-index:1;max-width:560px;margin-top:26px;color:rgba(255,255,255,.72);font-weight:300;}

.vident-home-fr .contact-actions{position:relative;z-index:1;display:flex;flex-wrap:wrap;gap:14px;margin-top:38px;}

.vident-home-fr .contact-card{padding:34px;border-radius:42px;background:rgba(255,255,255,.78);border:1px solid
rgba(255,255,255,.86);backdrop-filter:blur(26px);box-shadow:0 32px 90px rgba(52,73,94,.14);}

.vident-home-fr .contact-card h3{font-family:"Playfair Display",serif;font-size:32px;font-weight:500;margin-bottom:24px;color:var(--vd-ink);}

.vident-home-fr .contact-info{display:grid;gap:16px;}

.vident-home-fr .contact-row{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:20px;background:rgba(255,255,255,.66);border:1px solid rgba(52,73,94,.08);}

.vident-home-fr .contact-icon{width:38px;height:38px;flex:0 0 38px;border-radius:14px;background:rgba(52,73,94,.1);display:flex;align-items:center;justify-content:center;color:var(--vd-base);}

.vident-home-fr .contact-row small{display:block;color:var(--vd-muted);font-size:10px;letter-spacing:.18em;text-transform:uppercase;font-weight:800;}

.vident-home-fr .contact-row strong{display:block;margin-top:4px;font-size:14px;color:var(--vd-ink);line-height:1.45;}

.vident-home-fr .contact-note{margin-top:22px;padding:18px;border-radius:22px;background:rgba(199,164,106,.12);color:#7a6135;font-size:13px;line-height:1.7;}

@media(max-width:1180px) {
.vident-home-fr .hero-grid, .vident-home-fr .trust-grid, .vident-home-fr .why-grid, .vident-home-fr .team-layout, .vident-home-fr .review-grid, .vident-home-fr .faq-grid, .vident-home-fr .contact-shell{grid-template-columns:1fr;}
.vident-home-fr .hero-visual{min-height:560px;}
.vident-home-fr .hero-stats{grid-template-columns:repeat(2,1fr);}
.vident-home-fr .trust-main{grid-template-columns:1fr;}
.vident-home-fr .why-sticky, .vident-home-fr .team-feature, .vident-home-fr .faq-left{position:relative;top:auto;}
.vident-home-fr .tech-card.large, .vident-home-fr .tech-card.mid, .vident-home-fr .tech-card.small, .vident-home-fr .tech-card.wide, .vident-home-fr .service-card.featured, .vident-home-fr .service-card.standard, .vident-home-fr .service-card.compact, .vident-home-fr .service-card.half{grid-column:span 6;}
.vident-home-fr .gallery-bento{grid-template-columns:repeat(2,1fr);}
.vident-home-fr .section{padding:100px 48px;}
}

@media(max-width:900px) {
.vident-home-fr .hero{padding:32px 40px 32px;}
.vident-home-fr .hero-title{font-size:clamp(44px,9vw,80px);}
.vident-home-fr .team-feature, .vident-home-fr .team-feature img{min-height:520px;}
}

@media(max-width:760px) {
.vident-home-fr{cursor:auto;}
.vident-home-fr .section, .vident-home-fr .hero, .vident-home-fr .contact{padding-left:22px;padding-right:22px;}
.vident-home-fr .section{padding-top:80px;padding-bottom:80px;}
.vident-home-fr .hero{padding-top:36px;}
.vident-home-fr .hero-title{font-size:44px;}
.vident-home-fr .hero-copy{grid-template-columns:1fr;}
.vident-home-fr .hero-actions .btn{width:100%;}
.vident-home-fr .hero-visual{min-height:500px;}
.vident-home-fr .hero-photo{inset:30px 0 70px 0;}
.vident-home-fr .hero-floating-card{right:0;width:210px;}
.vident-home-fr .hero-glass{width:280px;}
.vident-home-fr .hero-stats{grid-template-columns:1fr;}
.vident-home-fr .trust-main{padding:32px;}
.vident-home-fr .section-head{flex-direction:column;align-items:flex-start;}
.vident-home-fr .tech-bento, .vident-home-fr .services-bento{grid-template-columns:1fr;}
.vident-home-fr .tech-card.large, .vident-home-fr .tech-card.mid, .vident-home-fr .tech-card.small, .vident-home-fr .tech-card.wide, .vident-home-fr .service-card.featured, .vident-home-fr .service-card.standard, .vident-home-fr .service-card.compact, .vident-home-fr .service-card.half{grid-column:span 1;}
.vident-home-fr .gallery-bento{grid-template-columns:1fr;}
.vident-home-fr .gallery-item{aspect-ratio:4/3;}
.vident-home-fr .team-grid{grid-template-columns:1fr;}
.vident-home-fr .contact-main, .vident-home-fr .contact-card{padding:26px;border-radius:28px;}
.vident-home-fr .why-note{margin-left:12px;margin-right:12px;margin-top:-60px;}
.vident-home-fr .why-image{height:420px;}
}

@media(max-width:420px) {
.vident-home-fr .hero-title{font-size:36px;}
.vident-home-fr .section-title{font-size:32px;}
}