.age-catalogue{--ocean:#076f96;--deep:#064a72;--cyan:#00cde5;--mist:#eaf8fc;font-family:inherit;color:#073f62;background:linear-gradient(180deg,#d8f3fa 0%,#f6fcfe 45%,#fff 100%);position:relative;isolation:isolate}.age-catalogue *{box-sizing:border-box}.age-hero{min-height:310px;background:linear-gradient(90deg,rgba(235,250,253,.96) 0%,rgba(235,250,253,.85) 34%,rgba(235,250,253,.05) 74%),url('banniere-age-2027.png') center 43%/cover no-repeat;display:flex;align-items:center}.age-hero-content{width:min(1280px,92%);margin:auto;padding:35px 0}.age-eyebrow{letter-spacing:.22em;font-size:13px;font-weight:700;color:#07577b}.age-hero h1{font-size:clamp(36px,5vw,65px);line-height:1.1;color:#074e72;font-weight:800;margin:12px 0 8px}.age-hero-line{display:block;width:105px;height:5px;background:#08bcd7;border-radius:9px}.age-hero p{max-width:590px;font-size:17px;line-height:1.55;margin-top:14px}.age-inner{max-width:1320px;margin:auto;padding:0 24px 80px}.age-categories{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;margin:-22px 0 24px;position:relative;z-index:1}.age-cat{min-height:94px;border:1px solid rgba(9,124,162,.14);border-radius:16px;background:rgba(255,255,255,.83);box-shadow:0 8px 22px rgba(5,87,121,.1);color:#075078;font-size:14px;font-weight:700;cursor:pointer;padding:12px 6px;transition:.2s}.age-cat-icon{display:block;font-size:26px;margin-bottom:7px}.age-cat:hover,.age-cat:focus-visible{transform:translateY(-3px);border-color:#00bcd7}.age-cat.is-active{color:#fff;background:linear-gradient(135deg,#0786a9,#05b5cc);border-color:#00d5eb;box-shadow:0 7px 22px rgba(0,171,203,.25)}.age-tools{display:flex;align-items:center;gap:22px;margin:20px 0 26px}.age-search-wrap{flex:1;display:flex;align-items:center;border:1px solid #7dd7e9;background:#fff;border-radius:30px;padding:9px 18px;box-shadow:0 4px 13px rgba(0,124,163,.1)}.age-search-wrap span{font-size:29px;line-height:1;margin-right:12px}.age-search{border:0!important;background:transparent!important;outline:0!important;box-shadow:none!important;width:100%;padding:4px!important;font-size:14px;color:#074e72}.age-count{white-space:nowrap;font-size:13px;font-weight:700}.age-reset{border:1px solid #80b9d0;background:rgba(255,255,255,.85);color:#075078;border-radius:24px;padding:11px 17px;cursor:pointer}.age-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.age-card{border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 9px 25px rgba(4,92,130,.13);border:1px solid rgba(3,133,171,.1);transition:.2s}.age-card:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(4,92,130,.18)}.age-card-open{width:100%;height:100%;text-align:left;padding:0;background:none;border:0;cursor:pointer;color:inherit;display:flex;flex-direction:column;font:inherit}.age-card-media{aspect-ratio:4/3;background:linear-gradient(135deg,#c7f1f8,#83cfe1);overflow:hidden;display:grid;place-items:center}.age-card-media img{width:100%;height:100%;object-fit:cover}.age-placeholder{font-size:75px;color:#fff}.age-card-body{padding:16px;display:flex;flex:1;flex-direction:column}.age-pill{font-size:10px;font-weight:800;letter-spacing:.05em;color:white;background:linear-gradient(90deg,#047aa4,#00b9cf);padding:4px 10px;border-radius:15px;align-self:flex-start;text-transform:uppercase}.age-card h3{font-size:18px;line-height:1.2;margin:10px 0 7px;color:#064a72;font-weight:800}.age-card p{font-size:13px;line-height:1.5;margin:0 0 16px}.age-card-foot{display:flex;justify-content:space-between;align-items:center;margin-top:auto;font-size:12px;font-weight:700}.age-arrow{width:30px;height:30px;border-radius:50%;background:#1bd0e1;display:grid;place-items:center;font-size:24px}.age-empty{text-align:center;padding:36px}.age-pages{display:flex;gap:8px;justify-content:center;margin:30px 0}.age-pages button{border:1px solid #9ccbdc;border-radius:50%;background:#fff;color:#075078;width:36px;height:36px;cursor:pointer}.age-pages button.is-active{background:#00bdd5;color:#fff;border-color:#00bdd5}.age-modal[hidden],.age-card[hidden],.age-empty[hidden]{display:none!important}.age-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:18px}.age-modal-backdrop{position:absolute;inset:0;background:rgba(2,45,70,.64);backdrop-filter:blur(5px)}.age-modal-dialog{position:relative;max-width:780px;width:100%;max-height:90vh;overflow:auto;border-radius:22px;background:#fff;box-shadow:0 20px 70px rgba(0,32,53,.35);outline:0}.age-modal-close{position:absolute;right:14px;top:12px;z-index:2;border:0;border-radius:50%;width:40px;height:40px;background:#fff;color:#064a72;font-size:30px;cursor:pointer}.age-modal-images{background:linear-gradient(120deg,#c4eef6,#73c4d9);position:relative;min-height:200px}.age-modal-images img{width:100%;height:290px;object-fit:cover;display:block}.age-gallery-controls{position:absolute;bottom:12px;right:12px;display:flex;gap:8px}.age-gallery-controls button{border:0;background:#fff;color:#075078;border-radius:50%;width:36px;height:36px;cursor:pointer}.age-modal-body{padding:28px 32px 34px}.age-modal-category{font-size:12px;color:#008eae;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.age-modal-title{font-size:clamp(25px,4vw,35px);color:#064a72;margin:7px 0 15px;font-weight:800}.age-modal-description{line-height:1.65;font-size:15px}.age-modal-location{padding:16px 0;border-top:1px solid #c5e4ed;border-bottom:1px solid #c5e4ed;margin:18px 0;font-weight:700}.age-modal-tags,.age-modal-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.age-modal-tags span{border-radius:20px;background:#d9f1f8;padding:7px 12px;font-size:12px;font-weight:600}.age-modal-links a{background:#078fb0;color:#fff!important;text-decoration:none;padding:9px 15px;border-radius:20px;font-size:13px}.age-modal-links a:hover{background:#075878}@media(max-width:1000px){.age-categories{grid-template-columns:repeat(4,1fr)}.age-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:700px){.age-hero{min-height:250px;background-position:58% center}.age-hero-content{padding:30px 0}.age-hero p{font-size:14px;max-width:85%}.age-eyebrow{font-size:10px}.age-inner{padding:0 15px 50px}.age-categories{display:flex;overflow-x:auto;gap:9px;padding-bottom:8px;scroll-snap-type:x mandatory}.age-cat{flex:0 0 125px;min-height:75px;scroll-snap-align:start;font-size:12px}.age-cat-icon{font-size:21px;margin-bottom:4px}.age-tools{flex-wrap:wrap;gap:10px}.age-search-wrap{flex-basis:100%}.age-count{flex:1}.age-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.age-card-body{padding:11px}.age-card h3{font-size:14px}.age-card p{font-size:12px}.age-card-foot{font-size:10px}.age-modal-body{padding:20px}.age-modal-images img{height:220px}}@media(max-width:390px){.age-grid{grid-template-columns:1fr}}

/* Version 1.2 : cadrage homogène, sans déformation des photos */
.age-card-media img,.age-modal-images img{object-fit:cover;object-position:center}.age-card-media{aspect-ratio:4/3}.age-cat{white-space:normal}
