/* Give visitors more room for sport photography while retaining the IPS navigation. */
@media(min-width:1400px){
 .header_3_fixhead{width:220px!important;max-width:220px!important;padding:28px 20px!important;background:#142b45!important}
 .header_3_allarea_content{width:calc(100% - 220px)!important;margin-left:220px!important}
 .header_content_area .offcanvas-body{width:180px!important}
 .header_V3_logo img{width:164px!important}
 .navbar_v3 .nav-links{font-size:15px!important;padding-block:12px!important}
 .ips-menu-contact{font-size:12px!important;overflow-wrap:anywhere}
 .ips-menu-actions{gap:6px}
}
#home-training-title,#disciplines{scroll-margin-top:84px}
.ips-home-disciplines{border-top:1px solid #ffffff18}
.ips-original-tab:focus-visible,.ips-discipline-join:focus-visible,.ips-original-link:focus-visible{outline:3px solid #a8dbff!important;outline-offset:-4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
/* Desktop sidebar: remove the template's 160 px menu padding and space-between gaps. */
@media(min-width:1400px){
 .header_3_fixhead,.header_3_fixhead.sticky{padding:24px 20px!important;background:#202124!important;overflow-x:hidden!important;overflow-y:auto!important;height:100dvh}
 #navbarNav .offcanvas-body{display:flex!important;flex-direction:column!important;justify-content:flex-start!important;height:auto!important;min-height:0!important;padding:0!important;overflow:visible!important}
 #navbarNav .header_V3_logo{flex:none;margin:0!important;padding:0!important;line-height:0}
 #navbarNav .header_V3_logo img{display:block;height:80px!important;object-fit:contain;object-position:left center}
 #navbarNav ul.navbar_v3{padding:0!important;margin:22px 0 0!important;gap:2px!important;flex:none}
 #navbarNav ul.navbar_v3>.nav-items{margin:0!important}
 #navbarNav ul.navbar_v3>.nav-items>.nav-links{padding:9px 0!important;min-height:44px;line-height:26px}
 #navbarNav .hader_v3_bottom_contact{position:static!important;flex:none;margin:24px 0 0!important;padding:16px 0 0!important;border-top:1px solid #ffffff20}
 #navbarNav .hader_v3_bottom_contact>span{padding-bottom:10px!important}
 #navbarNav .hader_v3_bottom_contact>p{margin:0 0 10px!important;line-height:1.4}
 #navbarNav .ips-menu-contact{display:flex;align-items:center;gap:8px;line-height:1.5!important}
 #navbarNav .ips-menu-contact .ips-action-icon{width:18px;height:18px;flex:0 0 18px}
 #navbarNav .ips-menu-actions{margin-top:12px!important}
 #navbarNav .ips-menu-actions .ips-icon-button{width:36px!important;min-width:36px!important;height:36px!important;min-height:36px!important}
}
@media(min-width:1400px) and (max-height:720px){
 .header_3_fixhead,.header_3_fixhead.sticky{padding-top:16px!important;padding-bottom:16px!important}
 #navbarNav .header_V3_logo img{height:68px!important}
 #navbarNav ul.navbar_v3{margin-top:14px!important}
 #navbarNav .hader_v3_bottom_contact{margin-top:16px!important;padding-top:12px!important}
}
/* A single, immediate route from navigation to the membership information. */
#navbarNav .ips-menu-join{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:16px 0 0;padding:12px 14px;min-height:44px;background:#2676b7!important;color:white!important;border:1px solid #609bca;font:700 14px/1.4 'Satoshi Bold',Arial,sans-serif;flex:none}
#navbarNav .ips-menu-join:hover{background:#1d5e94!important}
#navbarNav .ips-menu-join:focus-visible{outline:3px solid #a8dbff;outline-offset:3px}
@media(min-width:1400px){
 .header_3_fixhead,.header_3_fixhead.sticky{overflow:visible!important}
 #navbarNav #ips-club-menu{position:absolute!important;left:100%!important;top:0!important;width:270px!important;max-height:calc(100dvh - 140px);overflow-y:auto!important;overflow-x:hidden!important;margin:0!important;padding:12px!important;background:#202124!important;border:1px solid #ffffff30!important;border-left:3px solid #568fca!important;box-shadow:10px 12px 30px #0003!important;z-index:1060}
 #navbarNav .hader_v3_bottom_contact{margin-top:16px!important}
}
@media(min-width:1400px) and (max-height:650px){
 .header_3_fixhead,.header_3_fixhead.sticky{overflow-y:auto!important;overflow-x:hidden!important}
 #navbarNav #ips-club-menu{position:relative!important;left:auto!important;top:auto!important;width:100%!important;max-height:none;box-shadow:none!important}
}
/* Clear current-page cues, including keyboard and non-colour identification. */
#navbarNav .nav-links[aria-current="page"]{color:#a8dbff!important;font-weight:700!important}
#navbarNav .nav-links[aria-current="page"]::after{content:'•';margin-left:auto;color:#a8dbff;font-size:18px}
.banner_titles_area_v3 [data-ips-hero-subtitle]{font-family:'Satoshi Medium',Arial,sans-serif!important;letter-spacing:0;font-size:20px;line-height:1.5;margin-left:0!important;margin-bottom:8px!important}
.ips-footer-grid .ips-footer-heading{font-size:13px!important;line-height:1.5!important;letter-spacing:.12em!important;color:#fff!important;margin:0 0 20px!important;font-family:'Satoshi Bold',Arial,sans-serif!important}
.ips-faq-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 32px}
.ips-faq-shortcuts a{display:flex;align-items:center;min-height:64px;padding:16px;background:#e8f2fa;border:1px solid #c4d8e8;color:#173f60;font-size:14px;font-weight:700;text-decoration:none;line-height:1.5}
.ips-faq-shortcuts a:hover{background:#173f60;color:white}
.ips-faq-simple details[id]{scroll-margin-top:90px}
.ips-faq-simple details:target{border-left:3px solid #2676b7;background:#edf5fb}
@media(max-width:900px){.ips-faq-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:400px){.ips-faq-shortcuts a{padding:12px;font-size:13px}}
/* Keep the carousel control in its own row instead of covering the title. */
.ips-slider-pause{position:relative!important;inset:auto!important;display:block;margin:16px 20px 20px auto;min-height:44px;width:max-content;max-width:calc(100% - 40px)}
@media(max-width:767px){.ips-club-slider+.ips-slider-pause{margin-top:120px}}
.ips-error-code{font-size:clamp(70px,14vw,150px);font-weight:800;line-height:1;color:#2676b7;letter-spacing:-.07em;margin:0 0 24px}
.ips-recovery-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:32px 0}
.ips-recovery-links a{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:72px;padding:20px;background:#142b45;color:#fff!important;text-decoration:none!important;font-size:16px;line-height:1.5}
.ips-recovery-links a:hover{background:#2676b7}
@media(max-width:700px){.ips-recovery-links{grid-template-columns:1fr}.ips-recovery-links a{min-height:60px}}
/* Wide desktop: one shared rail width, full-width navigation and balanced spacing. */
@media(min-width:1400px){
 :root{--ips-sidebar-width:240px}
 .header_3_fixhead,.header_3_fixhead.sticky{width:var(--ips-sidebar-width)!important;max-width:var(--ips-sidebar-width)!important;padding:24px 20px!important;border-right:1px solid #ffffff12}
 .header_3_allarea_content{width:calc(100% - var(--ips-sidebar-width))!important;margin-left:var(--ips-sidebar-width)!important}
 .header_3_fixhead .header_v3_area,.header_3_fixhead .header_v3_area>nav{width:100%;height:100%;padding:0;align-items:stretch}
 .header_3_fixhead #navbarNav{width:100%!important;height:100%;position:static}
 .header_3_fixhead #navbarNav .offcanvas-body{width:100%!important;min-height:100%!important}
 #navbarNav ul.navbar_v3{margin-top:26px!important}
 #navbarNav ul.navbar_v3>.nav-items>.nav-links{padding:10px 12px!important;border-radius:5px;min-height:46px;font-size:15px!important}
 #navbarNav ul.navbar_v3>.nav-items>.nav-links:hover,#navbarNav ul.navbar_v3>.nav-items>.nav-links:focus-visible{background:#ffffff0d}
 #navbarNav ul.navbar_v3>.nav-items>.nav-links[aria-current="page"]{background:#568fca18}
 #navbarNav .hader_v3_bottom_contact{margin-top:auto!important;padding-top:20px!important}
 #navbarNav .ips-menu-join{margin-bottom:24px}
 #navbarNav .ips-menu-contact{font-size:12px!important}
}
@media(min-width:1800px){
 :root{--ips-sidebar-width:280px}
 .header_3_fixhead,.header_3_fixhead.sticky{padding:32px 24px!important}
 #navbarNav .header_V3_logo img{width:190px!important;height:92px!important}
 #navbarNav ul.navbar_v3{margin-top:32px!important;gap:5px!important}
 #navbarNav ul.navbar_v3>.nav-items>.nav-links{min-height:50px;font-size:16px!important}
 #navbarNav .ips-menu-contact{font-size:13px!important}
 .banner_v3_area_content>.container{width:100%;max-width:1640px;padding-inline:clamp(40px,4vw,100px)}
}
@media(min-width:1400px) and (max-height:800px){
 .header_3_fixhead,.header_3_fixhead.sticky{padding:16px 20px!important}
 #navbarNav .header_V3_logo img{height:64px!important}
 #navbarNav ul.navbar_v3{margin-top:16px!important;gap:0!important}
 #navbarNav ul.navbar_v3>.nav-items>.nav-links{min-height:42px;padding-block:7px!important}
 #navbarNav .ips-menu-join{margin-bottom:16px}
 #navbarNav .hader_v3_bottom_contact{margin-top:0!important;padding-top:12px!important}
}
/* Shared editorial measure on large monitors: backgrounds span, content does not. */
@media(min-width:1400px){
 .header_3_allarea_content{--ips-content-max:1440px;--ips-wide-gutter:max(48px,calc((100% - var(--ips-content-max))/2))}
 .header_3_allarea_content :is(.ips-home-disciplines,.ips-license-spotlight,.ips-school-spotlight,.ips-latest,.ips-home-story,.ips-practical){padding-left:var(--ips-wide-gutter)!important;padding-right:var(--ips-wide-gutter)!important}
 .header_3_allarea_content :is(.ips-home-disciplines,.ips-license-spotlight,.ips-school-spotlight,.ips-latest,.ips-home-story){padding-top:72px!important;padding-bottom:72px!important}
 .header_3_allarea_content .container{width:calc(100% - 96px)!important;max-width:var(--ips-content-max)!important;padding-inline:0!important;margin-inline:auto!important}
 .banner_v3_area_content{min-height:0!important;padding:64px 0!important}
 .banner_v3_area_content>.container>.row{--bs-gutter-x:64px;align-items:center}
 .banner_titles_area_v3 h1{font-size:clamp(64px,4vw,86px)!important;max-width:10ch}
 .banner_titles_area_v3 .ips-hero-detail{max-width:43ch;font-size:18px}
 .banner_v3_image_area>img{height:560px!important;width:100%;object-fit:cover;object-position:center 35%}
 .ips-home-disciplines>h2{font-size:48px!important;margin-bottom:22px!important}
 .ips-home-disciplines>.ips-original-accordion{height:540px!important;max-height:540px}
 .ips-home-disciplines>p:not(.ips-section-label){max-width:74ch}
 .ips-license-spotlight,.ips-school-spotlight{gap:64px!important;align-items:center}
 .ips-license-spotlight h2,.ips-school-spotlight h2{font-size:46px!important;max-width:22ch}
 .ips-license-spotlight p,.ips-school-spotlight-main>p{max-width:57ch}
 .ips-school-spotlight h3{font-size:28px!important;max-width:34ch}
 .ips-latest-grid img{height:360px!important;aspect-ratio:auto!important;object-fit:cover;object-position:center 30%}
 .ips-latest .latest-copy h3{font-size:26px!important;max-width:36ch}
 .ips-home-story{gap:56px!important}
 .ips-home-story>img{height:420px!important;min-width:0;object-fit:cover}
 .ips-home-story h2{font-size:44px!important;max-width:22ch}
 .ips-home-story p:not(.ips-section-label){max-width:54ch}
 .ips-coaches{padding-block:72px!important}
 .ips-coach-intro{max-width:78ch}
 .ips-coach-grid article{min-width:0}
 .ips-officials{padding-block:56px!important}
 .ips-latest h2,.ips-coaches h2{font-size:42px!important}
}
/* Footer contrast must remain legible against its light track background. */
.footer_sec .ips-footer-grid .ips-footer-heading{color:#244f77!important}
.footer_sec .footer_upper_big_text{background:transparent!important}
.footer_sec .footer_upper_big_text a{background:transparent!important}
.footer_sec .footer_upper_big_text .text{stroke:#285d8f!important}
.footer_sec .ips-footer-legal{background:transparent!important}
@media(min-width:1400px){
 .ips-latest-grid img{object-position:center 12%!important}
 .ips-school-spotlight-main,.ips-school-spotlight-detail{opacity:1!important;transform:none!important}
 .ips-home-disciplines .ips-original-copy{max-width:620px}
 .ips-home-disciplines .ips-original-panel>img{object-position:center 36%!important}
}
/* Responsive home photography: size from the available column, not monitor height. */
.banner_v3_image_area>img{height:auto!important;max-height:none!important;aspect-ratio:5/4!important;object-fit:cover!important;object-position:center!important}
.banner_v3_area_content,.banner_v3_area_bg{min-height:0!important}
.ips-latest-grid img{display:block;height:auto!important;aspect-ratio:4/3!important;object-fit:cover;object-position:center 15%!important}
.ips-latest-grid>a[href="pauline-daumas.html"]>img{object-fit:contain!important;background:#e6edf3}
.ips-home-story>img{height:auto!important;aspect-ratio:16/10;object-fit:cover;object-position:center}
.ips-coach-grid article>img{object-fit:contain!important;object-position:center!important;background:#e6edf3}
.ips-home-disciplines .ips-original-accordion{height:clamp(460px,31vw,540px)!important;max-height:none!important}
@media(min-width:768px) and (max-width:1399px){
 .banner_v3_area_content{padding:48px 0!important}
 .banner_v3_area_content>.container{width:calc(100% - 64px);max-width:1200px}
 .banner_v3_area_content .row{--bs-gutter-x:40px}
 .banner_titles_area_v3 h1{font-size:clamp(40px,5vw,64px)!important}
 .ips-home-disciplines,.ips-license-spotlight,.ips-school-spotlight,.ips-latest,.ips-home-story{padding:48px 32px!important}
 .ips-school-spotlight,.ips-license-spotlight{gap:32px!important}
 .ips-home-story{gap:32px!important}
 .ips-home-story h2{font-size:34px!important}
 .ips-coach-grid{gap:24px!important}
}
@media(min-width:651px) and (max-width:1000px){
 .ips-home-disciplines .ips-original-accordion{height:520px!important}
 .ips-home-disciplines .ips-original-copy{padding:24px!important}
 .ips-license-spotlight,.ips-school-spotlight,.ips-home-story{grid-template-columns:minmax(0,1fr)!important}
 .ips-home-story>img{max-height:420px;aspect-ratio:16/9}
 .ips-school-spotlight-detail{width:100%}
}
@media(max-width:767px){
 .banner_v3_area_content{padding:32px 0!important}
 .banner_titles_area_v3 h1{font-size:clamp(36px,8.7vw,58px)!important}
 .banner_v3_image_area{margin-top:28px}
 .ips-home-story>img{height:auto!important;aspect-ratio:4/3}
 .ips-latest-grid>a{display:flex!important;flex-direction:column!important}
 .ips-latest-grid img{min-height:0!important;height:auto!important;aspect-ratio:4/3!important}
 .ips-coach-grid article>img{height:auto!important;max-height:340px;aspect-ratio:1/1;object-fit:contain!important}
 .ips-coach-grid article{min-width:0}
 .ips-school-spotlight h2,.ips-license-spotlight h2{font-size:clamp(30px,7.5vw,42px)!important}
}
@media(max-width:650px){
 .ips-home-disciplines .ips-original-accordion{height:auto!important;max-height:none!important}
 .ips-home-disciplines .ips-original-panel>img{height:auto!important;aspect-ratio:4/3!important;object-fit:cover!important}
}
@media(min-width:1800px){
 .banner_v3_area_content>.container{max-width:1440px!important}
 .banner_titles_area_v3 h1{font-size:78px!important}
 .banner_v3_area_content>.container>.row{--bs-gutter-x:64px}
}
/* Discipline showcase: sliding rails, a real photograph column and a readable information panel. */
.ips-home-disciplines{background:#edf3f8!important}
.ips-home-disciplines>h2{color:#142b45!important}
.ips-home-disciplines>.ips-section-label{color:#2676b7!important}
.ips-home-disciplines .ips-discipline-intro,.ips-home-disciplines>p{color:#526b80!important}
.ips-home-disciplines .ips-original-accordion{background:#142b45!important;border:0!important;box-shadow:0 12px 32px #142b4510}
.ips-home-disciplines .ips-original-panel{display:flex!important;flex-direction:row!important;background:white!important;isolation:auto!important;align-items:stretch}
.ips-home-disciplines .ips-original-panel:after{display:none!important}
.ips-home-disciplines .ips-original-panel>img{position:static!important;inset:auto!important;z-index:auto!important;width:50%!important;height:100%!important;aspect-ratio:auto!important;flex:0 0 50%!important;object-fit:cover!important;object-position:center!important;transform:none!important}
.ips-home-disciplines .ips-original-copy{position:static!important;align-self:center!important;padding:32px!important;flex:1!important;min-width:0!important;max-width:none!important;max-height:100%!important;overflow-y:auto!important;background:white!important;color:#142b45!important;transform:none!important}
.ips-home-disciplines .ips-original-copy h3{color:#142b45!important;font-size:36px!important;line-height:1.12!important;margin:14px 0 18px!important}
.ips-home-disciplines .ips-original-copy p{color:#526b80!important;font-size:16px!important;line-height:1.65!important}
.ips-home-disciplines .ips-discipline-number{color:#2676b7!important}
.ips-home-disciplines .ips-discipline-schedule{color:#142b45!important;border-color:#d7e2eb!important;white-space:pre-line}
.ips-home-disciplines .ips-discipline-optional{display:block;color:#526b80!important;font-size:12px!important;line-height:1.6}
.ips-home-disciplines .ips-original-copy .ips-original-link{color:#2676b7!important;display:block!important;width:max-content;max-width:100%;background:none!important;margin:12px 0 0!important;padding:8px 0!important;border-bottom:1px solid #9cbad0!important}
.ips-home-disciplines .ips-original-copy .ips-discipline-join{display:table!important;background:#2676b7!important;color:white!important;padding:13px 16px!important;margin:18px 0 0!important;border:0!important;font-size:14px!important}
@media(min-width:651px) and (max-width:1000px){
 .ips-home-disciplines .ips-original-panel>img{width:42%!important;flex-basis:42%!important}
 .ips-home-disciplines .ips-original-copy{padding:22px!important}
 .ips-home-disciplines .ips-original-copy h3{font-size:27px!important}
 .ips-home-disciplines .ips-original-tab{width:48px!important;flex-basis:48px!important}
 .ips-home-disciplines .ips-original-item{flex-basis:48px!important}
}
@media(max-width:650px){
 .ips-home-disciplines .ips-original-panel{display:block!important}
 .ips-home-disciplines .ips-original-panel>img{width:100%!important;height:auto!important;aspect-ratio:4/3!important}
 .ips-home-disciplines .ips-original-copy{padding:24px!important;max-height:none!important;overflow:visible!important}
 .ips-home-disciplines .ips-original-copy h3{font-size:30px!important}
}
.ips-home-disciplines .ips-original-panel>img{object-fit:contain!important;background:#dce7ef!important}
.ips-home-disciplines .ips-original-copy>p:not(.ips-discipline-schedule){color:#526b80!important;font-size:17px!important}
.ips-home-disciplines .ips-original-copy .ips-discipline-schedule{color:#142b45!important;border-color:#d7e2eb!important}
@media(max-width:650px){.ips-home-disciplines .is-active>.ips-original-panel{min-height:0!important}}
/* Preserve the entire photograph: portraits and discipline panels must never crop faces. */
.ips-athlete-card>img{display:block!important;width:100%!important;height:auto!important;aspect-ratio:4/5!important;object-fit:contain!important;object-position:center!important;background:#e6eef5;transform:none!important}
.ips-athlete-card:hover>img{transform:none!important}
.ips-disciplines-page .ips-original-accordion{height:auto!important;min-height:570px;align-items:stretch}
.ips-disciplines-page .ips-original-panel{align-items:stretch}
.ips-disciplines-page .ips-original-panel>img{width:48%!important;flex:0 0 48%;height:auto!important;max-height:none!important;object-fit:contain!important;object-position:center!important;background:#dce7ef;transform:none!important}
.ips-disciplines-page .ips-original-copy{min-width:0;padding:28px;align-self:center}
.ips-disciplines-page .ips-discipline-card>img{height:auto!important;aspect-ratio:4/3;object-fit:contain!important;background:#dce7ef}
.ips-gallery-video{margin:0 0 40px;padding:24px;background:#e6eef5;border:1px solid #cbdbe8}
.ips-gallery-video h2{font-size:clamp(23px,3vw,32px);margin:0 0 18px}
.ips-gallery-video video{display:block;width:100%;max-width:900px;max-height:72vh;height:auto;margin:auto;background:#10263d;object-fit:contain}
.ips-gallery-video figcaption{font-size:14px;color:#526b80;margin:14px 0 0}
@media(max-width:1100px){.ips-disciplines-page .ips-original-panel{flex-direction:column}.ips-disciplines-page .ips-original-panel>img{width:100%!important;flex:0 0 auto;height:auto!important;aspect-ratio:4/3;max-height:420px!important}.ips-disciplines-page .ips-original-copy{align-self:stretch;padding:24px}}
@media(max-width:650px){.ips-disciplines-page .ips-original-accordion{min-height:0}.ips-disciplines-page .is-active>.ips-original-panel{max-height:none!important}.ips-gallery-video{padding:16px}.ips-disciplines-page .ips-original-panel>img{max-height:none!important}}
.ips-athlete-grid{max-width:1280px;margin-inline:auto}
.ips-athlete-card>img{height:clamp(360px,42vw,600px)!important;aspect-ratio:auto!important}
@media(max-width:650px){.ips-athlete-card>img{height:auto!important;aspect-ratio:4/5!important}}
@media(min-width:1101px){.ips-disciplines-page .ips-original-accordion{height:620px!important;min-height:0;max-width:1440px;margin-inline:auto}.ips-disciplines-page .ips-original-panel>img{height:100%!important;min-height:0!important}}
@media(min-width:651px) and (max-width:1100px){.ips-disciplines-page .ips-original-accordion{height:auto!important;min-height:0}.ips-disciplines-page .ips-original-panel>img{height:320px!important;aspect-ratio:auto;max-height:320px!important}}
/* Collapsed panels must not contribute their narrow text height to the open slide. */
.ips-disciplines-page .ips-original-item:not(.is-active)>.ips-original-panel{display:none!important}
.ips-disciplines-page .is-active>.ips-original-panel{display:flex!important}
@media(max-width:650px){.ips-disciplines-page .is-active>.ips-original-panel{display:block!important}}
