/*
Theme Name: BeWithU
Theme URI: https://bewithu.fr
Author: Size Up
Author URI: https://size-up.io
Description: Thème léger sur mesure pour le réseau BeWithU (migration du site Next.js). Aucune dépendance, pages créées automatiquement à l'activation.
Version: 1.2.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: bewithu
*/

/* ---------- Polices ---------- */
@font-face{font-family:"TT Norms Pro";src:url(assets/fonts/TTNormsPro-Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"TT Norms Pro";src:url(assets/fonts/TTNormsPro-Medium.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"TT Norms Pro";src:url(assets/fonts/TTNormsPro-DemiBold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"TT Norms Pro";src:url(assets/fonts/TTNormsPro-Bold.woff2) format("woff2");font-weight:700;font-display:swap}

/* ---------- Base ---------- */
:root{
	--bordeau:#d76c58;--bordeau-light:#e4826f;--dark:#222d41;--text:#374158;--btn-dark:#384158;--gray:#f8f8f8;--line:#ececec;
	--pad:70px;--radius:24px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:#fff;color:var(--dark);font-family:"TT Norms Pro",system-ui,-apple-system,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,p{margin:0}
.bwu-main p:empty{display:none}
.bwu-main{overflow-x:clip}
.bwu-wrap{width:100%;max-width:calc(1440px + 2*var(--pad));margin:0 auto;padding:0 var(--pad)}
.wp-block-image{margin:0}
.wp-block-group__inner-container{display:contents}

/* ---------- Boutons ---------- */
.bwu-btn,.wp-block-button__link{display:inline-flex;align-items:center;gap:8px;padding:18px 28px;border-radius:999px;font-family:inherit;font-weight:500;font-size:16px;line-height:1.2;text-decoration:none;cursor:pointer;border:1px solid transparent;transition:transform .2s,background .2s,color .2s;white-space:nowrap}
.bwu-btn:hover,.wp-block-button__link:hover{transform:translateY(-2px)}
.bwu-btn--bordeau,.wp-block-button__link{background:var(--bordeau);color:#fff}
.bwu-btn--outline{border-color:var(--bordeau);color:var(--bordeau);background:#fff}
.bwu-btn--outline:hover{background:var(--bordeau);color:#fff}
.bwu-btn--block{width:100%;justify-content:center}
.is-style-white .wp-block-button__link{background:#fff;color:var(--bordeau)}
.is-style-dark .wp-block-button__link{background:var(--btn-dark);color:#fff}
.is-style-arrow .wp-block-button__link::after{content:"";width:16px;height:16px;background:currentColor;-webkit-mask:url(assets/icons/arrows-arrow-square-angle.svg) center/contain no-repeat;mask:url(assets/icons/arrows-arrow-square-angle.svg) center/contain no-repeat}
.wp-block-buttons{display:flex;flex-wrap:wrap;gap:12px}

/* ---------- Header ---------- */
.bwu-header{position:sticky;top:0;z-index:40;background:#fff}
.bwu-header__inner{display:flex;align-items:center;justify-content:space-between;height:80px}
.bwu-nav{display:flex;align-items:center;gap:40px;font-size:15px}
.bwu-nav a:not(.bwu-btn){text-decoration:none;color:var(--dark)}
.bwu-nav a:not(.bwu-btn):hover{color:var(--bordeau)}
.bwu-nav .bwu-btn{margin-left:24px}
.bwu-burger{display:none;background:none;border:0;padding:8px;cursor:pointer}
.bwu-burger span{display:block;width:24px;height:2px;background:var(--dark);margin:5px 0;transition:.2s}

/* ---------- Sections communes ---------- */
.bwu-section{margin:0 auto 150px}
.bwu-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:48px}
.bwu-head__text{max-width:640px;display:flex;flex-direction:column;gap:20px}
.bwu-main h2{font-size:40px;line-height:50px;font-weight:500;letter-spacing:-.06em;color:var(--dark)}
.bwu-lead{font-size:20px;opacity:.7}

/* ---------- Hero ---------- */
.bwu-hero{position:relative;overflow:hidden;height:652px;margin-top:48px;border-radius:22px;background:
	url(assets/img/wave.webp) right -120px top -80px/1262px auto no-repeat,
	url(assets/icons/hero-line.svg) left -60px top -10px/378px auto no-repeat,
	url(assets/icons/hero-dark-blue-corner.svg) left top/187px auto no-repeat,
	url(assets/icons/hero-blue-corner.svg) left -240px top -300px/528px auto no-repeat,
	linear-gradient(90deg,var(--bordeau-light),var(--bordeau))}
.bwu-hero__content{position:relative;z-index:2;padding:205px 0 0 124px;display:flex;flex-direction:column;gap:12px;max-width:900px}
.bwu-hero h1{color:#fff;font-size:36px;font-weight:400;letter-spacing:-.06em;line-height:1.2}
.bwu-hero h1 strong{display:block;font-size:63.66px;font-weight:600;white-space:nowrap}
.bwu-hero__lead{color:#fff;opacity:.7;font-size:20px;max-width:632px}
.bwu-hero .wp-block-buttons{margin-top:12px}
.bwu-hero__people{position:absolute!important;right:0;bottom:0;width:614px;z-index:1}
.bwu-intro{max-width:1000px;margin:100px auto 150px;text-align:center;font-size:24px;line-height:36px;color:var(--text)}
.bwu-intro strong{font-weight:600}

/* ---------- Concept ---------- */
.bwu-concept{background:var(--gray);padding:100px var(--pad);margin-bottom:40px}
.bwu-concept__inner{max-width:1440px;margin:0 auto;display:flex;gap:58px;justify-content:space-between}
.bwu-concept__intro{max-width:443px;display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.bwu-concept__intro p{opacity:.7;font-size:20px}
.bwu-cards{display:grid;gap:24px}
.bwu-card{background:#fff;border-radius:30px;padding:42px 52px 44px 40px;display:flex;flex-direction:column;gap:0;max-width:380px;color:var(--dark);transition:background-color .3s,color .3s,transform .45s cubic-bezier(.34,1.56,.64,1);will-change:transform}
.bwu-card__head{display:flex;align-items:center;gap:15px}
.bwu-card__head img{width:24px;height:24px;transition:filter .3s}
.bwu-card h3{font-size:26px;font-weight:500;color:inherit;transition:color .3s}
.bwu-card p{margin-top:35px;font-size:16px;line-height:22px;color:inherit}
.bwu-card .bwu-card__link{margin-top:28px;color:var(--bordeau);font-size:16px}
.bwu-card .bwu-card__link a{text-decoration:underline;text-underline-offset:6px;color:var(--bordeau)}
.bwu-card:hover{background:var(--dark);color:#fff;transform:rotate(-3deg)}
.bwu-card:hover .bwu-card__head img{filter:brightness(0) invert(1)}
.bwu-card:hover .bwu-card__link a{color:var(--bordeau)}
.bwu-cards{grid-template-columns:repeat(2,minmax(0,380px))}

/* ---------- Pour qui ---------- */
.bwu-forwho{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.bwu-forwho__item{position:relative;border-radius:var(--radius);overflow:hidden;aspect-ratio:416/505}
.bwu-forwho__item .wp-block-image,.bwu-forwho__item .wp-block-image img{width:100%;height:100%;object-fit:cover}
.bwu-forwho__box{position:absolute;left:16px;right:16px;bottom:16px;background:#fff;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:6px}
.bwu-forwho__box h3{font-size:18px;font-weight:500}
.bwu-forwho__box p{opacity:.7;font-size:15px}

/* ---------- Témoignages ---------- */
.bwu-slider{position:relative;max-width:900px;margin:0 auto;padding:0 64px}
.bwu-slide{display:none;background:var(--gray);border-radius:var(--radius);padding:48px;gap:12px;flex-direction:column}
.bwu-slide.is-active{display:flex;animation:bwu-fade .4s ease}
@keyframes bwu-fade{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:none}}
.bwu-slide__quote{font-style:italic;color:var(--dark)}
.bwu-slide__name{color:var(--bordeau);margin-top:16px!important}
.bwu-slide__meta{font-size:15px;opacity:.8}
.bwu-slide__place{font-size:14px;color:var(--bordeau)}
.bwu-slide__place a{color:#0a66c2;font-weight:600;margin-left:6px;text-decoration:none}
.bwu-slide .wp-block-image{margin-top:24px}
.bwu-slide .wp-block-image img{width:100%;max-height:560px;object-fit:cover;border-radius:16px}
.bwu-slider__nav{position:absolute;top:50%;width:44px;height:44px;border:0;border-radius:50%;background:transparent;cursor:pointer;color:var(--bordeau);font-size:24px}
.bwu-slider__nav:hover{background:var(--gray)}
.bwu-slider__prev{left:0}.bwu-slider__next{right:0}

/* ---------- Tarif ---------- */
#tarif{position:relative}
.bwu-pricing{display:flex;align-items:center}
.bwu-steps{flex:0 0 auto;width:100%;max-width:608px;background:linear-gradient(to top left,#b35f53,#d76c58);border-radius:26px;padding:56px 24px 56px 66px;color:#fff}
.bwu-steps h3{max-width:314px;font-size:34px;font-weight:600;line-height:1.5;color:#fff;letter-spacing:-.02em}
.bwu-steps ol{list-style:none;counter-reset:s;margin:23px 0 0;padding:0;display:flex;flex-direction:column;gap:11px;max-width:314px}
.bwu-steps li{counter-increment:s;background:#fff;color:var(--dark);border-radius:12px;padding:18px 20px;display:flex;gap:16px;align-items:center;font-weight:500}
.bwu-steps li::before{content:counter(s);font-weight:600}
.bwu-price{flex:1;margin-left:22px;background:linear-gradient(to top left,#3d4864,#222d41);border-radius:26px;padding:66px 54px 66px 24px;color:#fff;display:flex;flex-direction:column;align-items:flex-end;text-align:right;gap:0}
.bwu-price h3{max-width:206px;font-size:40px;line-height:53px;font-weight:600;color:#fff}
.bwu-price__value{display:flex;flex-direction:column;align-items:flex-end}
.bwu-price .bwu-price__amount{margin-top:40px;font-size:119px;font-weight:600;line-height:.5;padding:10px 0}
.bwu-price__cur{font-size:40px}
.bwu-price__unit{font-size:26.45px}
.bwu-signup{margin-top:58px;display:flex;align-items:center;background:#fff;border-radius:999px;padding:11px 11px 11px 22px;gap:10px}
.bwu-signup input{border:0;outline:0;font:inherit;font-size:16px;color:var(--dark);min-width:0;width:200px;background:transparent}
.bwu-phone{position:absolute!important;left:50%;top:66.67%;width:384px;transform:translate(-50%,-50%) rotate(10.93deg);z-index:3;pointer-events:none}
.bwu-phone img{width:100%}

#tarif .bwu-head{margin-bottom:0;align-items:flex-start}
#tarif .bwu-head__text{max-width:500px}

/* ---------- Chiffres ---------- */
.bwu-figures{border:1px solid var(--line);border-radius:var(--radius);padding:48px 32px}
.bwu-figures__text{opacity:.7;margin-top:20px}
.bwu-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:2px solid var(--line);margin-top:78px;padding-top:20px}
.bwu-stat{display:flex;flex-direction:column;gap:12px}
.bwu-stat__num{font-size:64px!important;font-weight:500;letter-spacing:-.04em;line-height:1}
.bwu-stat__label{font-size:14px;opacity:.8}
.bwu-figures .wp-block-image{margin-top:48px}
.bwu-figures .wp-block-image img{width:100%;border-radius:16px}

/* ---------- Instagram ---------- */
.bwu-insta{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.bwu-insta img{width:100%;aspect-ratio:9/16;object-fit:cover;border-radius:16px;transition:transform .3s}
.bwu-insta a:hover img{transform:scale(1.02)}

/* ---------- CTA final ---------- */
.bwu-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid var(--line);border-radius:var(--radius);padding:48px;margin:0 auto 40px}
.bwu-main .bwu-cta h2{color:var(--bordeau);font-size:48px;line-height:1.1}

/* ---------- Footer ---------- */
.bwu-footer{background:var(--dark);color:#fff;border-radius:var(--radius);padding:48px;display:flex;justify-content:space-between;gap:40px;margin-bottom:40px;min-height:280px}
.bwu-footer__brand{display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.bwu-footer__social{display:flex;gap:12px}
.bwu-footer__cols{display:flex;gap:80px}
.bwu-footer__cols>div{display:flex;flex-direction:column;gap:8px}
.bwu-footer__cols a{color:#fff;text-decoration:none;opacity:.8;font-size:15px}
.bwu-footer__cols a:hover{opacity:1}
.bwu-footer__title{opacity:.5;font-weight:500;margin-bottom:4px!important}

/* ---------- Page légale ---------- */
.bwu-legal{max-width:900px;padding-top:60px;padding-bottom:100px;color:var(--text)}
.bwu-legal h1{font-size:48px;font-weight:500;letter-spacing:-.06em;color:var(--dark);margin-bottom:8px}
.bwu-legal h2{font-size:24px;line-height:1.3;margin:40px 0 12px;color:var(--dark);font-weight:500}
.bwu-legal p,.bwu-legal li{margin-bottom:10px}
.bwu-legal a{color:var(--bordeau)}

/* ---------- Modale formulaire ---------- */
.bwu-modal{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;padding:16px}
.bwu-modal[hidden]{display:none}
.bwu-modal__box{position:relative;background:#fff;border-radius:var(--radius);padding:24px 32px 32px;width:100%;max-width:900px;max-height:85vh;overflow-y:auto;color:var(--dark)}
.bwu-modal__close{position:absolute;top:24px;right:24px;background:none;border:0;cursor:pointer;padding:4px}
.bwu-modal__title{font-size:40px;line-height:50px;font-weight:500;max-width:503px}
.bwu-modal__intro{opacity:.7;max-width:503px;margin:12px 0 24px!important}
.bwu-form{display:flex;flex-direction:column;gap:20px}
.bwu-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px}
.bwu-form label{display:flex;flex-direction:column;gap:8px;font-weight:500;font-size:15px}
.bwu-form label[hidden]{display:none}
.bwu-form input:not([type=checkbox]),.bwu-form select,.bwu-form textarea{font:inherit;font-weight:400;padding:12px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--dark);width:100%}
.bwu-form input:focus,.bwu-form select:focus,.bwu-form textarea:focus{outline:2px solid var(--bordeau);outline-offset:-1px}
.bwu-form .bwu-form__check{flex-direction:row;align-items:flex-start;font-weight:400;font-size:14px;opacity:.85}
.bwu-form__check input{margin-top:4px;accent-color:var(--bordeau)}
.bwu-form__check a{color:var(--bordeau)}
.bwu-form__msg{font-size:15px;text-align:center}
.bwu-form__msg.is-ok{color:#1d7a4a}.bwu-form__msg.is-err{color:#b3261e}
.bwu-hp{position:absolute!important;left:-9999px!important}
body.bwu-lock{overflow:hidden}

/* ---------- Responsive ---------- */
@media (max-width:1279px){
	.bwu-concept__inner{flex-direction:column}
	.bwu-pricing{flex-direction:column;align-items:stretch}
	.bwu-steps{max-width:none;padding:32px}
	#tarif .bwu-head{margin-bottom:48px}
	.bwu-price{order:3;margin-left:0;padding:32px;align-items:flex-start;text-align:left;gap:32px}
	.bwu-price__value{align-items:flex-start}
	.bwu-phone{order:2;position:relative!important;left:auto;top:auto;width:296px;margin:-40px auto -10px;transform:rotate(5deg)}
	.bwu-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
	.bwu-card{max-width:none}
}
@media (max-width:1023px){
	:root{--pad:35px}
	.bwu-burger{display:block}
	.bwu-nav{display:none;position:absolute;top:80px;left:0;right:0;background:#fff;flex-direction:column;align-items:flex-start;gap:20px;padding:24px var(--pad) 32px;box-shadow:0 12px 24px rgba(0,0,0,.06)}
	.bwu-nav.is-open{display:flex}
	.bwu-nav .bwu-btn{margin-left:0}
	.bwu-hero{height:auto;min-height:750px;margin-top:20px}
	.bwu-hero__content{padding:48px 24px 0}
	.bwu-hero__people{width:420px}
	.bwu-head{flex-direction:column;align-items:flex-start}
	.bwu-forwho{grid-template-columns:1fr 1fr}
	.bwu-insta{grid-template-columns:repeat(2,1fr)}
	.bwu-stats{grid-template-columns:1fr;margin-top:24px}
	.bwu-section,.bwu-intro{margin-bottom:100px}
}
@media (max-width:767px){
	:root{--pad:16px}
	.bwu-main h2,.bwu-modal__title{font-size:24px;line-height:1.3}
	.bwu-lead,.bwu-concept__intro p,.bwu-hero__lead{font-size:14px}
	.bwu-hero h1{font-size:20px}
	.bwu-hero h1 strong{font-size:40px;font-weight:500;white-space:normal}
	.bwu-hero__people{width:min(100%,380px)}
	.bwu-intro{font-size:14px;line-height:1.5;text-align:left;margin-top:60px}
	.bwu-concept{padding:24px var(--pad)}
	.bwu-cards,.bwu-forwho,.bwu-form__grid{grid-template-columns:1fr}
	.bwu-card{padding:25px}
	.bwu-card p,.bwu-card .bwu-card__link{margin-top:12px}
	.bwu-card h3{font-size:20px}
	.bwu-steps h3,.bwu-price h3{font-size:24px;line-height:1.3}
	.bwu-price .bwu-price__amount{font-size:80px}
	.bwu-price__unit{font-size:14px}
	.bwu-signup{margin-top:24px;align-self:stretch;flex-direction:column;align-items:stretch;border-radius:12px;padding:18px 12px 12px}
	.bwu-signup input{width:100%}
	.bwu-slider{padding:0}
	.bwu-slide{padding:24px}
	.bwu-slider__nav{top:auto;bottom:-56px}
	.bwu-slider__prev{left:calc(50% - 52px)}.bwu-slider__next{right:calc(50% - 52px)}
	.bwu-cta{flex-direction:column;align-items:flex-start;padding:24px}
	.bwu-main .bwu-cta h2{font-size:28px}
	.bwu-footer{flex-direction:column;padding:32px 24px}
	.bwu-footer__cols{gap:40px}
	.bwu-figures{padding:24px}
	.bwu-stat__num{font-size:48px!important}
	.bwu-modal__box{padding:20px}
	.bwu-legal h1{font-size:32px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
