.detail-page{color:#232323}
.detail-page .content-width{width:min(1140px,calc(100% - 40px))}
.detail-hero{height:400px;margin:60px auto 50px;border-radius:20px;background-color:#171429;background-position:center;background-size:cover;background-repeat:no-repeat}
.detail-layout{display:grid;grid-template-columns:363px minmax(0,1fr);gap:50px;align-items:stretch;margin-bottom:70px}
.detail-sidebar{border-radius:20px;background:#f3f3f3;padding:20px 16px 32px;align-self:start}
.sidebar-block{margin:0 0 30px}
.sidebar-block h2{font:400 18px/1.1 var(--display);margin:0 0 8px;color:#232323}
.sidebar-block p{margin:0 0 18px;font:400 16px/1.5 var(--body)}
.sidebar-block a{text-decoration:underline;font-weight:700}
.sidebar-block a:hover{color:#666}
.sidebar-contact{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;align-items:center}
.sidebar-contact>img{width:100px;height:100px;object-fit:cover;border-radius:50%}
.sidebar-contact h2{margin-bottom:4px}
.sidebar-contact p{margin:0;overflow-wrap:anywhere}
.share-links{display:flex;gap:10px}
.share-links a{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#232323;color:#fff;font:700 20px/1 var(--body);text-decoration:none}
.share-links a:hover{background:#555;color:#fff}
.sidebar-form-section{margin-bottom:0}
.contact-form{display:flex;flex-direction:column}
.contact-form>label:not(.privacy-check),.rgpd-label{font-size:16px;margin:10px 0 5px}
.contact-form>label:first-child{margin-top:8px}
.contact-form label>span[aria-hidden],.rgpd-label>span{color:#db3458}
.contact-form input:not([type=checkbox]),.contact-form textarea{width:100%;border:1px solid #333;border-radius:22px;background:#fff;color:#232323;padding:9px 15px;font:400 15px/1.4 var(--body)}
.contact-form input:not([type=checkbox]){height:41px}
.contact-form textarea{border-radius:18px;min-height:94px;resize:vertical}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #232323;outline-offset:2px}
.privacy-check{display:flex;gap:7px;align-items:flex-start;font-size:15px;line-height:1.5}
.privacy-check input{margin:5px 0 0;flex:none}
.privacy-check a{font-weight:400}
.contact-form .pill-button{width:100%;border:0;cursor:pointer;margin-top:18px;font-size:13px;padding-inline:10px}
.form-note{font-size:12px!important;color:#666;margin:9px 0 0!important}
.form-status{font-size:13px!important;margin:5px 0 0!important}
.detail-content{padding:10px;min-width:0;color:#4d4d4d;font:400 16px/1.5 var(--body)}
.detail-title{padding:10px;min-height:104px;margin-bottom:10px}
.detail-title h1{font:700 25px/1 var(--display);color:#232323;margin:0 0 10px}
.detail-title>a{font-size:14px;font-weight:700;color:#232323}
.detail-title>a:hover{text-decoration:underline}
.detail-category-list{display:flex;flex-wrap:wrap;gap:4px 12px}
.detail-category-list a{font-size:14px;font-weight:700;color:#232323}
.detail-category-list a:hover{text-decoration:underline}
.detail-intro{padding:0 10px;margin-bottom:60px}
.detail-intro p{margin:0 0 16px}
.trainer-highlight{min-height:200px;position:relative;display:flex;align-items:center;padding:25px 255px 25px 30px;border-radius:20px;background:#fff;box-shadow:0 0 10px #0007;margin:0 0 40px}
.trainer-highlight h2{font:400 28px/1.1 var(--display);color:#232323;margin:0 0 12px}
.trainer-highlight p{margin:0}
.trainer-highlight img{position:absolute;right:-2px;top:50%;transform:translateY(-50%);width:220px;height:220px;object-fit:cover;border-radius:50%}
.detail-section{margin:0 0 36px;padding:0 10px}
.detail-section h2,.related-section h2{font:400 20px/1.2 var(--display);color:#232323;margin:0 0 16px}
.detail-section p{margin:0}
.detail-rich-text p{margin:0 0 16px}
.detail-rich-text p:last-child{margin-bottom:0}
.detail-section ul{padding-left:22px;margin:0;line-height:1.5}
.detail-section li{margin-bottom:3px}
.detail-section img{max-width:100%;height:auto;border-radius:12px}
.detail-section a{color:#232323;text-decoration:underline}
.detail-section h3,.detail-section h4{font:400 18px/1.2 var(--display);color:#232323;margin:22px 0 12px}
.detail-accordion{padding:0;margin:0 10px 36px;border:1px solid #ddd;border-radius:18px;background:#f7f7f7;overflow:hidden}
.detail-accordion summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 24px;cursor:pointer;list-style:none;font:400 20px/1.2 var(--display);color:#232323}
.detail-accordion summary::-webkit-details-marker{display:none}
.detail-accordion summary:hover{background:#eee}
.detail-accordion summary:focus-visible{outline:3px solid #232323;outline-offset:-4px;border-radius:18px}
.detail-accordion .accordion-indicator{flex:none;width:30px;height:30px;border-radius:50%;background:#232323;position:relative}
.detail-accordion .accordion-indicator::before,.detail-accordion .accordion-indicator::after{content:"";position:absolute;left:9px;top:14px;width:12px;height:2px;background:#fff}
.detail-accordion .accordion-indicator::after{transform:rotate(90deg);transition:transform .2s ease}
.detail-accordion[open] .accordion-indicator::after{transform:rotate(0)}
.detail-accordion .detail-rich-text{padding:0 24px 24px}
.trainer-highlight.no-image{padding-right:30px}
.detail-program{padding-top:0;margin-bottom:45px}
.detail-program h2{margin-bottom:58px}
.detail-pricing{display:grid;grid-template-columns:1fr 1fr;gap:22px;background:#f3f3f3;border-radius:20px;padding:28px 35px;margin:0 10px 24px}
.detail-pricing p{margin:0 0 14px}
.detail-pricing p:last-child{margin-bottom:0}
.detail-pricing>div{min-width:0}
.detail-pricing a{text-decoration:underline}
.detail-pricing .price-amount{display:inline-block;white-space:nowrap;font-weight:700;color:#232323}
.pricing-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#aaa;color:#fff;font-size:26px;margin-bottom:16px}
.related-section{padding:10px;margin-top:70px}
.related-section>p{margin:0;color:#666}
.related-carousel{margin-top:25px}
.related-carousel .carousel-track{gap:16px}
.related-carousel .formation-card{flex-basis:calc((100% - 16px)/2)}
.related-carousel .formation-card img{height:190px}
.related-carousel .card-body{padding:15px}
.related-carousel .card-body h3{font:400 17px/1.13 var(--display);margin:0 0 9px;color:#232323}
.related-carousel .card-body h3 a:hover{text-decoration:underline}
.related-carousel .card-body p{font-size:14px;line-height:1.42}
.related-carousel .card-button{font-size:13px}
.related-carousel .carousel-arrow{color:#666;text-shadow:none}
.related-carousel .carousel-prev{left:-30px}.related-carousel .carousel-next{right:-30px}
@media(max-width:1050px){.detail-layout{grid-template-columns:32% minmax(0,1fr);gap:30px}.trainer-highlight{padding-right:185px}.trainer-highlight img{width:170px;height:170px}.sidebar-contact{grid-template-columns:80px minmax(0,1fr)}.sidebar-contact>img{width:80px;height:80px}}
@media(max-width:760px){.detail-hero{height:300px;margin:30px auto 35px}.detail-layout{grid-template-columns:1fr;gap:35px}.detail-sidebar{order:2}.detail-content{order:1}.detail-title{min-height:0}.detail-intro{margin-bottom:50px}.related-section{margin-top:50px}.detail-sidebar{padding:24px}.sidebar-contact{grid-template-columns:100px minmax(0,1fr)}.sidebar-contact>img{width:100px;height:100px}}
@media(max-width:560px){.detail-page .content-width{width:calc(100% - 32px)}.detail-hero{height:210px;background-position:center}.detail-layout{margin-bottom:50px}.detail-content{padding:0}.detail-title{padding:0 0 15px;margin:0}.detail-title h1{font-size:23px;line-height:1.12}.detail-intro{padding:0;margin-bottom:40px}.trainer-highlight{display:block;padding:25px 22px 115px}.trainer-highlight img{width:125px;height:125px;right:15px;top:auto;bottom:-20px;transform:none}.detail-section{padding:0;margin-bottom:30px}.detail-program h2{margin-bottom:25px}.detail-pricing{grid-template-columns:1fr;margin:0 0 28px;padding:22px}.related-section{padding:0;margin-top:45px}.related-carousel .formation-card{flex-basis:88%}.related-carousel .formation-card img{height:190px}.sidebar-contact{grid-template-columns:90px minmax(0,1fr)}.sidebar-contact>img{width:90px;height:90px}}
@media(max-width:560px){.detail-accordion{margin:0 0 30px}.detail-accordion summary{padding:17px 18px;font-size:18px}.detail-accordion .detail-rich-text{padding:0 18px 20px}}
