:root{
  --bg:#f5efe4;
  --paper:#fffdf8;
  --paper2:#fff8ea;
  --ink:#10241f;
  --muted:#63746e;
  --line:#e6dcc9;
  --brand:#0f5b43;
  --brand2:#d4a64a;
  --brand3:#163a30;
  --soft:#e8f4ed;
  --danger:#b42318;
  --radius:26px;
  --radius-lg:38px;
  --shadow:0 24px 70px rgba(16,36,31,.11);
  --shadow-sm:0 14px 34px rgba(16,36,31,.07);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;background:radial-gradient(circle at top left,rgba(212,166,74,.12),transparent 30%),var(--bg);color:var(--ink);line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}.container{width:min(1200px,92vw);margin-inline:auto}.public-site .container{position:relative}.eyebrow{display:inline-flex;align-items:center;gap:.45rem;color:var(--brand);font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;font-weight:950}.eyebrow:before{content:"";width:22px;height:2px;border-radius:999px;background:var(--brand2)}.lead{font-size:1.08rem;color:#3e524b}.muted{color:var(--muted)}

.top-strip{background:#11372d;color:#eaf7ef;font-size:.86rem}.top-strip-inner{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.55rem 0}.top-left,.top-right{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.top-strip svg{width:16px;height:16px;color:#f0cf78}.top-strip a,.top-strip span{display:inline-flex;align-items:center;gap:.4rem;color:#eaf7ef}
.site-header{position:sticky;top:0;z-index:60;background:rgba(255,253,248,.86);backdrop-filter:blur(20px);border-bottom:1px solid rgba(230,220,201,.8)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.78rem 0}.brand{display:flex;align-items:center;gap:.85rem;min-width:230px}.brand img{width:54px;height:54px;object-fit:contain;border-radius:18px;background:white;padding:.15rem;box-shadow:var(--shadow-sm)}.brand strong{display:block;font-weight:950;letter-spacing:-.03em;color:#0d2f27}.brand small{display:block;color:var(--muted);font-size:.78rem;line-height:1.2}.main-nav{display:flex;align-items:center;gap:.35rem}.nav-link,.nav-parent,.nav-cta{border:0;background:transparent;display:flex;align-items:center;gap:.35rem;min-height:42px;padding:.72rem .9rem;border-radius:999px;color:#2b4039;font-weight:860;font-size:.93rem;cursor:pointer}.nav-link:hover,.nav-parent:hover,.nav-link.is-active,.nav-group.is-active>.nav-parent{background:var(--soft);color:var(--brand)}.nav-cta{background:linear-gradient(135deg,var(--brand),#1b7658);color:white!important;box-shadow:0 12px 28px rgba(15,91,67,.22)}.nav-cta:hover{transform:translateY(-1px);box-shadow:0 16px 38px rgba(15,91,67,.28)}.nav-group{position:relative}.nav-dropdown-menu{position:absolute;right:0;top:calc(100% + 12px);width:300px;padding:.55rem;background:rgba(255,253,248,.98);border:1px solid var(--line);border-radius:24px;box-shadow:0 30px 80px rgba(16,36,31,.18);display:none;z-index:70}.nav-dropdown-menu.wide{width:530px;grid-template-columns:1fr 1fr}.nav-group:hover .nav-dropdown-menu,.nav-group:focus-within .nav-dropdown-menu{display:grid;gap:.35rem}.nav-dropdown-menu a{display:grid;gap:.1rem;padding:.85rem;border-radius:18px;color:#213b34}.nav-dropdown-menu a:hover{background:#f2eadc}.nav-dropdown-menu strong{font-size:.96rem}.nav-dropdown-menu small{font-size:.78rem;color:var(--muted);line-height:1.25}.nav-toggle{display:none;border:0;background:var(--soft);color:var(--brand);border-radius:16px;width:46px;height:46px;place-items:center;cursor:pointer}.nav-toggle svg{width:23px;height:23px}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:999px;padding:.86rem 1.15rem;border:1px solid transparent;font-weight:950;line-height:1.1;cursor:pointer;transition:.18s ease}.btn-primary{background:linear-gradient(135deg,var(--brand),#207759);color:white;box-shadow:0 15px 34px rgba(15,91,67,.22)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 44px rgba(15,91,67,.28)}.btn-secondary{background:white;color:var(--brand);border-color:rgba(15,91,67,.16);box-shadow:var(--shadow-sm)}.btn-secondary:hover{transform:translateY(-2px);background:var(--soft)}.btn-mini{display:inline-flex;border-radius:12px;padding:.45rem .65rem;background:var(--soft);font-weight:900;color:var(--brand)}

.section{padding:4.5rem 0}.muted-section{background:linear-gradient(180deg,rgba(255,255,255,.52),rgba(255,248,234,.65));border-block:1px solid rgba(230,220,201,.65)}.section-heading{max-width:760px;margin-bottom:1.55rem}.section-heading h2{font-size:clamp(2rem,4vw,3.35rem);line-height:1;letter-spacing:-.05em;margin:.35rem 0 .6rem}.section-heading p{color:var(--muted);font-size:1.04rem;margin:0}.center-heading{text-align:center;margin-inline:auto}.center-heading .eyebrow{justify-content:center}.split-heading{display:flex;justify-content:space-between;align-items:end;gap:1.2rem;max-width:none}.split-heading>div{max-width:760px}

.hero{position:relative;overflow:hidden;padding:5.7rem 0 3.9rem;background:radial-gradient(circle at 78% 14%,rgba(212,166,74,.25),transparent 26%),linear-gradient(135deg,#fffdf8 0%,#f7eddb 48%,#eaf4ed 100%)}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(15,91,67,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(15,91,67,.05) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(180deg,#000,transparent 75%)}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:3rem;align-items:center}.hero-copy h1{font-size:clamp(3rem,7vw,6.2rem);line-height:.9;letter-spacing:-.075em;margin:.42rem 0 1rem;color:#0b2a23}.hero-copy p{font-size:1.18rem;color:#3e524b;max-width:760px}.hero-actions{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;margin-top:1.35rem}.trust-row{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1.35rem}.trust-row span,.chips span,.mini-list span{display:inline-flex;align-items:center;border:1px solid rgba(15,91,67,.14);background:rgba(255,255,255,.72);color:#24443a;border-radius:999px;padding:.42rem .75rem;font-weight:850;font-size:.86rem}.hero-card{position:relative;border-radius:var(--radius-lg);overflow:hidden;min-height:470px;box-shadow:0 38px 95px rgba(16,36,31,.2);border:1px solid rgba(212,166,74,.35);background:white}.hero-card img{width:100%;height:100%;min-height:470px;object-fit:cover}.hero-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 38%,rgba(10,31,26,.62))}.floating-card{position:absolute;left:1.1rem;right:1.1rem;bottom:1.1rem;z-index:2;padding:1rem;border-radius:24px;background:rgba(255,253,248,.9);backdrop-filter:blur(14px);box-shadow:var(--shadow-sm)}.floating-card strong{display:block;color:#11372d}.floating-card span{display:block;color:var(--muted);font-size:.9rem}

.impact-band{padding:1.6rem 0 0;margin-top:-1.2rem;position:relative;z-index:5}.impact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem}.premium-stat{background:rgba(255,253,248,.9);backdrop-filter:blur(16px);border:1px solid rgba(212,166,74,.22);border-radius:28px;padding:1.35rem;box-shadow:var(--shadow-sm)}.premium-stat strong{display:block;font-size:clamp(2.1rem,4vw,3.35rem);line-height:.9;color:var(--brand);letter-spacing:-.06em}.premium-stat span{display:block;margin-top:.48rem;font-weight:920;color:#203b33}.premium-stat small{display:block;color:var(--muted);font-size:.82rem;margin-top:.15rem}

.split{display:grid;grid-template-columns:1.05fr .95fr;gap:1.3rem;align-items:start}.premium-split{align-items:center}.signature-panel,.identity-card,.domain-kpi-card,.achievement-card,.person-card,.process-grid article,.premium-contact-card,.admin-card,.article-card,.side-card,.contact-card,.adhesion-side{background:rgba(255,253,248,.92);border:1px solid rgba(212,166,74,.24);border-radius:30px;padding:1.55rem;box-shadow:var(--shadow-sm)}.signature-panel span,.domain-kpi-card span{color:var(--brand);font-weight:950;text-transform:uppercase;font-size:.78rem;letter-spacing:.11em}.signature-panel h3{font-size:1.65rem;line-height:1.05;margin:.35rem 0}.signature-list{display:grid;gap:.65rem;margin-top:1rem}.signature-list strong,.contact-line{display:flex;gap:.65rem;align-items:center;color:#203730}.inline-actions{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:1.2rem}

.domain-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.domain-card{position:relative;overflow:hidden;min-height:285px;background:linear-gradient(180deg,#fff,#fff8e9);border:1px solid rgba(212,166,74,.26);border-radius:32px;padding:1.35rem;color:#23352f;box-shadow:var(--shadow-sm);transition:.18s ease}.domain-card:after{content:"";position:absolute;right:-48px;bottom:-48px;width:148px;height:148px;background:rgba(15,91,67,.08);border-radius:50%}.domain-card:hover{transform:translateY(-6px);box-shadow:0 34px 82px rgba(16,36,31,.14)}.icon-badge{display:grid;place-items:center;width:54px;height:54px;border-radius:20px;background:linear-gradient(135deg,var(--brand),#1f7759);color:white;box-shadow:0 14px 28px rgba(15,91,67,.22)}.domain-card h3{font-size:1.28rem;line-height:1.1;margin:.9rem 0 .45rem}.domain-card p{color:var(--muted);margin:0 0 2.7rem}.domain-card>span{position:absolute;left:1.35rem;bottom:1.2rem;color:var(--brand);font-weight:950}.quick-domain-nav{display:flex;gap:.55rem;flex-wrap:wrap;margin-bottom:1.4rem}.quick-domain-nav a{border-radius:999px;padding:.72rem 1rem;background:white;border:1px solid rgba(212,166,74,.3);box-shadow:0 10px 26px rgba(16,36,31,.05);font-weight:920;color:#203730}.quick-domain-nav a:hover,.quick-domain-nav a.active{background:var(--brand);color:white;border-color:var(--brand)}

.project-grid,.news-grid,.commune-grid,.gallery-grid,.achievement-grid,.people-grid,.process-grid{display:grid;gap:1rem}.project-grid{grid-template-columns:repeat(4,1fr)}.all-projects,.premium-news-grid,.premium-commune-grid,.achievement-grid{grid-template-columns:repeat(3,1fr)}.project-card,.news-card,.commune-card{background:#fffdf8;border:1px solid rgba(212,166,74,.24);border-radius:30px;overflow:hidden;box-shadow:var(--shadow-sm)}.project-card{padding:1.25rem}.project-top{display:flex;justify-content:space-between;gap:.8rem;align-items:center}.project-top strong{color:var(--brand);background:var(--soft);border-radius:999px;padding:.28rem .6rem;font-size:.78rem}.project-top span{font-weight:950;color:var(--brand2)}.project-card h3{font-size:1.22rem;line-height:1.15;margin:.9rem 0 .45rem}.project-card p{color:var(--muted)}.progress{height:9px;border-radius:999px;background:#eadfcb;overflow:hidden;margin:1rem 0}.progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--brand),var(--brand2))}.project-card small{color:#50655e;font-weight:800}.news-card img,.premium-news-card img{width:100%;height:220px;object-fit:cover}.news-card>div{padding:1.2rem}.news-card em{font-style:normal;color:var(--brand);font-weight:950;font-size:.78rem}.news-card h3{line-height:1.15;margin:.35rem 0}.news-card p{color:var(--muted)}.news-card span{color:var(--brand);font-weight:950}.news-stack{display:grid;gap:.85rem}.news-line{display:grid;grid-template-columns:124px 1fr;gap:1rem;align-items:center;background:white;border:1px solid rgba(212,166,74,.24);border-radius:26px;padding:.65rem;box-shadow:var(--shadow-sm)}.news-line img{width:124px;height:88px;border-radius:20px;object-fit:cover}.news-line em{display:block;font-style:normal;color:var(--brand);font-weight:950;font-size:.78rem}.news-line strong{display:block;font-size:1.04rem;line-height:1.2}.editorial-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:2rem;align-items:start}

.page-hero{position:relative;overflow:hidden;padding:4.6rem 0;background:radial-gradient(circle at 12% 8%,rgba(212,166,74,.24),transparent 27%),linear-gradient(135deg,#fffdf8,#f0eadc 55%,#eaf4ed);border-bottom:1px solid rgba(212,166,74,.22)}.page-hero-grid{display:grid;grid-template-columns:1.05fr .76fr;gap:2rem;align-items:center}.page-hero h1{font-size:clamp(2.55rem,5.6vw,5.2rem);line-height:.92;letter-spacing:-.065em;margin:.4rem 0}.page-hero p{font-size:1.1rem;color:#3f514b;max-width:820px}.page-hero-media{position:relative;border-radius:34px;overflow:hidden;min-height:330px;box-shadow:var(--shadow);border:1px solid rgba(212,166,74,.3);background:#fff}.page-hero-media img{width:100%;height:100%;min-height:330px;object-fit:cover}.page-hero-media span{position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(16,36,31,.22))}

.identity-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:1rem}.identity-card.featured{background:linear-gradient(180deg,#fff,#fff8e9)}.premium-dl{display:grid;gap:.7rem}.premium-dl div{display:grid;grid-template-columns:170px 1fr;gap:1rem;border-bottom:1px solid var(--line);padding-bottom:.7rem}.premium-dl dt{font-weight:950;color:var(--brand)}.premium-dl dd{margin:0;color:#34423d}.people-grid{grid-template-columns:repeat(3,1fr)}.person-card strong{display:block;color:#1d352d;font-size:1.05rem}.person-card span{color:var(--muted)}.process-grid{grid-template-columns:repeat(4,1fr)}.process-grid article span{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;background:#163c31;color:white;font-weight:950;margin-bottom:.75rem}.achievement-grid{grid-template-columns:repeat(3,1fr)}.achievement-card{min-height:220px}.achievement-card h3{margin:.65rem 0 .35rem;line-height:1.14}.achievement-card p{color:var(--muted)}.domain-kpi-card strong{display:block;font-size:4rem;line-height:.9;color:var(--brand);letter-spacing:-.06em}.commune-card{padding:1.2rem}.commune-card span{color:var(--brand);font-weight:950;text-transform:uppercase;font-size:.75rem;letter-spacing:.09em}.commune-card h3{margin:.35rem 0}.commune-card p{color:var(--muted)}

.gallery-grid{grid-template-columns:repeat(4,1fr)}.premium-gallery-grid-full{grid-template-columns:repeat(3,1fr)}.gallery-item{position:relative;border:0;padding:0;min-height:240px;border-radius:30px;overflow:hidden;background:#ddd;cursor:pointer;box-shadow:var(--shadow-sm);text-align:left}.premium-gallery-item{height:330px}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.25s ease}.gallery-item:hover img{transform:scale(1.04)}.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(8,28,23,.72))}.gallery-item span{position:absolute;left:1rem;bottom:1rem;z-index:2;background:rgba(255,255,255,.86);color:var(--brand);border-radius:999px;padding:.35rem .65rem;font-weight:950;font-size:.78rem}.premium-gallery-item strong{position:absolute;z-index:2;left:1rem;right:1rem;bottom:3.25rem;color:white;text-shadow:0 6px 20px rgba(0,0,0,.45);font-size:1.18rem}.modal[hidden]{display:none}.modal{position:fixed;inset:0;z-index:100;display:grid;place-items:center;padding:2rem;background:rgba(8,28,23,.78);backdrop-filter:blur(8px)}.modal>button{position:absolute;top:1rem;right:1rem;border:0;width:46px;height:46px;border-radius:50%;background:white;color:#17372f;font-size:2rem;line-height:1;cursor:pointer}.modal>div{width:min(900px,94vw);background:white;border-radius:28px;overflow:hidden;box-shadow:0 40px 110px rgba(0,0,0,.35)}.modal img{width:100%;max-height:72vh;object-fit:contain;background:#111}.modal strong{display:block;padding:1rem 1.2rem;color:#17372f}

.contact-layout,.adhesion-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:1.3rem;align-items:start}.premium-contact-card{position:sticky;top:110px}.form{display:grid;gap:1rem}.premium-form{border-radius:32px;padding:1.65rem;border:1px solid rgba(212,166,74,.26);background:#fffdf8;box-shadow:var(--shadow-sm)}.form-grid{display:grid;gap:1rem}.form-grid.two{grid-template-columns:repeat(2,1fr)}.form-grid.three{grid-template-columns:repeat(3,1fr)}label{display:grid;gap:.38rem;color:#263d36;font-weight:850}input,textarea,select{width:100%;border:1px solid #ded3bf;border-radius:16px;padding:.78rem .9rem;background:#fff;color:var(--ink);outline:none}input:focus,textarea:focus,select:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(15,91,67,.12)}.premium-steps{display:grid;gap:.9rem;margin:1rem 0 0;padding:0;list-style:none}.premium-steps li{display:grid;gap:.2rem;padding:1rem;border-radius:20px;background:#fff8e9;border:1px solid var(--line)}.premium-steps strong{color:var(--brand)}.premium-steps span{color:var(--muted)}.flash{margin:1rem 0;border-radius:18px;padding:1rem 1.2rem;font-weight:850}.flash-success{background:#e6f6eb;color:#155735}.flash-error{background:#fde9e7;color:var(--danger)}

.article-section{padding-top:2.3rem}.article-grid{display:grid;grid-template-columns:1fr 340px;gap:1rem;align-items:start}.article-cover{width:100%;height:390px;object-fit:cover;border-radius:24px;margin-bottom:1rem}.article-card h1{font-size:clamp(2rem,4.4vw,4.3rem);line-height:.96;letter-spacing:-.055em}.article-content{color:#2d413a;font-size:1.05rem}.side-card{position:sticky;top:110px}.side-card a{display:grid;gap:.12rem;padding:.8rem 0;border-bottom:1px solid var(--line)}.side-card span{color:var(--muted);font-size:.86rem}.side-card .btn{margin-top:1rem;width:100%}.cta-panel-section{padding:2rem 0 4.5rem}.cta-panel{display:flex;justify-content:space-between;gap:2rem;align-items:center;background:linear-gradient(135deg,#12372d,#0f5b43);color:white;border-radius:38px;padding:2.1rem;box-shadow:0 34px 90px rgba(16,36,31,.22);position:relative;overflow:hidden}.cta-panel:after{content:"";position:absolute;right:-80px;top:-100px;width:270px;height:270px;background:rgba(212,166,74,.22);border-radius:50%}.cta-panel>*{position:relative;z-index:2}.cta-panel h2{color:white;margin:.3rem 0;font-size:clamp(1.75rem,4vw,3rem);letter-spacing:-.045em}.cta-panel p{color:#e7f3ed}.cta-panel .eyebrow{color:#f0d58b}.cta-panel .btn-secondary{background:rgba(255,255,255,.12);color:white;border-color:rgba(255,255,255,.26)}

.footer{background:#0f2f28;color:#dbe8e1;padding:3rem 0 1.2rem}.footer-premium-grid{display:grid;grid-template-columns:1.35fr .7fr .9fr 1fr;gap:1.6rem}.footer-brand-block{display:flex;gap:1rem;align-items:flex-start}.footer-brand-block img{width:68px;height:68px;border-radius:22px;background:white;padding:.2rem}.footer-brand-block strong{display:block;font-size:1.16rem;color:white}.footer-brand-block p{margin:.25rem 0;color:#dbe8e1}.footer-brand-block span{font-size:.88rem;color:#aebeb7}.footer-links{display:grid;gap:.38rem;align-content:start}.footer-links h4{color:#f0d58b;margin:0 0 .4rem}.footer-links a,.footer-links span{color:#dbe8e1}.footer-links a:hover{color:white}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:1.7rem;padding-top:1rem;color:#bfcfc8;font-size:.86rem}

.admin-page{background:#f2efe9;color:#172b25}.admin-top{position:sticky;top:0;z-index:30;background:rgba(255,253,248,.92);backdrop-filter:blur(18px);border-bottom:1px solid var(--line)}.admin-top-inner{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0}.admin-layout{display:grid;grid-template-columns:270px 1fr;gap:1.2rem;padding:1.2rem 0}.admin-menu{position:sticky;top:86px;align-self:start;display:grid;gap:.45rem;background:white;border:1px solid var(--line);border-radius:26px;padding:.75rem;box-shadow:var(--shadow-sm)}.admin-menu a{padding:.78rem .9rem;border-radius:18px;font-weight:900;color:#2b4039}.admin-menu a:hover{background:var(--soft);color:var(--brand)}.admin-content{display:grid;gap:1.2rem}.admin-section{scroll-margin-top:92px}.admin-grid,.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.metric{background:linear-gradient(180deg,#fff,#fff8ea);border:1px solid rgba(212,166,74,.25);border-radius:26px;padding:1.2rem;box-shadow:var(--shadow-sm)}.metric strong{display:block;font-size:2.2rem;color:var(--brand);letter-spacing:-.05em}.metric span{color:var(--muted);font-weight:850}.section-line{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0}.table-wrap{overflow:auto;background:white;border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow-sm)}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:.75rem .85rem;text-align:left;border-bottom:1px solid #eee3d2;vertical-align:top}th{font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;color:var(--brand);background:#fff8ea}.inline-form,.inline-delete{display:inline-flex;gap:.35rem;align-items:center;flex-wrap:wrap}.inline-form select,.inline-form input{padding:.45rem;border-radius:10px}.inline-form button,.inline-delete button{border:0;border-radius:12px;padding:.48rem .62rem;background:var(--soft);color:var(--brand);font-weight:900;cursor:pointer}.inline-delete button{background:#fde9e7;color:var(--danger)}.actions{display:flex;gap:.4rem;flex-wrap:wrap}.login-wrap{min-height:100vh;display:grid;place-items:center;padding:2rem;background:linear-gradient(135deg,#0f2f28,#0f5b43)}.login-card{width:min(440px,92vw);background:white;border-radius:30px;padding:2rem;box-shadow:0 35px 100px rgba(0,0,0,.28)}.log-line{border-bottom:1px solid var(--line);padding:.4rem 0}.log-line span{color:var(--muted);font-size:.84rem}.install-page,.verify-page,.card-print-page{background:var(--bg);min-height:100vh}.install-box,.verify-logo,.member-card{background:white;border-radius:28px;padding:1.5rem;box-shadow:var(--shadow-sm);border:1px solid var(--line)}

@media (max-width:1180px){.main-nav{gap:.18rem}.nav-link,.nav-parent,.nav-cta{font-size:.86rem;padding:.65rem .72rem}.domain-grid,.impact-grid,.project-grid{grid-template-columns:repeat(2,1fr)}.footer-premium-grid{grid-template-columns:1fr 1fr}.admin-grid,.metric-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:930px){.top-strip{display:none}.nav-toggle{display:grid}.premium-main-nav{display:none;position:absolute;top:78px;left:4vw;right:4vw;background:rgba(255,253,248,.98);border:1px solid var(--line);border-radius:26px;padding:.7rem;box-shadow:0 32px 88px rgba(16,36,31,.2);align-items:stretch}.premium-main-nav.open{display:grid;gap:.35rem}.nav-link,.nav-parent,.nav-cta{width:100%;justify-content:space-between;border-radius:18px}.nav-group{display:grid}.nav-dropdown-menu,.nav-dropdown-menu.wide{position:static;width:auto;display:grid;grid-template-columns:1fr;box-shadow:none;border:0;background:#fff8e9;margin:.25rem 0 .55rem;border-radius:18px;padding:.35rem}.hero-grid,.page-hero-grid,.split,.identity-grid,.editorial-grid,.contact-layout,.adhesion-layout,.article-grid{grid-template-columns:1fr}.hero{padding:4rem 0 3rem}.hero-card,.hero-card img{min-height:320px}.page-hero{padding:3.4rem 0}.page-hero-media,.page-hero-media img{min-height:250px}.people-grid,.process-grid,.all-projects,.premium-news-grid,.premium-commune-grid,.achievement-grid,.premium-gallery-grid-full,.gallery-grid{grid-template-columns:repeat(2,1fr)}.cta-panel{display:grid}.premium-contact-card,.side-card{position:static}.admin-layout{grid-template-columns:1fr}.admin-menu{position:static;grid-template-columns:repeat(2,1fr)}.premium-dl div{grid-template-columns:1fr}.split-heading{display:grid;align-items:start}.form-grid.three{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.container{width:min(100% - 28px,1200px)}.brand{min-width:0}.brand img{width:46px;height:46px}.brand small{max-width:170px}.hero-copy h1,.page-hero h1{letter-spacing:-.045em}.impact-grid,.domain-grid,.project-grid,.people-grid,.process-grid,.all-projects,.premium-news-grid,.premium-commune-grid,.achievement-grid,.premium-gallery-grid-full,.gallery-grid,.admin-grid,.metric-grid{grid-template-columns:1fr}.hero-actions{align-items:stretch}.hero-actions .btn{width:100%}.news-line{grid-template-columns:88px 1fr}.news-line img{width:88px;height:72px}.gallery-item,.premium-gallery-item{height:260px}.form-grid.two,.form-grid.three{grid-template-columns:1fr}.footer-premium-grid{grid-template-columns:1fr}.footer-brand-block{display:grid}.admin-menu{grid-template-columns:1fr}.cta-panel{padding:1.5rem}.section{padding:3.2rem 0}.article-cover{height:250px}}
@media print{.site-header,.top-strip,.footer,.print-actions,.admin-top,.admin-menu,.btn{display:none!important}body{background:white}.container{width:100%;}.member-card{box-shadow:none;border:1px solid #ddd}}

@media (min-width:931px){
  .nav-group{position:relative;}
  .nav-group:after{content:"";position:absolute;left:0;right:0;top:100%;height:22px;display:block;}
  .nav-dropdown-menu,
  .nav-dropdown-menu.wide{display:grid;gap:.35rem;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .18s ease,transform .18s ease,visibility 0s linear .85s;max-height:min(72vh,620px);overflow:auto;scrollbar-width:thin;}
  .nav-group:hover .nav-dropdown-menu,
  .nav-group:focus-within .nav-dropdown-menu,
  .nav-group.is-open .nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);transition-delay:0s;}
  .nav-dropdown-menu::-webkit-scrollbar{width:8px;}
  .nav-dropdown-menu::-webkit-scrollbar-thumb{background:rgba(15,91,67,.28);border-radius:999px;}
}

.auth-body{min-height:100vh;background:radial-gradient(circle at 18% 12%,rgba(212,166,74,.22),transparent 28%),linear-gradient(135deg,#0c2a23 0%,#0f5b43 52%,#17352d 100%);}
.auth-layout{min-height:100vh;display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(360px,.95fr);align-items:stretch;}
.auth-visual{position:relative;overflow:hidden;padding:clamp(2rem,5vw,5rem);display:flex;align-items:center;color:white;}
.auth-visual:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:54px 54px;mask-image:linear-gradient(90deg,#000,transparent 92%);}
.auth-visual-card{position:relative;z-index:1;max-width:720px;}
.auth-logo{width:86px;height:86px;object-fit:contain;border-radius:28px;background:rgba(255,255,255,.96);padding:.35rem;box-shadow:0 26px 70px rgba(0,0,0,.26);}
.auth-kicker{display:inline-flex;margin-top:1.6rem;padding:.5rem .75rem;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.08);font-weight:950;letter-spacing:.1em;text-transform:uppercase;font-size:.76rem;}
.auth-visual h1{font-size:clamp(2.6rem,6vw,5.4rem);line-height:.92;letter-spacing:-.07em;margin:.8rem 0 1rem;}
.auth-visual p{font-size:1.08rem;color:rgba(255,255,255,.78);max-width:620px;}
.auth-checks{display:grid;gap:.65rem;margin:1.4rem 0 0;padding:0;list-style:none;}
.auth-checks li{display:flex;gap:.7rem;align-items:center;color:#f8f3e7;font-weight:850;}
.auth-checks li:before{content:"✓";display:grid;place-items:center;width:26px;height:26px;border-radius:999px;background:rgba(212,166,74,.25);color:#ffd987;font-weight:950;}
.auth-panel{display:grid;place-items:center;padding:clamp(1.25rem,4vw,4rem);background:linear-gradient(180deg,rgba(255,253,248,.98),rgba(250,244,232,.96));}
.auth-card{width:min(520px,100%);background:rgba(255,255,255,.92);border:1px solid rgba(212,166,74,.26);border-radius:36px;padding:2rem;box-shadow:0 35px 100px rgba(16,36,31,.18);}
.auth-card .brand{margin-bottom:1.1rem;}
.auth-card h2{font-size:2.05rem;line-height:1;letter-spacing:-.045em;margin:.5rem 0 .45rem;}
.auth-card .muted{margin:0 0 1.25rem;}
.auth-note{display:grid;gap:.35rem;background:#fff8ea;border:1px solid rgba(212,166,74,.28);border-radius:20px;padding:1rem;margin:1rem 0;color:#52655e;font-size:.92rem;}
.auth-note strong{color:#173a31;}
.auth-card .btn{width:100%;margin-top:.4rem;}
.auth-back{display:inline-flex;margin-top:1rem;color:var(--brand);font-weight:900;}

.admin-page{background:radial-gradient(circle at top left,rgba(212,166,74,.13),transparent 28%),#f4efe6;}
.premium-admin-top{background:rgba(255,253,248,.94);backdrop-filter:blur(22px);box-shadow:0 12px 30px rgba(16,36,31,.06);}
.admin-header-actions{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;}
.admin-pro-layout{grid-template-columns:292px minmax(0,1fr);gap:1.35rem;padding-top:1.35rem;}
.admin-menu{background:rgba(255,253,248,.92);border-color:rgba(212,166,74,.25);padding:.85rem;box-shadow:0 22px 60px rgba(16,36,31,.1);max-height:calc(100vh - 105px);overflow:auto;}
.admin-menu-title{display:grid;gap:.15rem;padding:.75rem .85rem 1rem;border-bottom:1px solid rgba(212,166,74,.22);margin-bottom:.55rem;}
.admin-menu-title strong{font-size:1.05rem;color:#132f28;}
.admin-menu-title span{font-size:.82rem;color:var(--muted);}
.admin-menu a{display:flex;align-items:center;gap:.65rem;min-height:46px;border:1px solid transparent;}
.admin-menu a:hover,.admin-menu a:focus{border-color:rgba(15,91,67,.14);box-shadow:0 10px 24px rgba(16,36,31,.05);}
.admin-welcome{display:flex;justify-content:space-between;gap:1rem;align-items:center;background:linear-gradient(135deg,#102f28,#0f5b43);border-radius:34px;padding:1.6rem 1.75rem;color:white;box-shadow:0 30px 80px rgba(16,36,31,.22);position:relative;overflow:hidden;}
.admin-welcome:after{content:"";position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:rgba(212,166,74,.2);}
.admin-welcome>*{position:relative;z-index:1;}
.admin-welcome .eyebrow{color:#f8d989;}
.admin-welcome .eyebrow:before{background:#f8d989;}
.admin-welcome h1{margin:.35rem 0 .45rem;font-size:clamp(2rem,4vw,3.2rem);line-height:1;letter-spacing:-.055em;}
.admin-welcome p{margin:0;color:rgba(255,255,255,.78);max-width:720px;}
.admin-welcome-actions{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:flex-end;}
.admin-welcome-actions .btn-secondary{background:rgba(255,255,255,.96);}
.metric-grid{margin-top:1rem;}
.metric{position:relative;overflow:hidden;background:linear-gradient(180deg,#fff,#fff9ec);border-color:rgba(212,166,74,.28);}
.metric:after{content:"";position:absolute;right:-34px;bottom:-34px;width:106px;height:106px;border-radius:50%;background:rgba(15,91,67,.08);}
.metric strong,.metric span{position:relative;z-index:1;}
.admin-section h2{font-size:1.75rem;letter-spacing:-.04em;margin:.35rem 0 1rem;}
.admin-card{border-radius:28px;border-color:rgba(212,166,74,.25);background:rgba(255,253,248,.94);}
.admin-grid.two-cols{grid-template-columns:repeat(2,minmax(0,1fr));}
.admin-card h3{margin-top:0;font-size:1.2rem;letter-spacing:-.025em;}
.form label{font-weight:900;color:#203730;}
.form input,.form textarea,.form select,.inline-form select,.inline-form input{width:100%;border:1px solid rgba(15,91,67,.16);background:#fffdf8;border-radius:16px;padding:.78rem .85rem;outline:none;transition:.16s ease;}
.form input:focus,.form textarea:focus,.form select:focus,.inline-form select:focus,.inline-form input:focus{border-color:var(--brand);box-shadow:0 0 0 4px rgba(15,91,67,.1);}
.table-wrap{border-color:rgba(212,166,74,.22);}
th{background:#fbf2de;color:#114637;}
tbody tr:hover{background:#fffaf0;}
.inline-form button,.inline-delete button{min-height:38px;border-radius:13px;}
.bar-row{display:grid;grid-template-columns:140px 1fr 42px;gap:.75rem;align-items:center;margin:.65rem 0;}
.bar-row div{height:12px;border-radius:999px;background:#ecdfcc;overflow:hidden;}
.bar-row i{display:block;height:100%;border-radius:999px;background:linear-gradient(135deg,var(--brand),#2c8769);}
.flash{border-radius:18px;padding:.85rem 1rem;font-weight:850;margin-bottom:.75rem;}
.flash-success{background:#e8f4ed;color:#145642;border:1px solid rgba(20,86,66,.18);}
.flash-error{background:#fde9e7;color:#9f241d;border:1px solid rgba(159,36,29,.16);}

@media (max-width:930px){
  .premium-main-nav{max-height:calc(100vh - 100px);overflow:auto;overscroll-behavior:contain;}
  .nav-dropdown-menu,.nav-dropdown-menu.wide{max-height:none;overflow:visible;}
  .auth-layout{grid-template-columns:1fr;}
  .auth-visual{min-height:42vh;}
  .admin-pro-layout{grid-template-columns:1fr;}
  .admin-menu{position:sticky;top:78px;z-index:20;grid-template-columns:repeat(2,1fr);max-height:42vh;}
  .admin-menu-title{grid-column:1/-1;}
  .admin-welcome{display:grid;}
  .admin-welcome-actions{justify-content:flex-start;}
  .admin-grid.two-cols{grid-template-columns:1fr;}
}
@media (max-width:640px){
  .auth-visual{padding:2rem 1.1rem;}
  .auth-panel{padding:1rem;}
  .auth-card{padding:1.35rem;border-radius:28px;}
  .auth-visual h1{font-size:2.45rem;}
  .admin-top-inner{display:grid;gap:.75rem;}
  .admin-header-actions{width:100%;}
  .admin-header-actions .btn,.admin-header-actions form{flex:1;}
  .admin-header-actions form .btn{width:100%;}
  .admin-menu{grid-template-columns:1fr;position:static;max-height:none;}
  .admin-welcome{padding:1.25rem;border-radius:26px;}
  .bar-row{grid-template-columns:1fr;gap:.35rem;}
}

/* Responsive public et administration */
html{scroll-behavior:smooth;}
body{overflow-x:hidden;}
img,video,canvas,svg{max-width:100%;}
.site-header,.admin-top{isolation:isolate;}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:.85rem;flex-wrap:wrap;}
.footer-credit{display:inline-flex;align-items:center;gap:.3rem;color:#f1d88d;}
.footer-credit strong{color:#fff;font-weight:950;letter-spacing:.02em;}

.admin-top-v9{gap:1rem;}
.admin-brand{min-width:0;}
.admin-brand img{box-shadow:0 14px 38px rgba(16,36,31,.14);}
.admin-pro-layout{align-items:start;}
.admin-content{min-width:0;}
.admin-menu-v9{gap:.7rem;}
.admin-menu-section{display:grid;gap:.32rem;padding:.15rem 0 .35rem;}
.admin-menu-section + .admin-menu-section{border-top:1px solid rgba(212,166,74,.18);padding-top:.75rem;}
.admin-menu-section>span{padding:.15rem .85rem;color:#8a7354;font-weight:950;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;}
.admin-menu-v9 a{line-height:1.1;}
.metrics-v9 .metric{min-height:132px;display:grid;align-content:space-between;}
.admin-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;}
.admin-action-card{display:grid;gap:.35rem;min-height:118px;padding:1.15rem;border-radius:26px;background:rgba(255,253,248,.96);border:1px solid rgba(212,166,74,.24);box-shadow:var(--shadow-sm);color:#17352d;}
.admin-action-card strong{font-size:1.08rem;letter-spacing:-.02em;color:var(--brand);}
.admin-action-card span{color:var(--muted);font-weight:760;line-height:1.35;}
.admin-action-card:hover{transform:translateY(-2px);box-shadow:0 24px 62px rgba(16,36,31,.13);border-color:rgba(15,91,67,.25);}
.phase-card{overflow:hidden;}
.table-wrap{max-width:100%;}
.table-wrap table{white-space:normal;}
.table-wrap td,.table-wrap th{word-break:normal;}
.btn-mini{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:.48rem .72rem;border-radius:13px;background:#fff8ea;color:var(--brand);font-weight:950;border:1px solid rgba(212,166,74,.24);}
.auth-mini-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:1.25rem 0;}
.auth-mini-grid div{padding:1rem;border-radius:22px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(10px);}
.auth-mini-grid strong{display:block;color:#f8d989;font-weight:950;}
.auth-mini-grid span{display:block;margin-top:.25rem;color:rgba(255,255,255,.76);font-size:.88rem;line-height:1.25;}

@media (max-width:1120px){
  .container{width:min(100% - 36px,1200px);}
  .admin-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .admin-pro-layout{grid-template-columns:260px minmax(0,1fr);}
  .admin-grid.two-cols{grid-template-columns:1fr;}
}
@media (max-width:930px){
  .container{width:min(100% - 30px,1200px);}
  .site-header{top:0;}
  .nav-wrap{position:relative;}
  .premium-main-nav{top:calc(100% + 10px);left:0;right:0;width:100%;}
  .nav-parent span{margin-left:auto;}
  .nav-dropdown-menu a{padding:.75rem .85rem;}
  .hero-grid,.page-hero-grid,.split,.contact-layout,.adhesion-layout{gap:1rem;}
  .hero-copy,.page-hero-copy{min-width:0;}
  .hero-copy h1,.page-hero h1{font-size:clamp(2.25rem,9vw,4.4rem);}
  .hero-copy p,.page-hero p{font-size:1rem;}
  .domain-card,.project-card,.article-card,.admin-card,.premium-contact-card,.adhesion-side{border-radius:24px;padding:1.25rem;}
  .admin-pro-layout{grid-template-columns:1fr;}
  .admin-menu-v9{position:sticky;top:78px;z-index:22;display:flex;gap:.45rem;overflow-x:auto;overflow-y:hidden;max-height:none;border-radius:22px;padding:.6rem;scrollbar-width:thin;}
  .admin-menu-title{min-width:220px;border-bottom:0;margin-bottom:0;padding:.55rem .75rem;}
  .admin-menu-section{display:flex;align-items:center;gap:.35rem;min-width:max-content;border-top:0!important;padding:.15rem!important;}
  .admin-menu-section>span{display:none;}
  .admin-menu-v9 a{white-space:nowrap;min-height:42px;padding:.65rem .75rem;}
  .admin-welcome{border-radius:28px;}
  .form-grid.two,.form-grid.three{grid-template-columns:1fr 1fr;}
  .auth-mini-grid{grid-template-columns:1fr;}
}
@media (max-width:700px){
  .top-strip{display:none;}
  .container{width:min(100% - 24px,1200px);}
  .brand{gap:.65rem;}
  .brand strong{font-size:.98rem;}
  .brand small{font-size:.72rem;}
  .page-hero,.hero{padding:2.65rem 0 2.25rem;}
  .section{padding:2.7rem 0;}
  .hero-actions,.inline-actions,.admin-welcome-actions,.section-line{display:grid;grid-template-columns:1fr;align-items:stretch;}
  .hero-actions .btn,.inline-actions .btn,.admin-welcome-actions .btn,.section-line .btn{width:100%;}
  .footer-bottom{display:grid;text-align:left;}
  .footer-premium-grid{gap:1.15rem;}
  .footer{padding:2.3rem 0 1.1rem;}
  .auth-layout{display:block;}
  .auth-visual{min-height:auto;padding:2rem 1rem 1.25rem;}
  .auth-panel{display:block;padding:0 1rem 1.25rem;background:linear-gradient(180deg,rgba(255,253,248,.98),rgba(250,244,232,.96));}
  .auth-card{width:100%;}
  .admin-top-inner{display:grid;grid-template-columns:1fr;align-items:start;}
  .admin-header-actions{display:grid;grid-template-columns:1fr 1fr;}
  .admin-header-actions .btn,.admin-header-actions form,.admin-header-actions form button{width:100%;}
  .metric-grid,.metrics-v9,.admin-action-grid{grid-template-columns:1fr;}
  .metric{min-height:auto;}
  .admin-menu-v9{position:static;margin-top:.75rem;}
  .admin-menu-title{display:none;}
  .form-grid.two,.form-grid.three{grid-template-columns:1fr;}
  .inline-form,.inline-delete,.actions{display:grid;width:100%;}
  .inline-form button,.inline-delete button,.btn-mini{width:100%;}
  .table-wrap{border-radius:18px;}
  table{min-width:720px;}
}
@media (max-width:480px){
  .container{width:min(100% - 20px,1200px);}
  .brand img{width:42px;height:42px;border-radius:14px;}
  .nav-toggle{width:42px;height:42px;border-radius:14px;}
  .premium-main-nav{left:0;right:0;border-radius:22px;max-height:calc(100vh - 86px);}
  .nav-dropdown-menu a small{display:none;}
  .hero-card,.hero-card img,.page-hero-media,.page-hero-media img{min-height:220px;}
  .premium-stat strong{font-size:2rem;}
  .auth-logo{width:66px;height:66px;border-radius:22px;}
  .auth-visual h1{font-size:2.18rem;}
  .auth-card h2{font-size:1.72rem;}
  .admin-welcome h1{font-size:2rem;}
  .admin-section h2{font-size:1.45rem;}
  .admin-card,.auth-card{padding:1rem;border-radius:22px;}
}


/* Menu Partenaires et logos */
.partners-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;align-items:stretch;}
.premium-partner-card{display:grid;grid-template-rows:170px 1fr;overflow:hidden;border-radius:34px;background:linear-gradient(180deg,#fffdf8,#fff8e9);border:1px solid rgba(212,166,74,.28);box-shadow:var(--shadow-sm);transition:.2s ease;}
.premium-partner-card:hover{transform:translateY(-5px);box-shadow:0 34px 82px rgba(16,36,31,.15);border-color:rgba(15,91,67,.25);}
.partner-logo-box{display:grid;place-items:center;padding:1.3rem;background:linear-gradient(135deg,rgba(15,91,67,.08),rgba(212,166,74,.13));border-bottom:1px solid rgba(212,166,74,.18);}
.partner-logo-box img{max-width:100%;max-height:126px;object-fit:contain;border-radius:20px;filter:drop-shadow(0 12px 24px rgba(16,36,31,.12));}
.partner-card-body{display:grid;gap:.45rem;padding:1.25rem;align-content:start;}
.partner-card-body span{display:inline-flex;width:max-content;max-width:100%;border-radius:999px;padding:.32rem .68rem;background:#fff1d0;color:var(--brand);font-weight:950;font-size:.78rem;}
.partner-card-body h3{margin:.15rem 0 0;font-size:1.25rem;line-height:1.1;letter-spacing:-.025em;color:#17352d;}
.partner-card-body p{margin:0;color:var(--muted);line-height:1.55;}
.partner-card-body a{margin-top:.45rem;color:var(--brand);font-weight:950;}
.partners-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.9rem;}
.partner-mini-card{display:flex;align-items:center;gap:.75rem;min-height:92px;padding:.8rem;border-radius:24px;background:#fffdf8;border:1px solid rgba(212,166,74,.24);box-shadow:var(--shadow-sm);color:#17352d;font-weight:950;}
.partner-mini-card:hover{transform:translateY(-2px);border-color:rgba(15,91,67,.24);box-shadow:0 20px 54px rgba(16,36,31,.11);}
.partner-mini-card img{width:68px;height:52px;object-fit:contain;border-radius:16px;background:#fff8e9;padding:.25rem;flex:0 0 auto;}
.partner-mini-card span{line-height:1.15;}
.partner-cta-panel{background:radial-gradient(circle at 15% 10%,rgba(212,166,74,.22),transparent 32%),linear-gradient(135deg,#0f5b43,#17352d);}
.admin-partner-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;}
.admin-partner-card{display:grid;grid-template-columns:92px 1fr auto;gap:.85rem;align-items:center;padding:.9rem;border-radius:22px;background:#fff8e9;border:1px solid rgba(212,166,74,.24);}
.admin-partner-card img{width:92px;height:68px;object-fit:contain;border-radius:16px;background:#fff;padding:.25rem;}
.admin-partner-card strong{display:block;color:#17352d;line-height:1.1;}
.admin-partner-card span{display:block;color:var(--brand);font-weight:950;font-size:.82rem;margin-top:.15rem;}
.admin-partner-card p{margin:.3rem 0 0;color:var(--muted);font-size:.9rem;line-height:1.35;}
.partner-admin-form{position:relative;overflow:hidden;}
.partner-admin-form:before{content:"";position:absolute;right:-60px;top:-70px;width:180px;height:180px;border-radius:50%;background:rgba(212,166,74,.12);pointer-events:none;}
@media (max-width:1120px){.partners-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.partners-strip{grid-template-columns:repeat(3,minmax(0,1fr));}.admin-partner-grid{grid-template-columns:1fr;}}
@media (max-width:700px){.partners-grid,.partners-strip{grid-template-columns:1fr;}.premium-partner-card{grid-template-rows:145px 1fr;border-radius:26px;}.partner-mini-card{min-height:82px;}.admin-partner-card{grid-template-columns:1fr;align-items:start;}.admin-partner-card img{width:100%;height:96px;}.admin-partner-card .inline-delete{width:100%;}}

/* V12 production responsive premium */
:root{--safe-x:clamp(14px,4vw,32px);}
html{font-size:16px;-webkit-text-size-adjust:100%;}
body{min-width:320px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}
.container{max-width:1200px;}
main{overflow:hidden;}
input,select,textarea,button{min-width:0;}
.form input,.form textarea,.form select{font-size:16px;}
.btn{min-height:44px;text-align:center;}
.site-header{box-shadow:0 10px 30px rgba(16,36,31,.05);}
.premium-main-nav{min-width:0;}
.nav-parent span{transition:transform .18s ease;}
.nav-group.is-open>.nav-parent span{transform:rotate(180deg);}
.nav-dropdown-menu a{outline:none;}
.nav-dropdown-menu a:focus-visible,.nav-link:focus-visible,.nav-parent:focus-visible,.nav-cta:focus-visible,.btn:focus-visible{box-shadow:0 0 0 4px rgba(15,91,67,.14);}
.hero-copy,.page-hero-copy,.section-heading,.article-card{min-width:0;}
.hero-copy h1,.page-hero h1,.section-heading h2,.admin-welcome h1{overflow-wrap:anywhere;}
.lead,p,li,td,th{overflow-wrap:anywhere;}
.project-card,.article-card,.domain-card,.premium-partner-card,.achievement-card,.admin-card{min-width:0;}
.table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch;}
table{white-space:normal;}
.footer-premium-grid{align-items:start;}
.footer-links a,.footer-links span{line-height:1.35;}

.auth-card,.auth-visual-card,.admin-content,.admin-section{min-width:0;}
.admin-page .container{width:min(1280px,94vw);}
.admin-content{gap:1.4rem;}
.admin-section{background:rgba(255,253,248,.42);border:1px solid rgba(212,166,74,.18);border-radius:32px;padding:1rem;box-shadow:0 18px 48px rgba(16,36,31,.05);}
.admin-dashboard{background:transparent;border:0;box-shadow:none;padding:0;}
.admin-menu-v9 a{font-size:.94rem;}
.admin-header-actions .btn{white-space:nowrap;}
.admin-card{overflow:hidden;}
.admin-card .table-wrap{margin-top:.75rem;}
.admin-action-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;}
.admin-partner-card,.admin-action-card,.metric{min-width:0;}
.inline-form select,.inline-form input{min-width:130px;}
.inline-delete button,.inline-form button{white-space:nowrap;}
.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));}
.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));}

@media (min-width:931px){
  .premium-main-nav{flex-wrap:nowrap;}
  .nav-dropdown-menu{top:calc(100% + 14px);}
  .nav-group:after{height:28px;}
}
@media (max-width:1180px){
  .hero-grid{grid-template-columns:1fr .82fr;gap:2rem;}
  .partners-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
  .admin-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:1020px){
  .brand{min-width:180px;}
  .nav-link,.nav-parent,.nav-cta{font-size:.84rem;padding:.62rem .62rem;}
  .admin-pro-layout{grid-template-columns:250px minmax(0,1fr);}
  .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .admin-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:930px){
  .container,.admin-page .container{width:min(100% - 28px,1200px);}
  .site-header{top:0;}
  .premium-nav-wrap{position:relative;}
  .premium-main-nav{left:0;right:0;top:calc(100% + 10px);max-height:calc(100vh - 104px);overflow:auto;-webkit-overflow-scrolling:touch;padding:.75rem;border-radius:26px;}
  .premium-main-nav.open{display:grid;}
  .nav-group .nav-dropdown-menu,.nav-group .nav-dropdown-menu.wide{display:none!important;}
  .nav-group.is-open .nav-dropdown-menu,.nav-group.is-open .nav-dropdown-menu.wide{display:grid!important;}
  .nav-parent{background:#fff8ea;border:1px solid rgba(212,166,74,.24);}
  .nav-link,.nav-cta{min-height:48px;}
  .hero-grid,.page-hero-grid,.split,.editorial-grid,.contact-layout,.adhesion-layout,.article-grid{grid-template-columns:1fr!important;}
  .hero{padding:3.2rem 0 2.5rem;}
  .hero-copy h1{font-size:clamp(2.35rem,10vw,4.1rem);line-height:.96;}
  .page-hero h1{font-size:clamp(2.15rem,9vw,3.5rem);line-height:1;}
  .section-heading h2{font-size:clamp(1.85rem,7vw,2.8rem);line-height:1.04;}
  .hero-card,.hero-card img{min-height:300px;}
  .impact-grid,.domain-grid,.project-grid,.partners-grid,.partners-strip{grid-template-columns:repeat(2,minmax(0,1fr));}
  .split-heading{grid-template-columns:1fr;align-items:start;}
  .admin-top{position:sticky;top:0;}
  .admin-top-inner{display:grid;grid-template-columns:1fr;gap:.8rem;align-items:start;}
  .admin-header-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;}
  .admin-header-actions .btn,.admin-header-actions form,.admin-header-actions form button{width:100%;}
  .admin-pro-layout{grid-template-columns:1fr;gap:.9rem;}
  .admin-menu-v9{position:sticky;top:88px;z-index:25;display:flex;gap:.45rem;overflow-x:auto;overflow-y:hidden;max-height:none;padding:.55rem;border-radius:22px;scroll-snap-type:x proximity;}
  .admin-menu-title{display:none;}
  .admin-menu-section{display:flex;gap:.4rem;min-width:max-content;border-top:0!important;padding:0!important;}
  .admin-menu-section>span{display:none;}
  .admin-menu-v9 a{white-space:nowrap;scroll-snap-align:start;min-height:42px;padding:.65rem .78rem;background:#fff8ea;border-color:rgba(212,166,74,.22);}
  .admin-welcome{display:grid;padding:1.35rem;border-radius:28px;}
  .admin-section{padding:.85rem;border-radius:26px;}
  .admin-grid.two-cols,.form-grid.three{grid-template-columns:1fr 1fr;}
  .auth-layout{grid-template-columns:1fr;min-height:auto;}
  .auth-visual{min-height:auto;padding:2.5rem var(--safe-x);}
  .auth-panel{padding:1.5rem var(--safe-x) 2rem;}
  .auth-mini-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media (max-width:700px){
  .container,.admin-page .container{width:min(100% - 22px,1200px);}
  .top-strip{display:none;}
  .brand{gap:.65rem;}
  .brand small{display:none;}
  .brand img{width:44px;height:44px;}
  .premium-main-nav{border-radius:22px;max-height:calc(100vh - 88px);}
  .hero-actions,.inline-actions,.admin-welcome-actions,.section-line{display:grid;grid-template-columns:1fr;align-items:stretch;}
  .hero-actions .btn,.inline-actions .btn,.admin-welcome-actions .btn,.section-line .btn{width:100%;}
  .impact-grid,.domain-grid,.project-grid,.people-grid,.process-grid,.all-projects,.premium-news-grid,.premium-commune-grid,.achievement-grid,.premium-gallery-grid-full,.gallery-grid,.partners-grid,.partners-strip,.metric-grid,.metrics-v9,.admin-action-grid,.admin-grid.two-cols,.form-grid.two,.form-grid.three{grid-template-columns:1fr!important;}
  .section{padding:3rem 0;}
  .premium-stat,.domain-card,.project-card,.article-card,.admin-card,.premium-contact-card,.adhesion-side,.premium-partner-card{border-radius:24px;padding:1.15rem;}
  .cta-panel{padding:1.25rem;border-radius:26px;}
  .news-line{grid-template-columns:82px 1fr;gap:.75rem;}
  .news-line img{width:82px;height:70px;}
  .footer-bottom{display:grid;gap:.35rem;text-align:left;}
  .auth-visual h1{font-size:2.35rem;}
  .auth-mini-grid{grid-template-columns:1fr;}
  .auth-checks li{align-items:flex-start;}
  .auth-card{border-radius:26px;padding:1.2rem;}
  .admin-header-actions{grid-template-columns:1fr;}
  .admin-menu-v9{position:static;margin-top:.45rem;}
  .admin-welcome h1{font-size:2rem;}
  .metric strong{font-size:1.9rem;}
  .inline-form,.inline-delete,.actions{display:grid;width:100%;align-items:stretch;}
  .inline-form select,.inline-form input,.inline-form button,.inline-delete button,.btn-mini{width:100%;min-width:0;}
  table{min-width:760px;}
  th,td{padding:.7rem;}
  .admin-partner-card{grid-template-columns:1fr;}
  .admin-partner-card img{width:100%;height:92px;}
}
@media (max-width:420px){
  .container,.admin-page .container{width:min(100% - 18px,1200px);}
  .hero-copy h1{font-size:2.15rem;}
  .page-hero h1{font-size:2rem;}
  .section-heading h2{font-size:1.75rem;}
  .hero-card,.hero-card img,.page-hero-media,.page-hero-media img{min-height:210px;}
  .floating-card{left:.75rem;right:.75rem;bottom:.75rem;border-radius:18px;padding:.85rem;}
  .admin-section{padding:.65rem;border-radius:20px;}
  .admin-card,.auth-card{padding:.95rem;border-radius:20px;}
}
