.gc-home-section, .gc-gallery-page, .gc-modal-overlay { font-family: -apple-system, 'Segoe UI', sans-serif; color:#1A1A1A; }
		:root{ --gc-navy:#12233F; --gc-navy-soft:#1D3357; --gc-brass:#B8873B; --gc-brass-light:#E4C88A; --gc-ivory:#F6F3EC; --gc-line:#DDD6C8; --gc-grey:#6B6558; }
		.gc-home-section{ padding:56px 6vw 72px; max-width:1280px; margin:0 auto; }
		.gc-section-head{ display:flex; justify-content:space-between; align-items:flex-end; gap:24px; margin-bottom:32px; border-bottom:1px solid var(--gc-line); padding-bottom:20px; flex-wrap:wrap; }
		.gc-section-head h2{ font-size:1.9rem; font-weight:600; margin:0; color:var(--gc-navy); }
		.gc-section-head p{ margin:8px 0 0; color:var(--gc-grey); }
		.gc-view-all{ font-weight:600; font-size:0.9rem; color:var(--gc-navy); text-decoration:none; border-bottom:1.5px solid var(--gc-brass); padding-bottom:2px; white-space:nowrap; }
		.gc-filmstrip{ display:grid; grid-auto-flow:column; grid-auto-columns:240px; gap:18px; overflow-x:auto; padding-bottom:8px; }
		.gc-feat-card{ position:relative; height:320px; overflow:hidden; cursor:pointer; background:var(--gc-navy-soft); flex-shrink:0; display:block; text-decoration:none; }
		.gc-feat-card::before{ content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--gc-brass); transform:scaleX(0); transition:transform .2s ease; transform-origin:left; z-index:2; }
		.gc-feat-card:hover::before{ transform:scaleX(1); }
		.gc-feat-card img{ width:100%; height:100%; object-fit:cover; display:block; }
		.gc-feat-nameplate{ position:absolute; left:0; right:0; bottom:0; padding:12px 14px 14px; background:var(--gc-navy); }
		.gc-feat-nameplate .gc-name{ font-size:1rem; font-weight:600; margin:0 0 6px; color:#fff; }
		.gc-feat-nameplate .gc-feat-tag{ display:inline-block; margin-bottom:6px; }
		.gc-feat-nameplate .gc-prenom{ font-size:0.75rem; color:var(--gc-brass-light); margin:0; }
		.gc-feat-tag{ font-size:0.7rem; padding:3px 10px; border:1px solid var(--gc-brass); border-radius:20px; color:var(--gc-brass-light); }

		.gc-gallery-page{ background:#fff; border-top:8px solid var(--gc-navy); }
		.gc-gallery-hero{ background:var(--gc-navy); color:#fff; padding:48px 6vw 32px; }
		.gc-gallery-hero h1{ font-size:2.1rem; font-weight:600; margin:0 0 8px; }
		.gc-gallery-hero p{ color:#C9D2E0; margin:0; }
		.gc-toolbar{ display:flex; gap:10px; margin-top:22px; flex-wrap:wrap; }
		.gc-search-box{ flex:1; min-width:220px; border:none; padding:11px 14px; font-size:0.95rem; }
		.gc-search-btn{ background:var(--gc-brass); color:#fff; border:none; padding:0 20px; cursor:pointer; font-weight:600; }

		.gc-gallery-body{ display:grid; grid-template-columns:230px 1fr; max-width:1320px; margin:0 auto; }
		.gc-filter-rail{ padding:32px 20px 60px; border-right:1px solid var(--gc-line); }
		.gc-filter-group h4{ font-size:0.78rem; font-weight:700; color:var(--gc-navy); margin:0 0 12px; }
		.gc-filter-option{ display:flex; align-items:center; gap:8px; font-size:0.86rem; margin-bottom:8px; cursor:pointer; }
		.gc-filter-option.active{ color:var(--gc-navy); font-weight:700; }
		.gc-filter-count{ color:var(--gc-grey); font-size:0.78rem; margin-left:auto; }
		.gc-filter-option input[type=checkbox], .gc-filter-option input[type=radio]{ accent-color:var(--gc-brass); }

		.gc-grid-wrap{ padding:32px 28px 70px; }
		.gc-grid-meta{ font-size:0.85rem; color:var(--gc-grey); margin-bottom:18px; }
		.gc-pgrid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1px; background:var(--gc-line); border:1px solid var(--gc-line); }
		.gc-p-card{ text-decoration:none;color:inherit;position:relative; background:#fff; padding:18px; cursor:pointer; display:flex; flex-direction:column; transition:box-shadow .15s ease, transform .15s ease; }
		.gc-p-card::before{ content:''; position:absolute; top:0; left:0; right:0; height:3px; background:var(--gc-brass); transform:scaleX(0); transition:transform .2s ease; transform-origin:left; }
		.gc-p-card:hover{ background:#FBF9F4; box-shadow:0 8px 20px rgba(18,35,63,0.08); transform:translateY(-2px); z-index:1; }
		.gc-p-card:hover::before{ transform:scaleX(1); }
		.gc-p-portrait{ width:100%; aspect-ratio:4/5; object-fit:cover; margin-bottom:12px; background:var(--gc-navy-soft); }
		.gc-p-card .gc-name{ font-size:1rem; font-weight:700; margin:0; color:var(--gc-navy); }
		.gc-p-card .gc-prenom{ font-size:0.74rem; color:var(--gc-brass); margin:2px 0 8px; font-weight:600; }
		.gc-p-tag{ display:inline-block; font-size:0.7rem; background:var(--gc-ivory); color:var(--gc-navy); padding:3px 10px; margin-bottom:8px; width:fit-content; }
		.gc-p-bio{ font-size:0.83rem; color:var(--gc-grey); margin:0 0 12px; flex-grow:1; }
		.gc-p-link{ font-size:0.78rem; font-weight:700; color:var(--gc-navy); border-bottom:1px solid var(--gc-brass); width:fit-content; }

		.gc-pager{ display:flex; justify-content:center; gap:8px; margin-top:36px; }
		.gc-pager a, .gc-pager-dots{ width:34px; height:34px; display:flex; align-items:center; justify-content:center; border:1px solid var(--gc-line); text-decoration:none; color:var(--gc-navy); font-size:0.85rem; }
		.gc-pager a.current{ background:var(--gc-navy); color:#fff; border-color:var(--gc-navy); }

        .gc-gallery-hero h1{color:#fff}
        .gc-p-card:focus-visible,.gc-feat-card:focus-visible{outline:3px solid var(--gc-brass);outline-offset:3px}
        @media(max-width:820px){.gc-gallery-body{grid-template-columns:1fr}.gc-filter-rail{border-right:none;border-bottom:1px solid var(--gc-line)}.gc-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
        @media(max-width:480px){.gc-pgrid{grid-template-columns:minmax(0,1fr)}.gc-grid-wrap{padding:24px 16px}.gc-search-box{min-width:0;width:100%}}

        .gc-gallery-page #gc-filter-title{font-size:1.1rem;line-height:1.4;color:var(--gc-navy);margin:0 0 18px}
        .gc-gallery-page fieldset{min-width:0;border:0;margin:0;padding:0}
        .gc-gallery-page legend{font-size:1rem;font-weight:700;margin:0 0 12px;color:var(--gc-navy)}
        .gc-filter-help{font-size:.875rem;line-height:1.6;color:#495366;margin:0 0 16px}
        .gc-gallery-page .gc-filter-option{min-height:44px;font-size:.9rem;line-height:1.4;margin-bottom:4px}
        .gc-filter-option input{flex-shrink:0;width:18px;height:18px}
        .gc-filter-option>span:first-of-type{overflow-wrap:anywhere}
        .gc-apply-filters{min-height:44px;padding:10px 16px;background:var(--gc-navy);color:#fff;border:0;font:inherit;font-weight:600;margin-top:16px;width:100%;cursor:pointer}
        .gc-clear-filters{display:block;padding:12px 0;color:var(--gc-navy);font-size:.9rem;text-underline-offset:3px}
        .gc-reset-search{align-self:center;color:#fff!important;padding:12px 4px;text-underline-offset:4px}
        .gc-gallery-page .gc-search-btn{min-height:44px;background:#d5a44f;color:#12233f;font-size:1rem;padding:10px 20px}
        .gc-gallery-page .gc-search-box{min-height:44px;font:inherit;border:1px solid #a6b1c4;max-width:100%}
        .gc-gallery-page :is(a,button,input):focus-visible{outline:3px solid #a87422;outline-offset:3px}
        .gc-gallery-hero :is(a,button,input):focus-visible{outline-color:#fff}
        .gc-gallery-page .gc-pager{flex-wrap:wrap;gap:8px}
        .gc-gallery-page .gc-pager :is(a,.gc-page-current){width:auto;min-width:44px;height:auto;min-height:44px;padding:8px 12px;box-sizing:border-box}
        .gc-page-current{display:flex;align-items:center;justify-content:center;background:var(--gc-navy);color:white;font-weight:700;border:1px solid var(--gc-navy)}
        .gc-gallery-page .gc-grid-wrap{min-width:0}
        .gc-gallery-page .gc-pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
        .gc-p-card{overflow-wrap:anywhere}
        @media(max-width:1024px){.gc-gallery-body{grid-template-columns:minmax(0,1fr)}.gc-filter-rail{border-right:0;border-bottom:1px solid var(--gc-line);padding:24px}.gc-filter-group{display:block}.gc-gallery-page .gc-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
        @media(max-width:480px){.gc-gallery-page .gc-pgrid{grid-template-columns:minmax(0,1fr)}.gc-gallery-hero{padding:32px 20px 24px}.gc-gallery-page .gc-search-box{flex-basis:100%;min-width:0}}
        @media(prefers-reduced-motion:reduce){.gc-home-section *,.gc-gallery-page *{transition:none!important;animation:none!important}}
