:root{--navy:#172A63;--turquoise:#18AAA9;--green:#94BE48;--orange:#F6A20B;--coral:#F26055;--ink:#23304a;--muted:#6d7688;--line:#e5eaf1;--soft:#f7f9fc;--white:#fff;--radius:24px;--shadow:0 18px 48px rgba(23,42,99,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Nunito Sans","Poppins",Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.95);backdrop-filter:blur(14px);border-bottom:1px solid rgba(229,234,241,.8)}.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand img{display:block;width:176px;height:auto}.main-nav{display:flex;align-items:center;gap:28px}.main-nav>a:not(.btn){text-decoration:none;font-weight:700;color:var(--navy)}.main-nav>a:not(.btn):hover{color:var(--turquoise)}.menu-toggle{display:none;border:0;background:var(--soft);color:var(--navy);font-weight:800;padding:12px 16px;border-radius:14px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border-radius:16px;background:var(--turquoise);color:#fff;text-decoration:none;font-weight:800;box-shadow:0 10px 25px rgba(24,170,169,.18);transition:.2s ease}.btn:hover{transform:translateY(-1px);filter:brightness(.97)}.btn-small{min-height:44px;padding:0 18px}.btn-secondary{background:#fff;color:var(--navy);border:1px solid var(--line);box-shadow:none}.hero{overflow:hidden;padding:86px 0 76px;background:radial-gradient(circle at 85% 15%,rgba(24,170,169,.12),transparent 30%),radial-gradient(circle at 10% 90%,rgba(246,162,11,.10),transparent 28%),#fff}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:72px}.eyebrow{display:inline-block;color:var(--turquoise);font-size:.82rem;text-transform:uppercase;letter-spacing:.12em;font-weight:900;margin-bottom:12px}.hero h1,.section h2,.cta-box h2{color:var(--navy);line-height:1.08;margin:0}.hero h1{font-size:clamp(2.6rem,5.4vw,5rem);letter-spacing:-.04em;max-width:820px}.lead{font-size:1.2rem;color:var(--muted);max-width:680px;margin:24px 0 30px}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.trust-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.trust-row span{font-size:.9rem;font-weight:800;color:var(--navy);background:var(--soft);padding:8px 12px;border-radius:999px}.hero-visual{position:relative}.calendar-card{background:#fff;border:1px solid var(--line);border-radius:30px;padding:24px;box-shadow:var(--shadow);transform:rotate(1deg)}.calendar-top{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:18px;border-bottom:1px solid var(--line)}.calendar-top strong{display:block;color:var(--navy);font-size:1.1rem}.calendar-top small{display:block;color:var(--muted)}.status-pill{background:rgba(24,170,169,.12);color:var(--turquoise);font-size:.8rem;font-weight:900;padding:8px 12px;border-radius:999px}.trip{display:grid;grid-template-columns:64px 1fr auto;gap:14px;align-items:center;padding:18px 0;border-bottom:1px solid var(--line)}.trip:last-child{border-bottom:0}.trip-date{border-left:4px solid var(--orange);padding-left:10px}.trip-green .trip-date{border-color:var(--green)}.trip-coral .trip-date{border-color:var(--coral)}.trip-date strong,.trip-date small{display:block}.trip-date strong{color:var(--navy)}.trip-date small{color:var(--muted)}.trip-main strong,.trip-main span{display:block}.trip-main strong{color:var(--navy)}.trip-main span{color:var(--muted);font-size:.88rem}.driver{font-size:.74rem;font-weight:900;padding:7px 10px;border-radius:999px;white-space:nowrap}.waiting{background:rgba(246,162,11,.12);color:#a46900}.confirmed{background:rgba(148,190,72,.16);color:#557b19}.section{padding:96px 0}.section-soft{background:var(--soft)}.section-heading{max-width:760px;margin-bottom:42px}.section-heading.compact{margin-bottom:28px}.section h2,.cta-box h2{font-size:clamp(2rem,3.6vw,3.15rem);letter-spacing:-.03em}.section-heading p,.intro{color:var(--muted);font-size:1.08rem}.cards-3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.feature-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:30px;background:#fff;overflow:hidden}.feature-card:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--turquoise)}.accent-orange:before{background:var(--orange)}.accent-green:before{background:var(--green)}.feature-card .icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--soft);color:var(--navy);font-weight:900;font-size:1.3rem}.feature-card h3{color:var(--navy);margin:18px 0 8px;font-size:1.25rem}.feature-card p{margin:0;color:var(--muted)}.split{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.steps{list-style:none;margin:0;padding:0;display:grid;gap:14px}.steps li{display:grid;grid-template-columns:48px 1fr;gap:16px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:18px}.steps li>span{width:42px;height:42px;border-radius:13px;background:var(--navy);color:#fff;display:grid;place-items:center;font-weight:900}.steps strong{color:var(--navy);font-size:1.04rem}.steps p{margin:4px 0 0;color:var(--muted)}.agenda-showcase{border:1px solid var(--line);border-radius:30px;padding:38px;background:#fff;box-shadow:var(--shadow)}.view-switch{display:inline-flex;background:var(--soft);padding:5px;border-radius:14px;gap:4px;margin-bottom:20px}.view-switch span{padding:8px 14px;border-radius:10px;color:var(--muted);font-weight:800}.view-switch .active{background:#fff;color:var(--navy);box-shadow:0 3px 10px rgba(23,42,99,.08)}.week-grid{display:grid;grid-template-columns:repeat(5,1fr);border:1px solid var(--line);border-radius:18px;overflow:hidden;min-height:250px}.week-grid>div{padding:14px;border-right:1px solid var(--line);background:linear-gradient(#fff,#fbfcfe)}.week-grid>div:last-child{border-right:0}.week-grid b{display:block;color:var(--navy);font-size:.88rem;margin-bottom:34px}.evt{display:block;border-radius:12px;padding:10px;font-style:normal;font-size:.82rem;line-height:1.35;font-weight:800;color:var(--navy)}.e1{background:rgba(246,162,11,.14);border-left:4px solid var(--orange)}.e2{background:rgba(148,190,72,.16);border-left:4px solid var(--green)}.e3{background:rgba(242,96,85,.13);border-left:4px solid var(--coral)}.section-dark{background:var(--navy);color:#fff}.section-dark h2{color:#fff}.section-dark p{color:rgba(255,255,255,.75)}.eyebrow.light{color:#7ee0df}.security-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.security-points{display:grid;gap:14px}.security-points div{border:1px solid rgba(255,255,255,.14);border-radius:18px;padding:20px;background:rgba(255,255,255,.05)}.security-points strong,.security-points span{display:block}.security-points span{color:rgba(255,255,255,.72);margin-top:4px}.cta-section{padding:80px 0}.cta-box{display:grid;grid-template-columns:120px 1fr auto;gap:28px;align-items:center;border:1px solid var(--line);border-radius:30px;padding:32px;background:linear-gradient(135deg,#fff 0%,#f7fbfb 100%)}.cta-logo{width:110px;height:90px;object-fit:contain}.cta-box p{margin:8px 0 0;color:var(--muted)}.site-footer{border-top:1px solid var(--line);padding:38px 0}.footer-wrap{display:grid;grid-template-columns:180px 1fr auto;gap:28px;align-items:center}.footer-wrap img{width:160px}.footer-wrap p{color:var(--muted);margin:0;font-size:.92rem}.footer-links{display:flex;gap:16px;flex-wrap:wrap}.footer-links a{font-size:.9rem;color:var(--navy);font-weight:700;text-decoration:none}
@media(max-width:900px){.main-nav{display:none;position:absolute;top:72px;left:20px;right:20px;flex-direction:column;align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.main-nav.open{display:flex}.menu-toggle{display:block}.hero-grid,.split,.security-grid{grid-template-columns:1fr;gap:44px}.hero{padding-top:60px}.cards-3{grid-template-columns:1fr}.cta-box{grid-template-columns:90px 1fr}.cta-box .btn{grid-column:1/-1}.footer-wrap{grid-template-columns:1fr}.week-grid{overflow-x:auto;grid-template-columns:repeat(5,minmax(145px,1fr))}}
@media(max-width:600px){.container{width:min(100% - 28px,1160px)}.nav-wrap{min-height:70px}.brand img{width:150px}.hero{padding:48px 0 58px}.hero h1{font-size:2.55rem}.lead{font-size:1.04rem}.hero-actions .btn{width:100%}.calendar-card{padding:18px;border-radius:22px}.trip{grid-template-columns:56px 1fr}.driver{grid-column:2;justify-self:start}.section{padding:68px 0}.agenda-showcase{padding:22px}.cta-box{grid-template-columns:1fr;padding:24px}.cta-logo{width:90px;height:70px}.footer-wrap{gap:16px}.week-grid{margin:0 -4px}.menu-toggle{font-size:.9rem}}
/* V1.1 - Tarifs, contact et connexion */
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.price-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius);padding:30px;background:#fff;min-width:0}.price-card.featured{border:2px solid var(--turquoise);box-shadow:var(--shadow);transform:translateY(-8px)}.price-kicker{color:var(--turquoise);font-weight:900;text-transform:uppercase;letter-spacing:.09em;font-size:.75rem}.price-card h3{color:var(--navy);font-size:1.5rem;margin:8px 0}.price-card p{color:var(--muted);margin:0 0 18px}.price-card ul{padding-left:20px;margin:0 0 22px;color:var(--ink);flex:1}.price-card li{margin:6px 0}.price-value{display:block;color:var(--navy);font-size:1.45rem;margin:0 0 18px}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.contact-form{border:1px solid var(--line);border-radius:28px;padding:28px;background:#fff;box-shadow:var(--shadow)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label,.login-card label{display:block;color:var(--navy);font-weight:800;margin-bottom:16px}.contact-form input,.contact-form select,.contact-form textarea,.login-card input{width:100%;margin-top:7px;border:1px solid #cfd7e4;border-radius:14px;padding:13px 14px;font:inherit;color:var(--ink);background:#fff;outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus,.login-card input:focus{border-color:var(--turquoise);box-shadow:0 0 0 3px rgba(24,170,169,.12)}.contact-form textarea{resize:vertical;min-height:150px}.contact-form .consent{display:flex;gap:10px;align-items:flex-start;font-weight:600;color:var(--muted)}.contact-form .consent input{width:auto;margin:5px 0 0}.hp{position:absolute!important;left:-9999px!important}.contact-note{margin-top:28px;border-left:4px solid var(--orange);padding:14px 18px;background:var(--soft);border-radius:0 14px 14px 0}.contact-note strong,.contact-note span{display:block}.contact-note span{color:var(--muted);font-size:.92rem}.form-alert{padding:14px 16px;border-radius:14px;margin:0 0 20px;font-weight:700}.form-alert.success{background:rgba(148,190,72,.15);color:#4d7315}.form-alert.error{background:rgba(242,96,85,.12);color:#a4362e}.login-page{background:var(--soft);min-height:100vh}.login-shell{width:min(520px,calc(100% - 32px));margin:0 auto;padding:64px 0}.login-brand{display:block;text-align:center;margin-bottom:22px}.login-brand img{width:190px}.login-card{background:#fff;border:1px solid var(--line);border-radius:28px;padding:30px;box-shadow:var(--shadow)}.login-card h1{color:var(--navy);line-height:1.1;margin:0 0 12px}.login-card p{color:var(--muted)}.login-card form{margin-top:22px}.login-card .btn{width:100%}.tenant-input{display:grid;grid-template-columns:1fr auto;align-items:center;border:1px solid #cfd7e4;border-radius:14px;overflow:hidden;margin-top:7px}.tenant-input:focus-within{border-color:var(--turquoise);box-shadow:0 0 0 3px rgba(24,170,169,.12)}.tenant-input input{border:0!important;border-radius:0!important;box-shadow:none!important;margin:0}.tenant-input span{padding:0 14px;color:var(--muted);font-weight:700}.back-link{display:inline-block;margin-top:20px;color:var(--navy);font-weight:700;text-decoration:none}
@media(max-width:900px){.pricing-grid,.contact-grid{grid-template-columns:1fr}.price-card.featured{transform:none}.contact-grid{gap:36px}}
@media(max-width:600px){.form-row{grid-template-columns:1fr}.contact-form{padding:20px}.login-shell{padding:28px 0}.login-card{padding:22px}.tenant-input{grid-template-columns:minmax(0,1fr) auto}.tenant-input span{padding:0 10px;font-size:.9rem}}

/* V1.2 - Offre unique Julube Famille */
.pricing-heading{margin-left:auto;margin-right:auto;text-align:center}.pricing-single{grid-template-columns:minmax(0,620px);justify-content:center}.pricing-single .price-card{padding:38px}.pricing-single .price-card.featured{transform:none}.price-choice{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap;margin:6px 0 14px}.price-choice>div:first-child{display:flex;align-items:baseline;gap:7px}.price-choice .price-value{font-size:2.15rem;margin:0}.price-choice span{color:var(--muted);font-weight:700}.annual-price{padding:9px 12px;border-radius:12px;background:var(--soft);color:var(--navy)}.annual-price strong,.annual-price span{display:block}.annual-price span{font-size:.86rem}.trial-badge{display:inline-flex;align-items:center;align-self:flex-start;background:rgba(148,190,72,.16);color:#557b19;font-weight:900;border-radius:999px;padding:8px 12px;margin-bottom:20px}.pricing-single .price-card ul{columns:2;column-gap:34px}.pricing-single .price-card li{break-inside:avoid;margin-bottom:8px}.pricing-single .btn{align-self:flex-start}
@media(max-width:700px){.pricing-single .price-card{padding:26px}.pricing-single .price-card ul{columns:1}.price-choice{align-items:flex-start;flex-direction:column}.pricing-single .btn{width:100%}}

/* V1.2.1 - Centrage de l'offre Julube Famille */
.pricing-single .price-card{text-align:center;align-items:center}
.pricing-single .price-card p{max-width:520px;margin-left:auto;margin-right:auto}
.pricing-single .price-choice{justify-content:center;width:100%}
.pricing-single .price-choice>div:first-child{justify-content:center}
.pricing-single .trial-badge{align-self:center}
.pricing-single .price-card ul{text-align:left;width:100%;max-width:520px;margin-left:auto;margin-right:auto}
.pricing-single .btn{align-self:center}
@media(max-width:700px){.pricing-single .price-choice{align-items:center}.pricing-single .btn{align-self:stretch}}

/* V1.2.2 - Centrage strict de la formule Julube Famille */
#tarifs .container{display:flex;flex-direction:column;align-items:center}
#tarifs .pricing-heading{width:100%;max-width:760px;text-align:center;margin-left:auto;margin-right:auto}
#tarifs .pricing-grid.pricing-single{display:flex;width:100%;justify-content:center;align-items:stretch}
#tarifs .pricing-grid.pricing-single .price-card{width:min(100%,620px);margin-left:auto;margin-right:auto;text-align:center;align-items:center}
#tarifs .pricing-grid.pricing-single .price-choice{justify-content:center;align-items:center}
#tarifs .pricing-grid.pricing-single .annual-price{text-align:center}
#tarifs .pricing-grid.pricing-single ul{text-align:left;margin-left:auto;margin-right:auto}
#tarifs .pricing-grid.pricing-single .btn{margin-left:auto;margin-right:auto;align-self:center}
@media(max-width:700px){#tarifs .pricing-grid.pricing-single .price-card{width:100%}}

/* V1.2.6 - inscription Stripe automatisée */
.subscribe-box{width:100%;max-width:620px;margin:30px auto 0;padding-top:24px;border-top:1px solid var(--line);text-align:left}.subscribe-box h4{text-align:center;color:var(--navy);font-size:1.2rem;margin:0 0 16px}.subscribe-form{width:100%}.subscribe-form label{display:block;color:var(--navy);font-weight:800;margin-bottom:14px}.subscribe-form input{width:100%;margin-top:7px;border:1px solid #cfd7e4;border-radius:14px;padding:12px 13px;font:inherit;background:#fff}.plan-switch{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:18px}.plan-switch label{margin:0;cursor:pointer}.plan-switch input{position:absolute;opacity:0;pointer-events:none}.plan-switch span{display:block;border:1px solid var(--line);border-radius:16px;padding:14px;text-align:center;background:#fff}.plan-switch input:checked+span{border-color:var(--turquoise);box-shadow:0 0 0 3px rgba(24,170,169,.12);background:#f5ffff}.subscribe-form .btn{display:block;width:100%;margin-top:8px}.checkout-note{display:block;text-align:center;color:var(--muted);margin-top:12px;line-height:1.45}.subscribe-form .tenant-input input{margin-top:0}.subscribe-form .form-row{width:100%}.stripe-error-banner{max-width:1180px;margin:14px auto;padding:14px 18px;border-radius:14px;background:rgba(242,96,85,.12);color:#a4362e;font-weight:700}.stripe-error-banner strong{color:#8d2e27}@media(max-width:600px){.plan-switch,.subscribe-form .form-row{grid-template-columns:1fr}.subscribe-box{max-width:100%}}
