:root{--red:#d7242c;--ink:#11110f;--paper:#f3f0e9;--muted:#77736b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,Arial,sans-serif}a{color:inherit;text-decoration:none}.site-header{height:82px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;position:absolute;z-index:10;width:100%;color:#fff;border-bottom:1px solid #ffffff24}.brand{display:flex;gap:12px;align-items:center}.brand-mark{width:40px;height:40px;border:1px solid var(--red);display:grid;place-items:center;color:var(--red);font-size:20px}.brand b,.brand small{display:block;line-height:1}.brand b{font:700 20px/1 Barlow Condensed}.brand small{font:600 9px/1.5 Inter;letter-spacing:.2em}.site-header nav{display:flex;align-items:center;gap:32px;font-size:13px;font-weight:600}.site-header nav a:not(.nav-cta):hover{color:#ff5c62}.nav-cta{background:var(--red);padding:14px 20px}.menu{display:none;border:0;background:none;color:#fff;font-size:24px}.hero{height:min(900px,95vh);min-height:720px;background:#111 url('hero-karate.png') center/cover no-repeat;position:relative;color:#fff;display:flex;align-items:center;padding:100px 8vw 70px}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#080807f2 0%,#11110fba 32%,transparent 72%),linear-gradient(0deg,#090909b0 0%,transparent 35%)}.hero-content{position:relative;max-width:680px}.eyebrow{text-transform:uppercase;letter-spacing:.28em;font-size:11px;font-weight:600}.eyebrow:before{content:"";display:inline-block;width:34px;height:2px;background:var(--red);margin:0 13px 3px 0}.red{color:var(--red)}h1,h2,h3{font-family:Barlow Condensed,Arial,sans-serif;margin:0}h1{font-size:clamp(72px,8.6vw,138px);line-height:.78;letter-spacing:-.035em;text-transform:uppercase;margin:34px 0}h1 em,h2 em{font-style:normal;color:var(--red)}.lead{font-size:17px;line-height:1.7;max-width:550px;color:#d5d3ce}.actions{display:flex;gap:12px;margin-top:35px}.btn{display:inline-flex;justify-content:center;align-items:center;padding:17px 24px;text-transform:uppercase;letter-spacing:.08em;font:600 12px Inter}.primary{background:var(--red)}.ghost{border:1px solid #ffffff66}.hero-stats{position:absolute;right:5vw;bottom:38px;display:flex;gap:52px}.hero-stats div{display:flex;flex-direction:column}.hero-stats strong{font:600 30px Barlow Condensed}.hero-stats span{color:#bdb9b1;font-size:10px;text-transform:uppercase;letter-spacing:.15em}.section{padding:110px 7vw}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:60px}.section-head h2,.club h2{font-size:clamp(55px,6vw,90px);line-height:.88;text-transform:uppercase}.section-head>p{max-width:440px;color:var(--muted);line-height:1.7;font-size:14px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d8d4cb}.discipline{background:#e9e6de;padding:36px;min-height:390px;position:relative;transition:.3s}.discipline>span{color:#aaa59b;font:600 12px Inter}.discipline h3{font-size:34px;text-transform:uppercase;margin:35px 0 15px}.discipline p{color:var(--muted);line-height:1.7;font-size:14px}.discipline a{position:absolute;bottom:35px;color:var(--red);text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.12em}.discipline.active,.discipline:hover{background:var(--ink);color:#fff;transform:translateY(-10px)}.discipline.active p,.discipline:hover p{color:#aaa}.line-art{position:absolute;right:28px;top:18px;color:#c6c1b7;font:500 100px serif;opacity:.45}.discipline.active .line-art,.discipline:hover .line-art{color:#542328}.quote-band{background:var(--red);color:#fff;text-align:center;padding:62px 20px}.quote-band p{font:500 clamp(28px,3vw,50px)/1.15 Barlow Condensed;margin:0;text-transform:uppercase}.quote-band em{font-style:normal;color:#401014}.schedule{background:#fff}.schedule-grid{border-top:1px solid #ddd8d0}.day{display:grid;grid-template-columns:80px 1fr;border-bottom:1px solid #ddd8d0;padding:18px 10px;gap:25px}.day>b{color:var(--red);font:700 22px Barlow Condensed;padding-top:12px}.day article{display:grid;grid-template-columns:90px 1fr;padding:10px 16px;border-left:2px solid transparent}.day.featured article{border-left-color:var(--red)}time{font:600 22px Barlow Condensed}.day strong,.day span{display:block}.day strong{font:600 15px Inter}.day span{font-size:11px;color:var(--muted);margin-top:6px}.fine{font-size:10px;color:#999;margin-top:18px}.club{min-height:650px;background:var(--ink);color:#fff;padding:110px 8vw;position:relative;overflow:hidden;display:flex;align-items:center}.club-copy{max-width:650px;position:relative;z-index:2}.club-copy>p:not(.eyebrow){color:#aaa;line-height:1.8;max-width:580px}.text-link{display:inline-block;color:#ff4c52;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:600;margin-top:22px}.kanji{position:absolute;right:5vw;bottom:-140px;color:#1f1f1d;font:600 570px/1 serif}.dark{color:var(--ink)}.news-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px}.news article small{display:block;color:var(--red);text-transform:uppercase;letter-spacing:.14em;margin:20px 0 10px;font-size:9px}.news article h3{font-size:27px;text-transform:uppercase}.news-visual{height:280px;background:#1b1b19;color:#ffffff15;display:grid;place-items:center;font:700 clamp(40px,5vw,80px) Barlow Condensed;overflow:hidden}.n1{background:linear-gradient(140deg,#10100f,#502429)}.n2{background:linear-gradient(140deg,#d9d4c9,#8d8577);color:#ffffff55}.n3{background:linear-gradient(140deg,#6a171c,#d7242c)}.contact{background:var(--red);padding:70px 8vw;color:#fff;display:flex;align-items:center;justify-content:space-between}.contact h2{font-size:clamp(50px,6vw,86px);text-transform:uppercase}.contact p{margin:8px 0;color:#ffd3d5}.contact-actions{display:flex;gap:10px}.light{background:#fff;color:var(--red)}.outline-light{border:1px solid #ffffff80}footer{padding:50px 7vw;background:#0c0c0b;color:#777;display:flex;align-items:center;justify-content:space-between;font-size:11px}.reveal{opacity:0;transform:translateY(20px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.site-header{height:70px}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:#111;padding:24px;flex-direction:column}.site-header nav.open{display:flex}.menu{display:block}.hero{min-height:760px;padding:100px 6vw}.hero-shade{background:linear-gradient(90deg,#090908ed,#11110fa1),linear-gradient(0deg,#090909c9,transparent)}h1{font-size:68px}.hero-stats{left:6vw;right:auto;gap:25px}.hero-stats strong{font-size:24px}.section{padding:75px 6vw}.section-head{display:block}.section-head>p{margin-top:25px}.cards,.news-grid{grid-template-columns:1fr}.discipline{min-height:330px}.schedule-grid{overflow:hidden}.day{grid-template-columns:50px 1fr;gap:5px}.day article{grid-template-columns:65px 1fr;padding-right:0}.club{padding:80px 6vw}.kanji{font-size:340px;opacity:.6}.contact{display:block}.contact-actions{margin-top:30px;flex-wrap:wrap}footer{flex-direction:column;align-items:flex-start;gap:22px}.news-grid article:first-child .news-visual{height:280px}}

/* VARIANTE AZUR — palette méditerranéenne et mouvement */
:root{--red:#087dcc;--ink:#061c31;--paper:#f4faff;--muted:#5f7485;--cyan:#16c4e8;--deep:#043c75}
body{background:linear-gradient(180deg,#f9fcff 0%,#edf7ff 48%,#fff 100%)}
.site-header{background:linear-gradient(180deg,#031c35b5,transparent);backdrop-filter:blur(4px)}
.brand-mark{border-radius:50%;background:linear-gradient(135deg,#fff,#90e8ff);color:#046eb2;border:0;box-shadow:0 0 24px #28c9ff66}
.nav-cta{background:linear-gradient(135deg,#087dcc,#16c4e8);border-radius:4px;box-shadow:0 10px 30px #0078c955}
.hero{background-color:#05335e;isolation:isolate;overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;background:inherit;filter:saturate(.65) contrast(1.08) hue-rotate(165deg);z-index:-2}
.hero-shade{background:linear-gradient(90deg,#031a35f7 0%,#064779c7 38%,#087dcc22 76%),linear-gradient(0deg,#021a36d9 0%,transparent 46%);z-index:-1}
.hero:after{content:"";position:absolute;inset:auto -10% -35% -10%;height:55%;background:radial-gradient(ellipse at center,#14d1f06e,transparent 66%);filter:blur(35px);z-index:-1}
.hero-content{z-index:2}.hero h1{font-weight:800;text-shadow:0 10px 45px #00172b80}.hero h1 em{background:linear-gradient(90deg,#fff,#63dfff);-webkit-background-clip:text;background-clip:text;color:transparent}.hero .lead{color:#dff6ff}
.eyebrow:before{background:linear-gradient(90deg,#18dbf4,#fff);box-shadow:0 0 12px #19d8f4}.primary{background:linear-gradient(135deg,#0782da,#14c9e9);border-radius:4px;box-shadow:0 14px 35px #0085d65c;transition:.25s}.primary:hover{transform:translateY(-3px);box-shadow:0 18px 45px #00a7e57d}.ghost{border-radius:4px;backdrop-filter:blur(10px);background:#ffffff0c}
.hero-orbit{position:absolute;border:1px solid #5be4ff44;border-radius:50%;pointer-events:none;animation:float 7s ease-in-out infinite}.orbit-one{width:330px;height:330px;right:8%;top:20%}.orbit-two{width:500px;height:500px;right:-8%;top:8%;animation-delay:-3s}@keyframes float{50%{transform:translateY(-18px) rotate(8deg);opacity:.45}}
.hero-stats{padding:18px 26px;border:1px solid #b8efff33;border-radius:18px;background:#002d5266;backdrop-filter:blur(14px)}.hero-stats strong{color:#73e5ff}
.intro{position:relative}.intro:before{content:"道";font-family:'Yuji Syuku',cursive;position:absolute;right:2%;top:1%;font-size:260px;color:#087dcc0a;transform:rotate(-11deg)}
.section-head h2,.club h2{letter-spacing:-.025em}.section-head h2 em,.club h2 em{background:linear-gradient(90deg,#087dcc,#11c2e3);-webkit-background-clip:text;background-clip:text;color:transparent}
.cards{background:transparent;gap:18px}.discipline{background:#fff;border:1px solid #d8edfa;border-radius:24px;box-shadow:0 15px 45px #064a7b0d;overflow:hidden}.discipline:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,#087dcc,#22d3ec);transform:scaleX(0);transform-origin:left;transition:.35s}.discipline:hover:before,.discipline.active:before{transform:scaleX(1)}.discipline.active,.discipline:hover{background:linear-gradient(145deg,#052c53,#087dca);box-shadow:0 24px 55px #046cad38}.line-art{font-family:'Yuji Syuku',cursive;color:#087dcc33;transform:rotate(-8deg)}.discipline.active .line-art,.discipline:hover .line-art{color:#8aeaff38}
.quote-band{position:relative;overflow:hidden;background:linear-gradient(105deg,#032e59,#087dcc 58%,#12bedf)}.quote-band:after{content:"";position:absolute;width:500px;height:500px;border:1px solid #fff2;border-radius:50%;right:-130px;top:-215px}.quote-band p{position:relative;z-index:2}.quote-band em{color:#a5efff}.brush-mark{font-family:'Yuji Syuku',cursive;position:absolute;left:4%;top:-95px;color:#fff0;font-size:300px;-webkit-text-stroke:1px #ffffff25;transform:rotate(-12deg)}
.schedule{background:linear-gradient(145deg,#fff,#eef8ff)}.day{transition:.25s;border-color:#d6e9f5}.day:hover{background:#fff;transform:translateX(8px);box-shadow:0 12px 35px #07588e10}.day.featured article{border-left-color:#16bedd}.day>b{color:#087dcc}
.club{background:radial-gradient(circle at 85% 40%,#0879bd 0,#063a6c 26%,#041d38 65%,#03162a 100%)}.club:before{content:"";position:absolute;width:600px;height:600px;border:1px solid #49d8ef33;border-radius:50%;right:3%;top:2%}.kanji{font-family:'Yuji Syuku',cursive;color:#ffffff0b;right:7%;bottom:-80px;transform:rotate(-8deg);font-weight:400}.text-link{color:#3ddff1}.n1{background:linear-gradient(140deg,#06233e,#087dbf)}.n2{background:linear-gradient(140deg,#dff6ff,#61b9de);color:#ffffff88}.n3{background:linear-gradient(140deg,#075ba0,#13c4df)}
.contact{background:linear-gradient(120deg,#04386c,#087fca 55%,#18c4de);position:relative;overflow:hidden}.contact:after{content:"氣";font-family:'Yuji Syuku',cursive;position:absolute;right:2%;top:-100px;font-size:270px;color:#ffffff0e;transform:rotate(10deg)}.contact>div{position:relative;z-index:2}.light{color:#087dcc;border-radius:4px}.outline-light{border-radius:4px}footer{background:#02172c}.red{color:#087dcc}
@media(max-width:800px){.site-header nav{background:#042540}.hero h1{font-size:59px}.hero-shade{background:linear-gradient(90deg,#031b35ee,#0753849c),linear-gradient(0deg,#021a36db,transparent)}.hero-orbit{display:none}.hero-stats{left:4vw;right:4vw;gap:18px;padding:14px}.intro:before{font-size:150px}.cards{gap:14px}.quote-band{padding:55px 18px}.brush-mark{font-size:190px;left:-20px}.kanji{font-size:310px;right:-20px}.contact:after{font-size:180px}}

/* Corrections de lisibilité — accroche et planning */
.hero h1{line-height:.9;margin:30px 0 34px}
.schedule-grid{display:grid;gap:12px;border-top:0}
.day{grid-template-columns:92px 1fr;gap:0;padding:0;border:1px solid #d6e9f5;border-radius:10px;background:#fff;overflow:hidden;box-shadow:0 7px 22px #07588e0b}
.day:hover{background:#fff;transform:translateX(6px);border-color:#8dd4ef;box-shadow:0 14px 32px #07588e18}
.day>b{display:flex;align-items:center;justify-content:center;padding:20px 12px;background:linear-gradient(145deg,#063d72,#087fc2);color:#fff;font-size:24px;letter-spacing:.06em}
.day>b{grid-column:1;grid-row:1 / span 10}
.day.featured>b{background:linear-gradient(145deg,#087dcc,#17bddb)}
.day article,.day.featured article{grid-template-columns:88px minmax(0,1fr);align-items:center;padding:15px 22px;border-left:0;border-bottom:1px solid #e5f0f7}
.day article,.day.featured article{grid-column:2}
.day article:last-child{border-bottom:0}
.day time{color:#0875ba;font-size:25px;font-weight:700}
.day strong{color:#102d43;font-size:14px;line-height:1.35}
.day span{color:#647b8c;font-size:11px;line-height:1.45}
.fine{margin-left:104px}
@media(max-width:800px){.hero h1{font-size:56px;line-height:.94;margin:26px 0 30px}.day{display:block;border-radius:8px}.day>b{justify-content:flex-start;padding:10px 16px;font-size:19px}.day article,.day.featured article{grid-template-columns:68px minmax(0,1fr);padding:14px 15px}.day time{font-size:21px}.day strong{font-size:13px}.day span{font-size:10px}.fine{margin-left:0}}

/* Partenaires */
.partners{position:relative;background:linear-gradient(145deg,#eef8ff,#fff 55%);overflow:hidden}.partners:before{content:"縁";font-family:'Yuji Syuku',cursive;position:absolute;right:-30px;top:-100px;font-size:330px;color:#087dcc08;transform:rotate(9deg)}.partner-board{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(500px,1.65fr);gap:18px;position:relative}.partner-featured{min-height:390px;padding:38px;background:linear-gradient(145deg,#042c56,#087ab9);color:#fff;border-radius:12px;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 22px 45px #064f842c}.partner-featured:after{content:"";position:absolute;width:220px;height:220px;border:1px solid #72e5f044;border-radius:50%;left:250px;top:45px}.partner-type{font-size:9px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:#6a8294}.partner-featured .partner-type{color:#8cecff}.partner-featured p{font-size:13px;line-height:1.7;color:#d3edfa;max-width:390px}.logo-placeholder{display:flex;align-items:center;gap:12px}.logo-placeholder b{font:800 34px/1 Barlow Condensed;color:#0878ba}.logo-placeholder small{font-size:8px;line-height:1.35;letter-spacing:.12em;color:#7890a0}.logo-gear{min-height:120px;margin:32px 0 20px;padding:20px 25px;border:1px dashed #8eeafb66;background:#ffffff0b}.logo-gear b{font-size:46px;color:#fff}.logo-gear small{color:#8eeafb}.partner-featured .text-link{margin-top:auto}.partner-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.partner-card{min-height:185px;padding:25px;background:#fff;border:1px solid #d8eaf5;border-radius:12px;display:flex;flex-direction:column;justify-content:space-between;position:relative;transition:.25s;box-shadow:0 10px 28px #07588e0b}.partner-card:hover{transform:translateY(-5px);border-color:#8ed7ef;box-shadow:0 18px 36px #07588e1a}.external{position:absolute;right:22px;top:20px;color:#0a85c8}.partner-card .logo-placeholder{margin-top:20px}.partner-card .logo-placeholder b{font-size:38px}.partner-card.become{background:linear-gradient(135deg,#eefaff,#dbf6ff);justify-content:center;align-items:flex-start;border-style:dashed}.become>span{font:300 38px/1 Inter;color:#0781c4}.become strong{font:600 24px Barlow Condensed;text-transform:uppercase;color:#073a62;margin:9px 0}.become small{color:#658195;line-height:1.5}.partner-note{font-size:9px;color:#8ca0ae;margin-top:18px}
@media(max-width:900px){.partner-board{grid-template-columns:1fr}.partner-featured{min-height:330px}.partner-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.partner-list{grid-template-columns:1fr}.partner-card{min-height:155px}.partner-featured{padding:28px}.partner-featured:after{display:none}}
.partner-featured{position:relative;overflow:hidden}
.partner-featured h3{font-size:34px;line-height:.95;text-transform:uppercase;margin:20px 0 25px}.equipment-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;position:relative;z-index:2}.equipment-card{min-width:0}.equipment-card .logo-gear{min-height:92px;margin:0;padding:14px;border-style:solid;background:#ffffff10;transition:.25s}.equipment-card:hover .logo-gear{background:#ffffff1d;border-color:#8eeafb}.equipment-card .logo-gear b{font-size:28px}.equipment-card>span{display:block;margin-top:8px;color:#8eeafb;font-size:8px;text-transform:uppercase;letter-spacing:.1em}.add-equipment{min-height:54px;grid-column:1 / -1;border:1px dashed #8eeafb66;display:flex;align-items:center;justify-content:center;gap:10px;color:#a8eff9}.add-equipment b{font:300 24px Inter}.add-equipment span{margin:0;font-size:8px;letter-spacing:.12em}.partner-featured>p{margin-top:22px}.partner-featured:after{pointer-events:none}
.equipment-card .logo-gear img{display:block;width:100%;height:72px;object-fit:contain;background:#fff;padding:10px;border-radius:3px}.social-links svg{width:19px;height:19px;display:block;flex:0 0 19px;fill:currentColor}
.equipment-excerpt{display:-webkit-box!important;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:9px 0 7px!important;color:#d3edfa!important;font-size:10px!important;line-height:1.45!important;min-height:29px}.partner-card{min-height:210px}.partner-card .logo-placeholder{height:68px;margin-top:12px}.partner-card .logo-placeholder img{display:block;max-width:100%;max-height:66px;width:auto;height:auto;object-fit:contain}.partner-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin:8px 0;color:#60798b;font-size:11px;line-height:1.45;min-height:32px}.partner-link{font-size:8px;text-transform:uppercase;letter-spacing:.1em;color:#087dcc}.partner-card.become{min-height:210px}.partner-card.become small{display:block}
@media(max-width:560px){.equipment-grid{grid-template-columns:1fr}.add-equipment{grid-column:auto}.partner-featured h3{font-size:30px}}

/* Galeries masonry et sous-galeries */
.gallery{background:#fff;position:relative;overflow:hidden}.gallery:before{content:"瞬";font-family:'Yuji Syuku',cursive;position:absolute;left:-35px;top:10px;font-size:290px;color:#087dcc07;transform:rotate(-10deg)}.gallery-filters{display:flex;gap:8px;flex-wrap:wrap;margin:-20px 0 38px}.gallery-filter{border:1px solid #cfe4f1;background:#f7fbfe;color:#526d80;padding:12px 17px;font:600 10px Inter;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:.2s}.gallery-filter:hover,.gallery-filter.active{background:linear-gradient(135deg,#086cad,#14bdd9);border-color:transparent;color:#fff;box-shadow:0 8px 20px #087ab52c}.masonry-gallery{columns:4 220px;column-gap:14px}.gallery-item{width:100%;margin:0 0 14px;padding:0;border:0;display:block;break-inside:avoid;position:relative;overflow:hidden;background-color:#07558b;background-image:url('hero-karate.png');background-size:auto 170%;cursor:pointer;text-align:left;color:#fff;isolation:isolate}.gallery-item:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#021c35df,transparent 58%),linear-gradient(135deg,#087dcc38,#1be1ed17);z-index:-1;transition:.4s}.gallery-item:after{content:"＋";position:absolute;right:18px;top:14px;font:300 24px Inter;opacity:0;transform:rotate(-30deg);transition:.3s}.gallery-item:hover:before{background:linear-gradient(0deg,#021c35ef,transparent 72%),linear-gradient(135deg,#087dcc22,#1be1ed00)}.gallery-item:hover:after{opacity:1;transform:rotate(0)}.gallery-item:hover{background-size:auto 180%}.gallery-item span{position:absolute;left:20px;right:20px;bottom:18px;transform:translateY(4px);transition:.3s}.gallery-item:hover span{transform:none}.gallery-item small,.gallery-item b{display:block}.gallery-item small{text-transform:uppercase;letter-spacing:.15em;color:#6ce5f1;font:600 8px Inter;margin-bottom:6px}.gallery-item b{font:600 23px Barlow Condensed;text-transform:uppercase}.gallery-item.tall{height:410px}.gallery-item.medium{height:300px}.gallery-item.short{height:230px}.gallery-item.hidden{display:none}.photo-1{background-position:65% 50%}.photo-2{background-position:77% 25%;filter:saturate(.85)}.photo-3{background-position:45% 65%}.photo-4{background-position:84% 70%;filter:contrast(1.08)}.photo-5{background-position:62% 28%;filter:saturate(.7)}.photo-6{background-position:95% 52%}.photo-7{background-position:72% 85%;filter:contrast(1.1)}.photo-8{background-position:55% 38%;filter:saturate(.8)}.gallery-footer{display:flex;align-items:center;justify-content:space-between;margin-top:28px;padding-top:22px;border-top:1px solid #dcebf4}.gallery-footer p{font-size:10px;color:#7890a0}.gallery-footer p strong{color:#087dcc}.gallery-cta{background:#073d6d;color:#fff;border-radius:4px}.lightbox{position:fixed;inset:0;z-index:100;background:#021424ed;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5vw;opacity:0;visibility:hidden;transition:.25s;backdrop-filter:blur(12px)}.lightbox.open{opacity:1;visibility:visible}.lightbox-image{width:min(1000px,90vw);height:min(680px,75vh);background-image:url('hero-karate.png');background-size:cover;background-repeat:no-repeat;box-shadow:0 30px 80px #0008}.lightbox p{color:#fff;font:600 24px Barlow Condensed;text-transform:uppercase}.lightbox-close{position:absolute;right:3vw;top:3vw;background:none;border:1px solid #ffffff55;color:#fff;width:46px;height:46px;font-size:27px;cursor:pointer}.lightbox .photo-1{background-position:65% 50%}.lightbox .photo-2{background-position:77% 25%}.lightbox .photo-3{background-position:45% 65%}.lightbox .photo-4{background-position:84% 70%}.lightbox .photo-5{background-position:62% 28%}.lightbox .photo-6{background-position:95% 52%}.lightbox .photo-7{background-position:72% 85%}.lightbox .photo-8{background-position:55% 38%}
@media(max-width:700px){.masonry-gallery{columns:2 140px;column-gap:10px}.gallery-item{margin-bottom:10px}.gallery-item.tall{height:300px}.gallery-item.medium{height:230px}.gallery-item.short{height:180px}.gallery-item b{font-size:19px}.gallery-footer{display:block}.gallery-cta{margin-top:14px}.lightbox-image{height:58vh}.gallery-filters{flex-wrap:nowrap;overflow-x:auto;padding-bottom:7px}.gallery-filter{flex:none}}
.gallery-cta{border:0;cursor:pointer}
.gallery:before{pointer-events:none}
.gallery-filters{position:relative;z-index:3}
.partner-card .logo-placeholder img{display:block;max-width:150px;max-height:75px;width:auto;height:auto;object-fit:contain}.news article a{display:block}

/* Dojos et contact */
.locations{background:linear-gradient(145deg,#f5fbff,#eef7fd);position:relative;overflow:hidden}.locations:before{content:"場";font-family:'Yuji Syuku',cursive;position:absolute;right:-20px;top:-90px;font-size:330px;color:#087dcc08;pointer-events:none}.locations-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(330px,.85fr);gap:7vw;align-items:start}.dojo-list{display:grid;gap:15px}.dojo-card{min-height:128px;border:1px solid #cddfe9;background:#ffffffa8;padding:25px 28px;display:grid;grid-template-columns:58px 1fr 25px;gap:22px;align-items:center;color:inherit;transition:.25s}.dojo-card:hover{border-color:#62bddf;background:#fff;transform:translateX(5px);box-shadow:0 15px 35px #07588e12}.dojo-card>span{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,#053563,#087fbd);color:#fff;font:700 20px Barlow Condensed}.dojo-card h3{font-size:24px;text-transform:uppercase;color:#102739}.dojo-card p{margin:5px 0;color:#637887;font-size:13px;line-height:1.45}.dojo-card>b{color:#0781c5}.location-contact{padding-top:8px}.location-contact h3{font-size:36px;text-transform:uppercase;color:#102739;margin:22px 0 35px}.location-contact dl{margin:0}.location-contact dl>div{display:grid;grid-template-columns:80px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid #cddde6}.location-contact dt{text-transform:uppercase;letter-spacing:.14em;font:600 9px Inter;color:#637887}.location-contact dd{margin:0;color:#162c3e;font-size:16px;line-height:1.55}.social-links{display:flex;gap:10px;margin-top:30px}.social-links a{width:48px;height:48px;border:1px solid #c7dce7;border-radius:50%;display:grid;place-items:center;color:#063d6d;font-weight:600;transition:.2s}.social-links a:hover{background:#087dcc;color:#fff;border-color:#087dcc;transform:translateY(-3px)}
@media(max-width:850px){.locations-layout{grid-template-columns:1fr}.location-contact{padding-top:25px}.dojo-card{grid-template-columns:48px 1fr;padding:20px;gap:15px}.dojo-card>span{width:44px;height:44px}.dojo-card h3{font-size:21px}.dojo-card p{font-size:12px}.dojo-card>b{display:none}}

/* Enseignants */
.club h2{line-height:1.02}.teachers{background:linear-gradient(180deg,#fff,#f0f8fd);overflow:hidden}.teacher-head-side{max-width:440px}.teacher-head-side>p{color:var(--muted);font-size:14px;line-height:1.7}.teacher-controls{display:flex;gap:8px;margin-top:20px}.teacher-controls button{width:46px;height:42px;border:1px solid #bfdcea;background:#fff;color:#07558d;font-size:19px;cursor:pointer;transition:.2s}.teacher-controls button:hover{background:#087dcc;color:#fff}.teacher-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 7vw 35px 0}.teacher-track::-webkit-scrollbar{display:none}.teacher-card{flex:0 0 min(340px,82vw);scroll-snap-align:start;background:#fff;border:1px solid #d5e8f2;color:inherit;box-shadow:0 14px 32px #07588e0d;transition:.28s}.teacher-card:hover{transform:translateY(-7px);box-shadow:0 22px 44px #07588e20}.teacher-photo{height:360px;background:linear-gradient(145deg,#073965,#0b87bd);position:relative;overflow:hidden;display:grid;place-items:center}.teacher-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.85)}.teacher-photo>span{font-family:'Yuji Syuku',cursive;font-size:160px;color:#ffffff18;transform:rotate(-8deg)}.teacher-photo>b{position:absolute;left:20px;top:17px;color:#74e6f2;font:600 13px Inter;letter-spacing:.12em}.teacher-info{padding:25px}.teacher-info>small{color:#087dcc;text-transform:uppercase;letter-spacing:.15em;font-size:8px}.teacher-info h3{font-size:30px;text-transform:uppercase;color:#102c42;margin:8px 0 20px}.teacher-info dl{margin:0}.teacher-info dl>div{display:grid;grid-template-columns:62px 1fr;gap:12px;padding:8px 0;border-top:1px solid #e4eef4}.teacher-info dt{font-size:8px;text-transform:uppercase;letter-spacing:.12em;color:#8195a3}.teacher-info dd{margin:0;font-size:11px;color:#405b6e}.teacher-more{display:block;color:#0782c5;text-transform:uppercase;letter-spacing:.1em;font-size:8px;font-weight:600;margin-top:21px}.teacher-single{background:#f4faff}.teacher-single-header{min-height:720px;background:linear-gradient(135deg,#031c36,#087ab8);color:#fff;padding:55px 7vw 80px}.teacher-back{display:inline-block;color:#8ce9f2;text-transform:uppercase;letter-spacing:.12em;font-size:9px;margin-bottom:50px}.teacher-single-grid{display:grid;grid-template-columns:minmax(280px,520px) minmax(330px,1fr);gap:7vw;align-items:center}.teacher-single-photo{height:560px;background:#073d69}.teacher-single-photo img{width:100%;height:100%;object-fit:cover}.teacher-single-grid h1{font-size:clamp(62px,7vw,110px);line-height:.9}.teacher-role{color:#83e5f0;text-transform:uppercase;letter-spacing:.16em;font-size:11px}.teacher-single-grid ul{list-style:none;margin:35px 0 0;padding:0}.teacher-single-grid li{border-top:1px solid #ffffff25;padding:15px 0;font-size:14px}.teacher-single-grid li span{display:inline-block;width:85px;color:#83e5f0;text-transform:uppercase;font-size:8px;letter-spacing:.12em}.teacher-cv{background:#fff}.teacher-content{max-width:1050px;font-size:16px;line-height:1.85;color:#40576a}.teacher-content h2,.teacher-content h3{color:#102c42;text-transform:uppercase;margin-top:45px}.teacher-content .wp-block-gallery{columns:3 240px;display:block!important;column-gap:14px}.teacher-content .wp-block-gallery figure{width:100%!important;margin:0 0 14px!important;break-inside:avoid}.teacher-content .wp-block-gallery img{width:100%;height:auto;display:block}
@media(max-width:760px){.teacher-head-side{margin-top:25px}.teacher-track{padding-right:0}.teacher-photo{height:320px}.teacher-single-grid{grid-template-columns:1fr}.teacher-single-photo{height:440px}.teacher-single-header{padding:35px 6vw 60px}.teacher-single-grid h1{font-size:60px}}

/* Fusion éditoriale : école de vie + équipe */
.club{padding-bottom:85px}.club h2{line-height:1.04}.teachers{margin-top:-1px;padding-top:65px;background:linear-gradient(180deg,#031a31 0,#064b7b 330px,#eef8fd 330px)}.teachers .section-head{color:#fff;margin-bottom:48px}.teachers .section-head h2{color:#fff}.teachers .section-head h2 em{background:linear-gradient(90deg,#7de8f4,#fff);-webkit-background-clip:text;background-clip:text;color:transparent}.teachers .section-head .eyebrow{color:#79e4f1}.teachers .teacher-head-side>p{color:#d0e7f2}.teachers .teacher-controls button{background:#ffffff12;border-color:#ffffff4a;color:#fff}.teachers .teacher-controls button:hover{background:#fff;color:#07558d}
@media(max-width:760px){.club{padding-bottom:65px}.teachers{padding-top:45px;background:linear-gradient(180deg,#031a31 0,#064b7b 420px,#eef8fd 420px)}}

/* Présentation directe demandée : texte du club puis portraits */
.club{padding-bottom:42px}.teachers{padding-top:0;background:linear-gradient(180deg,#031a31 0,#064b7b 185px,#eef8fd 185px)}.teachers .section-head{display:flex;justify-content:flex-end;margin:0 0 12px}.teachers .section-head>div:first-child,.teachers .teacher-head-side>p{display:none}.teachers .teacher-controls{margin-top:0}.teachers .teacher-track{padding-top:6px}.club .text-link{margin-top:30px}
@media(max-width:760px){.club{padding-bottom:32px}.teachers{padding-top:0;background:linear-gradient(180deg,#031a31 0,#064b7b 145px,#eef8fd 145px)}.teachers .teacher-track{padding-top:4px}}

/* Fiches enseignants enrichies */
.teacher-intro{font-size:11px;line-height:1.55;color:#60798b;margin:-8px 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.teacher-more{padding:12px 14px;background:linear-gradient(135deg,#086eaf,#13b8d5);color:#fff;display:flex;align-items:center;justify-content:space-between}.teacher-more b{font-size:14px}.teacher-card:hover .teacher-more{background:linear-gradient(135deg,#07588d,#0fa9c8)}.kaa-timeline{position:relative;margin:35px 0 55px!important;padding-left:155px!important}.kaa-timeline:before{content:"";position:absolute;left:107px;top:12px;bottom:12px;width:2px;background:linear-gradient(#087dcc,#18c9dc)}.kaa-timeline-item{position:relative;padding:0 0 35px 28px!important;border-bottom:1px solid #dceaf2;margin-bottom:28px!important}.kaa-timeline-item:before{content:"";position:absolute;left:-54px;top:8px;width:13px;height:13px;border-radius:50%;background:#fff;border:4px solid #087dcc;box-shadow:0 0 0 6px #e4f6fd}.kaa-timeline-item h3{position:absolute;right:calc(100% + 75px);top:0;margin:0!important;color:#087dcc!important;font:700 28px Barlow Condensed!important;white-space:nowrap}.kaa-timeline-item p{margin:5px 0!important}.kaa-timeline-item p strong{color:#102f46;font-size:17px}.teacher-single-grid>div:last-child{background:#ffffff0a;border:1px solid #ffffff1c;padding:34px}.teacher-single-grid ul{background:#ffffff08;padding:0 22px!important}.teacher-single-grid li{display:grid;grid-template-columns:85px 1fr;gap:10px}
@media(max-width:650px){.kaa-timeline{padding-left:38px!important}.kaa-timeline:before{left:8px}.kaa-timeline-item{padding-left:18px!important}.kaa-timeline-item:before{left:-36px}.kaa-timeline-item h3{position:static;margin-bottom:9px!important}.teacher-single-grid>div:last-child{padding:22px}}

/* Chronologie structurée — sans chevauchement */
.teacher-cv.has-structured-timeline .teacher-content>.kaa-timeline,.teacher-cv.has-structured-timeline .teacher-content>h2:has(+.kaa-timeline){display:none}.teacher-timeline-section{max-width:1100px;margin:75px auto 0}.teacher-timeline-section>h2{font-size:52px;text-transform:uppercase;color:#102e45;margin:15px 0 45px}.teacher-timeline-list{position:relative}.teacher-timeline-list:before{content:"";position:absolute;left:121px;top:16px;bottom:16px;width:3px;background:linear-gradient(#087dcc,#18c7dc)}.teacher-timeline-step{display:grid;grid-template-columns:100px 44px minmax(0,1fr);gap:0;position:relative;min-height:145px}.teacher-timeline-step time{text-align:right;padding:1px 20px 0 0;color:#087dcc;font:700 30px Barlow Condensed;line-height:1}.teacher-timeline-step i{width:20px;height:20px;border:5px solid #087dcc;background:#fff;border-radius:50%;margin:0 auto;position:relative;z-index:2;box-shadow:0 0 0 7px #e5f6fc}.teacher-timeline-step>div{padding:0 0 38px 25px;border-bottom:1px solid #d9e7ef;margin-bottom:34px}.teacher-timeline-step h3{font-size:23px;text-transform:none;color:#102e45;margin:0 0 12px}.teacher-timeline-step p{color:#566f81;line-height:1.7;margin:0}.teacher-timeline-step:last-child>div{border-bottom:0}
@media(max-width:650px){.teacher-timeline-section>h2{font-size:40px}.teacher-timeline-list:before{left:81px}.teacher-timeline-step{grid-template-columns:66px 32px minmax(0,1fr);min-height:125px}.teacher-timeline-step time{font-size:22px;padding-right:10px}.teacher-timeline-step i{width:16px;height:16px;border-width:4px}.teacher-timeline-step>div{padding-left:15px}.teacher-timeline-step h3{font-size:19px}}

/* Carte enseignant structurée */
.teacher-tabs{display:flex;gap:7px;margin:0 0 16px}.teacher-tabs>span{flex:1;min-width:0;padding:9px 10px;background:#edf7fc;border-top:3px solid #087dcc;color:#17364d;font-size:10px;line-height:1.35}.teacher-tabs small,.teacher-courses small{display:block!important;color:#087dcc!important;text-transform:uppercase;letter-spacing:.11em;font-size:7px!important;margin-bottom:4px}.teacher-intro{margin:0 0 16px;min-height:50px}.teacher-courses{font-size:10px;line-height:1.4;color:#405b6e;margin:0 0 17px;padding-top:10px;border-top:1px solid #e4eef4}.teacher-single-brief{max-width:650px;color:#d5eaf3;font-size:14px;line-height:1.7;margin:22px 0}.teacher-info{display:flex;flex-direction:column}.teacher-info .teacher-more{margin-top:auto}

/* Galeries ajoutées depuis l’éditeur visuel de la fiche */
.teacher-content .gallery{columns:3 240px;display:block!important;column-gap:14px;margin:28px 0}.teacher-content .gallery-item{display:block!important;width:100%!important;height:auto!important;margin:0 0 14px!important;break-inside:avoid;float:none!important;background:none;filter:none}.teacher-content .gallery-icon{height:auto}.teacher-content .gallery img{display:block;width:100%;height:auto;border:0!important}.teacher-content .gallery-caption{padding:8px 4px;color:#647b8c;font-size:10px}

/* Harmonisation automatique de toute image d’accueil */
.hero{background-image:none!important;background-color:#052b50}.hero:before{display:none}.hero-image{position:absolute;inset:0;z-index:-3;background-size:cover;background-position:center;filter:grayscale(1) contrast(1.08) brightness(.82)}.hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,#0065a7 0%,#087dcc 48%,#00b9d5 100%);mix-blend-mode:color;opacity:.92}.hero-shade{z-index:-1!important;background:linear-gradient(90deg,#02172ff5 0%,#043d6fc9 39%,#056fa165 72%,#022541b8 100%),linear-gradient(0deg,#02172fe8 0%,transparent 54%)!important}.hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#031d3b22,#02b7d31c);z-index:1}
@media(max-width:800px){.hero-image{background-position:62% center}.hero-shade{background:linear-gradient(90deg,#02172ff5,#064e7fbd),linear-gradient(0deg,#02172fe8,transparent 58%)!important}}

/* Réseaux sociaux dans le contact */
.social-contact{margin-top:28px}.social-contact>small{display:block;text-transform:uppercase;letter-spacing:.16em;color:#6d8494;font-size:8px;margin-bottom:12px}.social-contact .social-links{margin-top:0;flex-wrap:wrap}.social-contact .social-links a{width:auto;min-width:112px;height:46px;border-radius:4px;display:flex;justify-content:flex-start;gap:9px;padding:0 14px}.social-contact .social-links b{font-size:17px}.social-contact .social-links span{font-size:9px;text-transform:uppercase;letter-spacing:.08em}

/* Tables de tarifs */
.pricing-module{padding:80px 0}.pricing-title{margin-bottom:38px}.pricing-title h2{font:700 clamp(48px,6vw,78px)/.92 Barlow Condensed;text-transform:uppercase;color:#102d43;margin:12px 0}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.price-card{min-height:470px;padding:30px;background:#fff;border:1px solid #d6e8f2;box-shadow:0 15px 38px #07588e0e;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:.25s}.price-card:before{content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,#087dcc,#17c5df)}.price-card:hover{transform:translateY(-7px);box-shadow:0 23px 48px #07588e20}.price-card>div>small{color:#087dcc;text-transform:uppercase;letter-spacing:.12em;font-size:8px}.price-card h3{font-size:31px;text-transform:uppercase;color:#102d43;margin:10px 0 22px}.price{display:flex;align-items:end;gap:8px;margin:0}.price strong{font:700 50px/.9 Barlow Condensed;color:#087dcc}.price span{color:#718899;font-size:10px;margin-bottom:5px}.price-card ul{list-style:none;padding:22px 0;margin:22px 0;border-top:1px solid #e1edf3}.price-card li{position:relative;padding:7px 0 7px 20px;color:#4f687a;font-size:11px;line-height:1.4}.price-card li:before{content:"✓";position:absolute;left:0;color:#0aaac8;font-weight:700}.price-button{margin-top:auto;background:linear-gradient(135deg,#0875bd,#14bdd9);color:#fff;border-radius:4px}.entry-content>.pricing-module,.wp-block-post-content>.pricing-module{max-width:1180px;margin:auto;padding-left:5vw;padding-right:5vw}

/* Pages intérieures et pages tarifs */
.inner-page{background:#f5faff}.inner-page .site-header{background:linear-gradient(100deg,#031d39,#0876b7);position:absolute}.page-hero{min-height:390px;padding:145px 7vw 70px;background:linear-gradient(120deg,#031a34,#0879ba);color:#fff;display:flex;flex-direction:column;justify-content:flex-end}.page-hero h1{font-size:clamp(65px,9vw,125px);line-height:.85;margin:18px 0 0}.entry-content{max-width:1280px;margin:auto;background:#fff;min-height:320px}.entry-content>p,.entry-content>h2,.entry-content>h3,.entry-content>ul{max-width:900px}.entry-content p{line-height:1.75;color:#536b7c}

/* Pages tarifs : titre unique, images et menu complet */
.inner-page .site-header nav{gap:20px}.inner-page .site-header nav a{font-size:11px}.pricing-page-content{padding-top:145px}.price-card{padding-top:0}.price-image{height:190px;margin:0 -30px 27px;position:relative;overflow:hidden;background:#07558b}.price-image:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#045d9a99,#12bad080)}.price-image img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.75) contrast(1.05)}.price-image-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#06365f,#0d8fc0)}.price-image-placeholder span{font-family:'Yuji Syuku',cursive;font-size:105px;color:#ffffff20}.price-card-head{min-height:145px}
@media(max-width:1100px){.inner-page .site-header nav{gap:14px}.inner-page .site-header nav a{font-size:10px}.inner-page .nav-cta{padding:12px}}
.discipline-image{height:155px;margin:-36px -36px 25px;background-position:center;background-size:cover;position:relative}.discipline-image:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#06365f2e,#10b8d04d)}.discipline.active .discipline-image:after,.discipline:hover .discipline-image:after{background:linear-gradient(135deg,#032a51a3,#0aa2c578)}.discipline:has(.discipline-image){min-height:490px}
.dojo-legend{display:flex;align-items:center;flex-wrap:wrap;gap:9px 18px;padding:15px 18px;margin:0 0 12px;background:#f5fbff;border:1px solid #d7eaf4}.dojo-legend>strong{font-size:9px;text-transform:uppercase;letter-spacing:.14em;color:#627c8e}.dojo-key{display:inline-flex!important;align-items:center;gap:7px!important;margin:0!important;color:#29485e!important;font-size:10px!important}.dojo-key i{width:10px;height:10px;border-radius:2px;background:var(--dojo-color)}.course-row{border-left:4px solid var(--dojo-color)!important}.course-row.dojo-1,.dojo-key.dojo-1{--dojo-color:#078dcc}.course-row.dojo-2,.dojo-key.dojo-2{--dojo-color:#12b9a6}.course-row.dojo-3,.dojo-key.dojo-3{--dojo-color:#e58b24}.course-row.dojo-4,.dojo-key.dojo-4{--dojo-color:#805ad5}.course-row.dojo-5,.dojo-key.dojo-5{--dojo-color:#d94f70}.day .course-audience{display:inline!important;margin:6px 9px 0 0!important}.day .dojo-badge{display:inline-flex!important;align-items:center;margin-top:6px!important;padding:4px 8px;border-radius:3px;background:color-mix(in srgb,var(--dojo-color) 12%,white);border:1px solid color-mix(in srgb,var(--dojo-color) 38%,white);color:var(--dojo-color)!important;font-size:9px!important;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
@media(max-width:600px){.dojo-legend{align-items:flex-start;flex-direction:column}.day .dojo-badge{display:flex!important;width:max-content}.course-row{padding-left:10px!important}}
.course-row time small{display:block;margin-top:3px;color:#718596;font:500 8px/1.2 Inter;text-transform:uppercase;letter-spacing:.05em}.course-row time small:before{content:"Durée ";color:#9aabb6}
.custom-brand-mark{width:52px;height:52px;padding:0;border:0;background:transparent;overflow:hidden}.custom-brand-mark .brand-logo{display:block;width:100%;height:100%;object-fit:contain}.site-header .custom-brand-mark{flex:0 0 52px}footer .custom-brand-mark{width:44px;height:44px}
@media(max-width:800px){.custom-brand-mark{width:44px;height:44px}.site-header .custom-brand-mark{flex-basis:44px}}
/* Grille masonry stable : évite la fragmentation intermittente des boutons-images dans les colonnes CSS. */
.masonry-gallery{columns:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-flow:dense;grid-auto-rows:1px;column-gap:14px;row-gap:0;align-items:start}.masonry-gallery .gallery-item{margin:0 0 14px;break-inside:auto;align-self:start}.masonry-gallery .gallery-item.tall{height:410px;grid-row:span 424}.masonry-gallery .gallery-item.medium{height:300px;grid-row:span 314}.masonry-gallery .gallery-item.short{height:230px;grid-row:span 244}.gallery-footer{position:relative;z-index:2;clear:both}
@media(max-width:1050px){.masonry-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.masonry-gallery{columns:auto;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px}.masonry-gallery .gallery-item{margin-bottom:10px}.masonry-gallery .gallery-item.tall{height:300px;grid-row:span 310}.masonry-gallery .gallery-item.medium{height:230px;grid-row:span 240}.masonry-gallery .gallery-item.short{height:180px;grid-row:span 190}}
@media(max-width:420px){.masonry-gallery{grid-template-columns:1fr}}
.partnership-button{display:inline-flex;align-items:center;justify-content:center;margin-top:18px;padding:13px 18px;background:linear-gradient(135deg,#076fb4,#12b9d5);color:#fff!important;border-radius:3px;font:600 9px Inter;text-transform:uppercase;letter-spacing:.1em;box-shadow:0 9px 22px #087ab52b;transition:.22s}.partnership-button:hover{transform:translateY(-2px);box-shadow:0 13px 28px #087ab548}.partner-card.become{cursor:default}
.lightbox{padding:3vw}.lightbox-image{width:94vw;height:84vh;max-width:1500px;background-size:contain;background-position:center!important;background-repeat:no-repeat;background-color:#03182a;box-shadow:none}.lightbox p[hidden]{display:none}.lightbox p{margin:14px 0 0}.gallery-item span:has(small:only-child){bottom:15px}
@media(max-width:700px){.lightbox{padding:58px 12px 18px}.lightbox-image{width:96vw;height:78vh}}
@media(max-width:800px){.pricing-page-content{padding-top:105px}.price-image{height:170px}}

/* Actualités — cartes inspirées des disciplines */
.news-grid,.news-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.news-card{overflow:hidden;min-width:0;background:#fff;border:1px solid #d8ebf7;border-radius:18px;box-shadow:0 18px 45px rgba(4,45,78,.08);transition:transform .3s ease,box-shadow .3s ease,background .3s ease}
.news-card>a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.news-card .news-visual{height:225px;margin:0;overflow:hidden;background:linear-gradient(135deg,#075187,#13bce8)}
.news-card .news-visual img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.news-card-content{display:flex;flex:1;flex-direction:column;padding:25px 25px 27px}
.news-card-content small{margin-bottom:10px;color:#078fc9;font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.news-card-content h2,.news-card-content h3{margin:0 0 13px;color:#062b49;font-family:var(--font-display);font-size:clamp(25px,2vw,34px);line-height:1.02;text-transform:uppercase}
.news-card-content p{margin:0 0 20px;color:#607385;line-height:1.65}
.news-card-content>span{margin-top:auto;color:#087eb8;font-size:12px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
.news-card:hover{transform:translateY(-7px);background:linear-gradient(145deg,#062d50,#087bb8);box-shadow:0 24px 55px rgba(2,54,91,.2)}
.news-card:hover .news-visual img{transform:scale(1.05)}
.news-card:hover .news-card-content h2,.news-card:hover .news-card-content h3,.news-card:hover .news-card-content p{color:#fff}
.news-card:hover .news-card-content small,.news-card:hover .news-card-content>span{color:#68ddf7}

/* Page Toutes les actualités */
.inner-hero{position:relative;display:flex;min-height:370px;flex-direction:column;align-items:flex-start;justify-content:flex-end;padding:135px 7vw 52px;overflow:hidden;color:#fff;background:radial-gradient(circle at 78% 18%,rgba(62,218,249,.32),transparent 30%),linear-gradient(120deg,#031b35,#0879b8)}
.inner-hero:after{position:absolute;right:-10vw;bottom:-35vw;width:65vw;height:65vw;border:1px solid rgba(255,255,255,.16);border-radius:50%;content:""}
.inner-hero>div,.inner-hero>.eyebrow,.inner-hero>h1{position:relative;z-index:1}
.inner-hero h1{max-width:1100px;margin:18px 0 0;color:#fff;font-family:"Barlow Condensed",Arial,sans-serif;font-size:clamp(65px,9vw,125px);font-weight:700;letter-spacing:-.035em;line-height:.85;text-transform:uppercase}
.inner-hero h1 em{color:#38d5f3;font-style:normal}
.news-all{padding:45px 7vw 110px;background:#f5faff}
.news-all .news-archive-grid{max-width:1500px;margin:0 auto}
.news-pagination{max-width:1500px;margin:45px auto 0}
.news-pagination .nav-links{display:flex;flex-wrap:wrap;gap:8px}
.news-pagination .page-numbers{display:grid;min-width:44px;height:44px;place-items:center;padding:0 14px;border:1px solid #cde2ef;background:#fff;color:#07598a;font-weight:800;text-decoration:none}
.news-pagination .page-numbers.current,.news-pagination a.page-numbers:hover{border-color:#087db7;background:#087db7;color:#fff}

/* Fiche complète d'une actualité */
.news-single-hero{position:relative;display:flex;min-height:650px;align-items:flex-end;padding:170px 7vw 75px;overflow:hidden;color:#fff;background:linear-gradient(120deg,#031a34,#0879ba)}
.news-single-image,.news-single-image:after{position:absolute;inset:0}
.news-single-image{background-position:center;background-size:cover}
.news-single-image img{width:100%;height:100%;object-fit:cover}
.news-single-image:after{content:"";background:linear-gradient(90deg,rgba(2,24,46,.95),rgba(3,50,81,.58),rgba(3,35,59,.25))}
.news-single-heading{position:relative;z-index:1;max-width:1050px}
.news-single-heading p,.news-single-heading time{color:#62dcf6;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
.news-single-heading h1{margin:17px 0 0;color:#fff;font-family:"Barlow Condensed",Arial,sans-serif;font-size:clamp(52px,7vw,105px);font-weight:700;line-height:.9;text-transform:uppercase}
.news-single-content{max-width:1040px;margin:0 auto;padding:80px 7vw 110px;color:#405568;font-size:18px;line-height:1.8}
.news-single-content>*:first-child{margin-top:0}
.news-single-content h2,.news-single-content h3{color:#062f50;font-family:var(--font-display);text-transform:uppercase}
.news-single-content img{max-width:100%;height:auto;border-radius:14px}
@media(max-width:980px){.news-grid,.news-archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.news-grid,.news-archive-grid{grid-template-columns:1fr}.news-card .news-visual{height:210px}.inner-hero{min-height:350px;padding:135px 6vw 55px}.news-all{padding:55px 6vw 80px}.news-single-hero{min-height:520px;padding:145px 6vw 55px}.news-single-content{padding:55px 6vw 80px;font-size:17px}}

/* Stabilisation du module Tarifs, même lorsqu'un seul tarif est publié. */
.pricing-page-content{max-width:none}
.pricing-page-content>.pricing-module,.pricing-page-content>pre,.pricing-page-content>pre>code{font-family:Inter,Arial,sans-serif;white-space:normal}
.pricing-page-content>pre{max-width:none;margin:0;padding:0;border:0;background:transparent;overflow:visible}
.pricing-page-content>pre>code{display:contents}
.pricing-module{width:100%;max-width:1320px;margin:0 auto;font-family:Inter,Arial,sans-serif}
.pricing-module .pricing-title h2{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700;letter-spacing:-.025em}
.pricing-module .pricing-grid,.wp-block-shortcode .pricing-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;gap:18px!important;width:100%!important}
.pricing-module .pricing-grid>.price-card,.wp-block-shortcode .pricing-grid>.price-card{display:flex!important;width:auto!important;min-width:0!important;max-width:none!important;margin:0!important;font-family:Inter,Arial,sans-serif}
.pricing-module .price-card h3,.pricing-module .price strong{font-family:"Barlow Condensed",Arial,sans-serif;font-weight:700}
.pricing-module .price-card li,.pricing-module .price-card small,.pricing-module .price-card span{font-family:Inter,Arial,sans-serif}
@media(max-width:760px){.pricing-module .pricing-grid,.wp-block-shortcode .pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:500px){.pricing-module .pricing-grid,.wp-block-shortcode .pricing-grid{grid-template-columns:1fr!important}.pricing-module{max-width:430px}.pricing-page-content{padding-left:5vw;padding-right:5vw}}
.pricing-diagnostic{display:block;margin-top:15px;color:#91a4b1;font:500 9px/1.4 Inter,Arial,sans-serif;letter-spacing:.06em;text-align:right}

/* Accueil : une couverture légère par album. */
.gallery-item.album-link:after{content:"↗"}
.gallery-item.album-link{background-position:center;background-size:cover;text-decoration:none}
.gallery-item.album-link:hover{background-size:cover}
.album-content{background:#fff}
.album-content .masonry-gallery{max-width:1500px;margin:0 auto}
.album-back{max-width:1500px;margin:0 auto 35px}
.album-back a{display:inline-block;color:#087dbd;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.album-page .page-hero h1{max-width:1250px}

/* Menu flottant de la landing page. */
html{scroll-padding-top:82px}
.kaa-landing .site-header.is-floating{position:fixed;top:0;left:0;z-index:1000;height:68px;background:linear-gradient(100deg,rgba(3,29,57,.96),rgba(8,118,183,.94));border-bottom:1px solid rgba(132,226,247,.25);box-shadow:0 12px 35px rgba(2,28,51,.22);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);animation:kaa-header-drop .28s ease both}
.kaa-landing .site-header.is-floating .custom-brand-mark{width:44px;height:44px;flex-basis:44px}
.kaa-landing .site-header.is-floating .brand b{font-size:18px}
.kaa-landing .site-header.is-floating nav{gap:22px}
.kaa-landing .site-header.is-floating nav a{font-size:11px}
.kaa-landing .site-header.is-floating .nav-cta{padding:12px 17px}
@keyframes kaa-header-drop{from{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}
@media(max-width:800px){html{scroll-padding-top:70px}.kaa-landing .site-header.is-floating{height:70px}.kaa-landing .site-header.is-floating nav{top:70px;background:rgba(3,37,67,.98);box-shadow:0 18px 30px rgba(2,25,46,.25)}}
.contact-detail-note{display:block!important;margin-top:5px;color:#7b92a2!important;font-size:10px!important;font-style:italic;line-height:1.4!important}

/* Filtres de classement des actualités. */
.news-filters{display:flex;max-width:1500px;align-items:flex-end;gap:12px;margin:0 auto 45px;padding:18px;background:#fff;border:1px solid #d6e9f4;box-shadow:0 12px 30px rgba(5,70,110,.06)}
.news-filters>div{display:flex;min-width:220px;flex-direction:column;gap:6px}
.news-filters label{color:#658094;font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.news-filters select{height:46px;padding:0 38px 0 13px;border:1px solid #c9deea;background:#f8fcff;color:#173d58;font:600 13px Inter,Arial,sans-serif}
.news-filters button,.news-filters>a{display:inline-flex;height:46px;align-items:center;justify-content:center;padding:0 19px;border:0;background:#087db8;color:#fff;font:800 10px Inter,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.news-filters>a{background:#eaf5fa;color:#17658f}
@media(max-width:700px){.news-all{padding-top:35px}.inner-hero{min-height:340px;padding-bottom:42px}.news-filters{align-items:stretch;flex-direction:column;margin-bottom:35px}.news-filters>div{min-width:0}.news-filters button,.news-filters>a{width:100%}}

/* Pages dédiées aux activités. */
.activity-page-content{max-width:none;background:#fff}
.activity-page-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.7fr);gap:6vw;max-width:1500px;margin:0 auto;padding:90px 7vw 30px}
.activity-page-copy{min-width:0;color:#536b7c;font-size:17px;line-height:1.8}
.activity-page-copy>*:first-child{margin-top:0}
.activity-page-copy h2,.activity-page-copy h3{margin:42px 0 15px;color:#0a3453;font-family:"Barlow Condensed",Arial,sans-serif;text-transform:uppercase}
.activity-page-copy h2{font-size:42px}.activity-page-copy h3{font-size:30px}
.activity-page-copy img{max-width:100%;height:auto}
.activity-page-images{display:grid;align-content:start;gap:15px;position:sticky;top:95px}
.activity-page-images figure{height:230px;margin:0;overflow:hidden;background:#eaf5fa}
.activity-page-images figure:nth-child(3n+1){height:330px}
.activity-page-images figure:nth-child(3n+2){height:210px}
.activity-page-images img{width:100%;height:100%;object-fit:cover;filter:saturate(.85);transition:transform .45s ease}
.activity-page-images figure:hover img{transform:scale(1.04)}
.activity-team{padding:40px 7vw 105px;background:linear-gradient(180deg,#f3f9fd,#fff)}
.activity-team-head,.activity-team-grid{max-width:1500px;margin-left:auto;margin-right:auto}
.activity-team-head{margin-bottom:40px}.activity-team-head h2{color:#0b304c;font-family:"Barlow Condensed",Arial,sans-serif;font-size:clamp(48px,5vw,76px);line-height:.9;text-transform:uppercase}
.activity-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.activity-teacher-card{display:grid;grid-template-columns:145px 1fr;min-height:210px;overflow:hidden;border:1px solid #d6e7f0;background:#fff;color:#345167;box-shadow:0 13px 32px rgba(5,73,113,.07);transition:.25s}
.activity-teacher-card:hover{transform:translateY(-5px);border-color:#82cce6;box-shadow:0 20px 42px rgba(5,73,113,.16)}
.activity-teacher-photo{height:100%;min-height:210px;background:linear-gradient(145deg,#06355f,#0b8fbd);display:grid;place-items:center;overflow:hidden}
.activity-teacher-photo img{width:100%;height:100%;object-fit:cover}.activity-teacher-photo span{font-family:'Yuji Syuku',cursive;font-size:80px;color:#ffffff22}
.activity-teacher-card>div:last-child{display:flex;flex-direction:column;padding:22px 18px}
.activity-teacher-card small{color:#0787c3;font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.activity-teacher-card h3{margin:8px 0 12px;color:#0b304c;font-family:"Barlow Condensed",Arial,sans-serif;font-size:27px;line-height:1;text-transform:uppercase}
.activity-teacher-card p{margin:0;color:#6d8392;font-size:10px;line-height:1.5}
.activity-teacher-card b{margin-top:auto;color:#0784bd;font-size:8px;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:1100px){.activity-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.activity-teacher-card{grid-template-columns:125px 1fr}}
@media(max-width:800px){.activity-page-layout{grid-template-columns:1fr;padding:55px 6vw 25px}.activity-page-images{grid-template-columns:repeat(2,minmax(0,1fr));position:static}.activity-page-images figure,.activity-page-images figure:nth-child(n){height:230px}.activity-team{padding:35px 6vw 80px}}
@media(max-width:600px){.activity-page-images,.activity-team-grid{grid-template-columns:1fr}.activity-page-images figure,.activity-page-images figure:nth-child(n){height:260px}.activity-teacher-card{grid-template-columns:115px 1fr}}

/* Distinction visuelle entre enseignants et assistants. */
.teacher-status-badge{position:absolute;right:14px;bottom:14px;z-index:2;padding:6px 9px;background:#073c69;color:#fff;font:800 8px/1 Inter,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase;font-style:normal}
.teacher-card.teacher-status-assistant{background:linear-gradient(160deg,#effbfe,#e4f5fb);border-color:#a9dcea}
.teacher-card.teacher-status-assistant .teacher-photo{background:linear-gradient(145deg,#08708d,#20bad0)}
.teacher-card.teacher-status-assistant .teacher-status-badge{background:#10a6bd}
.teacher-card.teacher-status-assistant .teacher-info h3{color:#075773}
.teacher-card.teacher-status-assistant .teacher-tabs span{background:#d9f1f6}
.activity-teacher-photo{position:relative}
.activity-teacher-card.teacher-status-assistant{background:linear-gradient(145deg,#effbfe,#e0f4f8);border-color:#a6dce8}
.activity-teacher-card.teacher-status-assistant .activity-teacher-photo{background:linear-gradient(145deg,#08728e,#1bb9cb)}
.activity-teacher-card.teacher-status-assistant h3{color:#075b70}
.activity-teacher-card.teacher-status-assistant .teacher-status-badge{background:#10a6bd}

/* Page des documents téléchargeables. */
.entry-content>.documents-module{max-width:none;width:100%}
.documents-module{font-family:Inter,Arial,sans-serif}
.documents-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr;align-items:stretch;gap:20px;max-width:1350px;margin:0 auto}
.document-card{display:flex;min-width:0;height:100%;flex-direction:column;overflow:hidden;border:1px solid #d5e7f1;background:#fff;box-shadow:0 15px 38px rgba(5,72,112,.08);transition:.25s}
.document-card:hover{transform:translateY(-6px);border-color:#83cce5;box-shadow:0 23px 48px rgba(5,72,112,.16)}
.document-cover{display:grid;height:285px;place-items:center;overflow:hidden;padding:14px;background:#f7fafc;border-bottom:1px solid #dbe8ef}
.document-cover img{display:block;width:100%;height:100%;object-fit:contain;object-position:center top;background:#fff;box-shadow:0 7px 20px rgba(8,53,81,.1)}
.document-cover span{display:grid;width:105px;height:135px;place-items:center;border-radius:4px;background:#fff;color:#087dbd;font:800 28px/1 "Barlow Condensed",Arial,sans-serif;box-shadow:0 15px 35px rgba(2,32,55,.25)}
.document-info{display:flex;flex:1;flex-direction:column;padding:27px}
.document-info>small{color:#0788c5;font-size:8px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.document-info h2{display:-webkit-box;min-height:64px;margin:9px 0 14px;overflow:hidden;color:#0b304d;font-family:"Barlow Condensed",Arial,sans-serif;font-size:32px;line-height:1;text-transform:uppercase;-webkit-box-orient:vertical;-webkit-line-clamp:2}
.document-info p{display:-webkit-box;min-height:64px;margin:0 0 24px;overflow:hidden;color:#62798a;font-size:13px;line-height:1.65;-webkit-box-orient:vertical;-webkit-line-clamp:3}
.document-download{align-self:flex-start;margin-top:auto;background:linear-gradient(135deg,#0875bd,#14bdd9);color:#fff;border-radius:3px}
@media(max-width:950px){.documents-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.documents-grid{grid-template-columns:1fr}.document-cover{height:265px}}

/* Bandeau compact pour les pages utilitaires de documents. */
.documents-page .page-hero{min-height:295px;padding-top:115px;padding-bottom:42px}
.documents-page .page-hero h1{font-size:clamp(58px,7vw,94px);margin-top:12px}
.documents-page .entry-content{padding-top:42px;padding-bottom:85px}
@media(max-width:700px){.documents-page .page-hero{min-height:245px;padding-top:100px;padding-bottom:30px}.documents-page .page-hero h1{font-size:55px}.documents-page .entry-content{padding-top:30px;padding-bottom:65px}}

/* Fiche enseignant : chronologie à gauche, galerie non cliquable à droite. */
.teacher-timeline-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:55px;max-width:1300px;margin:12px auto 0;align-items:start}
.teacher-cv.has-structured-timeline .teacher-content{margin-bottom:0}
.teacher-cv.has-structured-timeline .teacher-content>:last-child{margin-bottom:0}
.teacher-content.media-relocated{min-height:0!important;padding-bottom:0!important}
.teacher-content.media-relocated .wp-block-spacer{display:none!important}
.teacher-content.media-relocated .tiled-gallery,.teacher-content.media-relocated .wp-block-jetpack-tiled-gallery{display:none!important;height:0!important;margin:0!important}
.teacher-silhouette{position:relative!important;display:block!important;width:145px!important;height:190px!important;border-radius:75px 75px 24px 24px!important;background:linear-gradient(180deg,#bceefa33,#ffffff12)!important;transform:none!important;font-size:0!important;box-shadow:inset 0 0 0 1px #c8f3ff28}
.teacher-silhouette:before{content:"";position:absolute;left:50%;top:22px;width:70px;height:70px;border-radius:50%;background:#d6f6ff99;transform:translateX(-50%);box-shadow:0 0 35px #73ddef38}
.teacher-silhouette:after{content:"";position:absolute;left:50%;bottom:0;width:125px;height:88px;border-radius:65px 65px 18px 18px;background:#d6f6ff70;transform:translateX(-50%)}
.teacher-single-photo{display:grid;place-items:center;overflow:hidden}.teacher-silhouette-large{width:230px!important;height:300px!important;border-radius:120px 120px 30px 30px!important}.teacher-silhouette-large:before{top:32px;width:108px;height:108px}.teacher-silhouette-large:after{width:205px;height:140px;border-radius:105px 105px 24px 24px}
#disciplines .cards{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1150px){#disciplines .cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){#disciplines .cards{grid-template-columns:1fr}}
.activity-page-copy .pricing-module{max-width:none;padding:45px 0 20px}
.activity-page-copy .pricing-module .pricing-grid{grid-template-columns:1fr!important}
.activity-page-copy .pricing-title h2{font-size:48px}
.album-page .masonry-gallery{display:block;columns:4 240px;column-gap:14px}
.album-page .masonry-gallery .gallery-item,.album-page .masonry-gallery .gallery-item.tall,.album-page .masonry-gallery .gallery-item.medium,.album-page .masonry-gallery .gallery-item.short{display:block;width:100%;height:auto!important;margin:0 0 14px;break-inside:avoid;grid-row:auto!important;background:none}
.album-page .masonry-gallery .gallery-item>img{position:relative;z-index:0;display:block;width:100%;height:auto;object-fit:initial;background:none;filter:none;transition:none}
.album-page .masonry-gallery .gallery-item:before{z-index:1;background:linear-gradient(0deg,#021c35a8,transparent 42%)}
.album-page .masonry-gallery .gallery-item:after,.album-page .masonry-gallery .gallery-item>span{z-index:2}
.album-page .masonry-gallery .gallery-item:hover>img{transform:none}
@media(max-width:700px){.album-page .masonry-gallery{columns:2 145px;column-gap:10px}.album-page .masonry-gallery .gallery-item{margin-bottom:10px}}
@media(max-width:420px){.album-page .masonry-gallery{columns:1}}
.teacher-timeline-layout .teacher-timeline-section{max-width:none;width:100%;margin:0}
.teacher-timeline-images{position:sticky;top:95px;padding:24px;background:#f1f8fc;border:1px solid #d8e8f1}
.teacher-timeline-images>h2{margin:0 0 22px;color:#102e45;font-family:"Barlow Condensed",Arial,sans-serif;font-size:42px;line-height:1;text-transform:uppercase}
.teacher-timeline-images .gallery,.teacher-timeline-images .wp-block-gallery,.teacher-loose-gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;columns:auto!important;gap:10px!important;margin:0!important}
.teacher-timeline-images .gallery-item,.teacher-timeline-images .wp-block-gallery>figure{display:block!important;width:100%!important;height:150px!important;margin:0!important;overflow:hidden;pointer-events:none;cursor:default;background:#dbeaf2}
.teacher-timeline-images .gallery-icon{height:100%}
.teacher-timeline-images img{display:block;width:100%!important;height:100%!important;object-fit:cover;border:0!important;transition:none!important}
.teacher-loose-gallery>*,.teacher-loose-gallery>figure,.teacher-loose-gallery>a,.teacher-loose-gallery>img{display:block!important;width:100%!important;height:150px!important;margin:0!important;overflow:hidden;pointer-events:none;cursor:default;object-fit:cover}
.teacher-timeline-images a{display:block;width:100%;height:100%;pointer-events:none;cursor:default}
.teacher-timeline-images figcaption,.teacher-timeline-images .gallery-caption{display:none!important}
@media(max-width:900px){.teacher-timeline-layout{grid-template-columns:1fr;gap:35px;margin-top:12px}.teacher-timeline-images{position:static}.teacher-timeline-images .gallery,.teacher-timeline-images .wp-block-gallery,.teacher-loose-gallery{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:600px){.teacher-timeline-images .gallery,.teacher-timeline-images .wp-block-gallery,.teacher-loose-gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important}.teacher-timeline-images .gallery-item,.teacher-timeline-images .wp-block-gallery>figure,.teacher-loose-gallery>*{height:135px!important}}
