/*
Theme Name: Cours de chant Paris — Avec Panache
Version: 1.0.0
Description: Univers Paris, rouge et crème.
*/
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Manrope:wght@300;400;500;600&display=swap');
:root{--red:#cc0000;--ink:#171717;--paper:#fffaf8;--line:#17171730}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.75 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,a,summary{outline-offset:6px}img{display:block;max-width:100%;height:auto}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:400;letter-spacing:-.055em;line-height:1.08;margin:0 0 25px}h1{font-size:clamp(55px,6.5vw,100px)}h2{font-size:clamp(34px,4vw,60px)}h3{font-size:28px}p{margin:0 0 26px}em{font-style:normal;color:var(--red)}header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:22px 5%;background:#fffaf8f5;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:16px;font-family:Manrope,sans-serif;font-size:21px;line-height:1.2;flex-shrink:0}.brand img{width:50px;height:58px;object-fit:contain}.brand small{display:block;font:10px 'DM Sans',sans-serif;letter-spacing:.2em;margin-top:8px}nav{display:flex;align-items:center;gap:28px;font-size:13px}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}.mega{position:absolute;top:100%;left:0;right:0;padding:45px 6%;background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;box-shadow:0 25px 45px #0002}.mega h2{font-size:40px;margin-top:25px}.mega small{font-size:10px;letter-spacing:.16em}.mega a{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #fff3;padding:15px 0;font-size:15px;gap:20px}.mega a:hover{color:#ff9999}.arrow{width:24px;height:24px;display:inline-block;flex-shrink:0;vertical-align:middle}.navcta,.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;padding:16px 24px;border-radius:40px;background:var(--red);color:white;font-size:14px}.button{padding:20px 28px}.navcta:hover,.button:hover{background:#990000}.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;padding:75px 6% 65px;align-items:center;max-width:1550px;margin:auto}.hero h1{margin:30px 0}.hero p{font-size:19px;max-width:510px}.hero figure{margin:0}.hero img{width:100%;height:580px;object-fit:cover;object-position:center 20%}.hero figcaption{font-size:11px;margin-top:12px;letter-spacing:.035em}.eyebrow{font-size:11px;letter-spacing:.18em;display:block;font-weight:500}.note{display:block;font-size:12px;margin-top:16px;opacity:.75}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:65px 6% 90px;border-top:1px solid var(--line)}.cards>.eyebrow{grid-column:1/-1;margin-bottom:20px}.card{border:1px solid var(--line);padding:34px 30px;min-height:350px;position:relative;display:block}.card small{font-size:10px;letter-spacing:.13em}.card h2{font-size:43px;margin-top:70px}.card .arrow{position:absolute;right:28px;bottom:32px;width:38px;height:38px}.card.red{background:var(--red);color:white;border-color:var(--red)}.card:hover{transform:translateY(-3px)}.pagetop{padding:75px 6% 65px;border-bottom:1px solid var(--line)}.pagetop h1{margin-top:30px;max-width:1100px}.editorial{max-width:1120px;margin:auto;padding:65px 6% 90px;overflow-wrap:anywhere}.editorial>h2{margin-top:55px}.editorial h3{margin-top:40px}.editorial a:not(.button):not(.article-card){text-decoration:underline;text-underline-offset:5px}.editorial img{max-height:650px;width:auto;margin:35px 0;object-fit:contain}.editorial iframe{width:100%;min-height:420px;border:0;margin:30px 0}.editorial p{max-width:850px}.editorial ul{padding-left:24px}.editorial figure{margin:0}.editorial:empty{display:none}.editorial svg{max-width:28px;max-height:28px}.article-card{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:35px;padding:35px 0}.article-card h2{font-size:35px;margin:0}.calendar{margin-top:65px;border-top:1px solid var(--line);padding-top:50px;scroll-margin-top:130px}.calendar h2{margin-top:24px}.calendar iframe{min-height:780px;background:white}.editorial table{max-width:100%;border-collapse:collapse}.editorial td,.editorial th{padding:12px;border-bottom:1px solid var(--line)}footer{padding:70px 6% 30px;background:var(--ink);color:white;display:grid;grid-template-columns:1.5fr 1fr;gap:60px}footer h2{margin-top:25px;font-size:46px}footer em{color:#ff9999}footer p{font-size:15px;max-width:550px}footer>div:nth-child(2) a{display:flex;align-items:center;justify-content:space-between;padding:12px 0;border-bottom:1px solid #fff3;font-size:14px}footer>small{grid-column:1/-1;border-top:1px solid #fff3;padding-top:25px;font-size:11px}footer>small a{margin-left:20px}footer>small .arrow{width:14px;height:14px}.mobile{display:none}.skip{position:fixed;top:-100px;background:white;padding:15px;z-index:50}.skip:focus{top:0}@media(max-width:1000px){header{gap:16px}.brand{font-size:17px}nav{gap:17px;font-size:12px}.navcta{padding:12px 16px;gap:18px}.hero{gap:5%}.hero h1{font-size:64px}.card{padding:25px}.card h2{font-size:34px}}@media(max-width:800px){header{padding:16px 6%}.brand img{width:38px;height:45px}.mobile{display:block;background:none;border:1px solid var(--line);border-radius:30px;padding:12px 19px;font:inherit;font-size:13px}nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:20px 6%;max-height:calc(100dvh - 90px);overflow:auto}nav.open{display:block}nav>a,nav summary{display:block;padding:16px 0;border-bottom:1px solid var(--line)}nav .navcta{padding:16px 20px;display:flex;margin-top:20px}.mega{position:static;display:block;padding:22px;background:var(--ink);box-shadow:none}.mega>div:first-child{display:none}.mega a{font-size:14px}.hero{grid-template-columns:1fr;padding-top:45px;gap:35px}.hero h1{font-size:62px}.hero img{height:auto;max-height:580px;object-fit:contain}.hero p{font-size:17px}.cards{grid-template-columns:1fr;padding-top:45px;padding-bottom:55px}.card{min-height:280px}.card h2{margin-top:45px;font-size:46px}.pagetop{padding-top:45px;padding-bottom:45px}.pagetop h1{font-size:48px}.editorial{padding-top:40px;padding-bottom:55px}.editorial h2{font-size:35px}footer{grid-template-columns:1fr;gap:30px}footer h2{font-size:39px}.calendar iframe{min-height:850px}.brand small{font-size:8px}.button{gap:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Logos des réseaux, sans cadres */
.social-icons{display:flex;gap:16px;align-items:center;flex-shrink:0}.social-icons a{display:inline-flex!important;align-items:center;justify-content:center;padding:7px!important;width:38px;height:38px;border:0!important;background:transparent}.social-icons img{display:block;width:24px;height:24px;margin:0;filter:brightness(0)}footer .social-icons{margin-top:20px;justify-content:flex-start}footer .social-icons img{filter:brightness(0) invert(1)}@media(max-width:800px){header{flex-wrap:wrap}header .social-icons{width:100%;gap:12px}header .social-icons a{width:30px;height:30px;padding:3px!important}}
/* Univers Paris : rouge profond et crème rosé */
:root{--red:#cc0000;--paper:#fff1e9;--cream:#fff1e9;--ink:#241914;--line:#fff1e940}
body{background:var(--red);color:var(--cream)}
header{background:#cc0000f5;border-bottom-color:var(--line)}
header .social-icons img{filter:brightness(0) invert(1)}
header .mobile{color:var(--cream);border-color:var(--line)}
header .navcta,.hero .button{background:var(--cream);color:var(--red)}
header .navcta:hover,.hero .button:hover{background:#ffe0d2}
.hero,.pagetop{background:var(--red);color:var(--cream)}
.hero figcaption{color:var(--cream);opacity:.85}
.cards{border-top-color:var(--line)}
.card{background:transparent;border-color:var(--line);color:var(--cream)}
.card.red{background:var(--cream);border-color:var(--cream);color:var(--red)}
.editorial{background:var(--cream);color:var(--ink);max-width:none;padding:75px max(6%,calc((100vw - 1000px)/2)) 90px}
.editorial:empty{display:none}
.editorial a:not(.button){text-decoration-color:#cc000066}
.editorial h2,.editorial h3{color:var(--red)}
.article-card,.calendar,.editorial td,.editorial th{border-color:#24191430}
.mega{background:var(--cream);color:var(--ink)}
.mega a{border-color:#24191430}.mega a:hover{color:var(--red)}
footer{background:var(--red);color:var(--cream);border-top:1px solid var(--line)}
footer em{color:var(--cream);opacity:.8}
footer>div:nth-child(2) a,footer>small{border-color:var(--line)}
@media(max-width:800px){nav{background:var(--red);color:var(--cream)}nav>a,nav summary{border-color:var(--line)}.mega{background:var(--cream);color:var(--ink)}.editorial{padding:45px 6% 60px}}
/* Rouge brique chaleureux, moins vif */
:root{--red:#963f3a;--cream:#fff1e9;--paper:#fff1e9}
header{background:#963f3af7}
header .navcta:hover,.hero .button:hover{background:#f5d7c7}
.navcta:hover,.button:hover{background:#7d322f}
.mega a:hover{color:var(--red)}
.editorial a:not(.button){text-decoration-color:#963f3a66}
/* Rouge franc adouci, sans dominante brune */
:root{--red:#b92536}
header{background:#b92536f7}
.navcta:hover,.button:hover{background:#a51e2e}
.editorial a:not(.button){text-decoration-color:#b9253666}

.social-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.social-links a{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:30px;padding:9px 14px;font-size:12px;line-height:1.4;white-space:nowrap}.social-links a:hover{background:var(--cream);color:var(--red)}@media(max-width:1100px){header{flex-wrap:wrap}.social-links{width:100%}}
/* Rouge plus net, sans nuance rosée */
:root{--red:#bc1515}
header{background:#bc1515f7}
.navcta:hover,.button:hover{background:#a61212}
.editorial a:not(.button){text-decoration-color:#bc151566}
/* Une composition plus artistique, dans la famille Panache */
.hero{position:relative;isolation:isolate;overflow:hidden;padding-top:95px;padding-bottom:85px}
.hero>div,.hero>figure{position:relative;z-index:1}
.hero:before{content:'';position:absolute;z-index:0;width:660px;height:430px;right:-210px;top:100px;border:1px solid #fff1e940;border-radius:50%;transform:rotate(-35deg);pointer-events:none}
.hero h1{letter-spacing:-.065em;line-height:1.02;max-width:750px}
.hero>div{padding-bottom:40px}
.hero figure{padding-top:45px;transform:translateY(18px)}
.hero figcaption{border-left:1px solid #fff1e970;padding-left:13px;margin-top:17px}
.hero .eyebrow{display:flex;align-items:center;gap:17px}.hero .eyebrow:before{content:'';width:42px;height:1px;background:currentColor}
.cards{align-items:start;padding-top:80px;padding-bottom:115px}
.cards .card{min-height:370px;transition:transform .25s ease,background .25s ease}
.cards .card:nth-of-type(2){margin-top:38px}
.cards .card:nth-of-type(3){margin-top:76px}
.card small{display:block;max-width:220px;line-height:1.8;letter-spacing:.17em}
.card h2{font-weight:300;letter-spacing:-.06em}
.card .arrow{right:30px;bottom:28px;width:43px;height:43px}
.pagetop{position:relative;overflow:hidden;padding-bottom:80px}
.pagetop:after{content:'';position:absolute;right:-100px;top:45px;width:360px;height:220px;border:1px solid #fff1e930;border-radius:50%;transform:rotate(-30deg);pointer-events:none}
footer h2{font-weight:300;letter-spacing:-.055em}
@media(max-width:800px){.hero{padding-top:50px;padding-bottom:55px}.hero>div{padding-bottom:0}.hero figure{padding-top:0;transform:none}.hero:before{width:400px;height:280px;top:240px;right:-240px}.cards{padding-top:45px;padding-bottom:55px}.cards .card:nth-of-type(2),.cards .card:nth-of-type(3){margin-top:0}.cards .card{min-height:290px}.pagetop{padding-bottom:50px}}

main>.calendar,main>.registration{margin:0;padding:65px max(6%,calc((100vw - 1000px)/2));background:var(--cream);color:var(--ink)}.registration h2{margin-top:25px;color:var(--red)}.registration label{display:block;font-size:14px}.registration input:not([type=checkbox]):not([type=hidden]),.registration textarea{display:block;width:100%;padding:15px;border:1px solid #24191440;background:transparent;font:inherit;color:var(--ink);margin:8px 0 24px;border-radius:3px}.registration input[type=submit]{background:var(--red)!important;color:var(--cream)!important;cursor:pointer;width:auto!important;padding:16px 30px!important;border-radius:30px!important}.hidden-fields-container{display:none}.registration .wpcf7-list-item{margin:0}.registration form{max-width:760px}

/* Logos directs, sans pastilles ni contours */
.social-links{gap:16px}.social-links a{border:0!important;border-radius:0!important;padding:5px!important;width:37px;height:37px;background:transparent!important}.social-links a:hover{opacity:.72}.social-links img{display:block;width:27px;height:27px;margin:0;filter:brightness(0) invert(1)}@media(max-width:1100px){header .social-links{width:auto}}

.article-photo{margin:0 0 42px!important}.article-photo img{width:100%;max-height:640px;object-fit:contain;object-position:center;margin:0 auto 12px}.article-photo figcaption{font-size:12px;opacity:.75}

nav .trial-nav{background:transparent;border:0;border-radius:0;padding:0;color:inherit;white-space:nowrap}@media(max-width:800px){nav .trial-nav{padding:16px 0;border-bottom:1px solid var(--line)}}

.paris-site .editorial .elementor{color:var(--ink)}.paris-site .editorial .elementor h2{color:var(--red);font-family:Manrope,sans-serif;font-weight:400;font-size:clamp(30px,4vw,50px);line-height:1.15}.paris-site .editorial .elementor p{font-family:DM Sans,sans-serif;font-size:17px;line-height:1.8}.registration .wpcf7 input,.registration .wpcf7 textarea{max-width:100%}.site-reviews{padding:55px 6%;background:var(--cream);color:var(--ink)}.site-reviews h2{color:var(--red)}.wpadminbar{position:fixed}
