/* SOSA DRONE — page commerciale et réservation */
.drone-page{--flight:#1fb6ff;--flight-soft:#9edfff;--flight-green:#62f3b3}
.drone-page #fx{opacity:.5}

/* Hero */
.drone-hero{position:relative;min-height:100vh;padding:148px 0 86px;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid var(--line)}
.drone-hero-media{position:absolute;inset:0;background:url('../images/sosa-drone-littoral-martinique.webp') center 48%/cover no-repeat;opacity:.48;transform:scale(1.02)}
.drone-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,15,.98) 0%,rgba(7,10,15,.88) 42%,rgba(7,10,15,.35) 72%,rgba(7,10,15,.72) 100%),linear-gradient(0deg,#070a0f 0%,transparent 35%,rgba(7,10,15,.4) 100%)}
.drone-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(31,182,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(31,182,255,.08) 1px,transparent 1px);background-size:74px 74px;mask-image:linear-gradient(90deg,#000,transparent 72%);-webkit-mask-image:linear-gradient(90deg,#000,transparent 72%)}
.drone-hero-layout{position:relative;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.55fr);gap:72px;align-items:center}
.drone-kicker{display:flex;align-items:center;gap:10px;color:var(--flight-soft);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin-bottom:24px}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--flight-green);box-shadow:0 0 0 5px rgba(98,243,179,.12),0 0 20px rgba(98,243,179,.8);animation:droneLive 2s infinite}
@keyframes droneLive{50%{opacity:.45;box-shadow:0 0 0 8px rgba(98,243,179,0)}}
.drone-wordmark{width:min(510px,88%);height:auto;margin-bottom:20px;filter:drop-shadow(0 12px 32px rgba(0,0,0,.5))}
.drone-hero h1{font-size:clamp(3.2rem,7vw,6.4rem);max-width:9ch;line-height:.88;letter-spacing:-.04em}
.drone-lead{max-width:620px;color:#b7c2d2;font-size:clamp(1rem,2vw,1.22rem);margin-top:26px}
.drone-lead strong{color:#fff}
.drone-actions{justify-content:flex-start;margin-top:32px;opacity:1}
.drone-trust{display:flex;flex-wrap:wrap;gap:18px;margin-top:32px}
.drone-trust li{display:flex;align-items:center;gap:8px;color:#c8d1dd;font-size:.85rem;font-weight:700}
.drone-trust li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--flight);box-shadow:var(--glow)}
.flight-card{border:1px solid rgba(31,182,255,.32);background:rgba(8,15,24,.88);border-radius:22px;padding:22px;box-shadow:0 35px 100px -42px rgba(31,182,255,.7)}
.flight-card-top{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;font-weight:800;letter-spacing:.18em;color:#8da0b7}
.flight-status{color:var(--flight-green);border:1px solid rgba(98,243,179,.35);background:rgba(98,243,179,.07);padding:5px 9px;border-radius:100px}
.radar{position:relative;aspect-ratio:1;border:1px solid rgba(31,182,255,.22);border-radius:50%;margin:28px auto;width:min(210px,75%);background:repeating-radial-gradient(circle,transparent 0 23%,rgba(31,182,255,.13) 24% 25%),linear-gradient(rgba(31,182,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(31,182,255,.12) 1px,transparent 1px);background-size:auto,50% 50%,50% 50%;overflow:hidden;display:grid;place-items:center;text-align:center;color:#9fb2c8;font:600 .7rem/1.6 var(--sans);letter-spacing:.09em}
.radar::before{content:"";position:absolute;inset:50% 50% 0 0;background:linear-gradient(45deg,rgba(31,182,255,.28),transparent 70%);transform-origin:100% 0;animation:radarSweep 4s linear infinite}
@keyframes radarSweep{to{transform:rotate(360deg)}}
.radar i{position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:var(--flight);box-shadow:0 0 18px var(--flight);transform:translate(-50%,-50%)}
.radar b{position:absolute;right:29%;top:30%;width:5px;height:5px;border-radius:50%;background:var(--flight-green);box-shadow:0 0 12px var(--flight-green)}
.radar span{position:relative;margin-top:48px}
.flight-data{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.flight-data div{border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:10px;padding:11px}
.flight-data dt{color:#718096;font-size:.64rem;text-transform:uppercase;letter-spacing:.1em}
.flight-data dd{color:#eaf6ff;font-size:.78rem;font-weight:700;margin-top:2px}

/* Ruban */
.drone-strip{position:relative;z-index:2;overflow:hidden;background:var(--flight);color:#03121a;padding:13px 0;transform:rotate(-1deg);margin:-12px -8px 0}
.drone-strip-track{display:flex;width:max-content;gap:28px;align-items:center;animation:droneTicker 28s linear infinite;white-space:nowrap;font-size:.78rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.drone-strip-track i{font-size:.45rem}
@keyframes droneTicker{to{transform:translateX(-50%)}}

/* Référencement local */
.drone-local{position:relative;background:linear-gradient(180deg,#070a0f,#080e16);overflow:hidden}
.drone-local::before{content:"";position:absolute;width:540px;height:540px;right:-220px;top:-230px;border-radius:50%;background:radial-gradient(circle,rgba(31,182,255,.12),transparent 68%);pointer-events:none}
.local-head{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1fr);gap:72px;align-items:start;margin-bottom:46px}
.local-head h2{max-width:12ch}
.local-copy{display:grid;gap:16px;color:var(--muted);font-size:1rem;line-height:1.75}
.local-use-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.local-use{min-height:235px;border:1px solid var(--line);border-radius:18px;padding:25px 22px;background:linear-gradient(150deg,rgba(31,182,255,.055),rgba(255,255,255,.012))}
.local-use>span{display:block;color:var(--flight);font-size:.67rem;font-weight:900;letter-spacing:.18em;margin-bottom:42px}
.local-use h3{font-family:var(--serif);font-size:1.35rem}
.local-use p{color:var(--muted);font-size:.82rem;line-height:1.65;margin-top:9px}
.local-coverage{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:18px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--line)}
.local-coverage>div{background:#080d14;padding:22px}
.local-coverage span{display:block;color:var(--flight-soft);font-size:.7rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:9px}
.local-coverage p{color:var(--muted);font-size:.78rem;line-height:1.6}
.local-cta{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:24px;padding:20px 24px;border:1px solid rgba(98,243,179,.24);border-radius:16px;background:rgba(98,243,179,.045)}
.local-cta p{color:var(--muted);font-size:.86rem}.local-cta strong{color:#fff}

/* Démonstration vidéo */
.drone-proof{position:relative;background:#080e16;padding-top:20px}
.proof-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.66fr);gap:80px;align-items:center}
.proof-copy h2{max-width:10ch}
.proof-copy>p{max-width:660px;color:var(--muted);font-size:1rem;line-height:1.75;margin-top:18px}
.proof-copy>p strong{color:#fff}
.proof-tags{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0}
.proof-tags li{border:1px solid rgba(31,182,255,.26);border-radius:999px;background:rgba(31,182,255,.055);color:var(--flight-soft);padding:8px 12px;font-size:.67rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}
.proof-video{position:relative;width:min(100%,460px);aspect-ratio:4/5;justify-self:center;border:1px solid rgba(31,182,255,.35);border-radius:28px;overflow:hidden;background:#03070b;box-shadow:0 38px 100px -44px rgba(31,182,255,.72)}
.proof-video::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.045);pointer-events:none}
.proof-video>img{display:block;width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;background:#03070b}
.proof-video figcaption{position:absolute;z-index:2;left:18px;right:18px;bottom:18px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(5,10,16,.74);backdrop-filter:blur(12px);padding:12px 14px;pointer-events:none}
.proof-video figcaption span{color:var(--flight);font-size:.63rem;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.proof-video figcaption b{font-size:.72rem;text-align:right}

/* Intro */
.drone-intro{background:linear-gradient(180deg,#070a0f,#0a111a)}
.drone-intro-grid{display:grid;grid-template-columns:minmax(300px,.7fr) minmax(0,1.15fr);gap:74px;align-items:center}
.drone-portrait{position:relative;max-width:460px;margin-inline:auto;border-radius:28px;overflow:hidden;border:1px solid rgba(31,182,255,.25);box-shadow:0 35px 100px -48px rgba(31,182,255,.7)}
.drone-portrait::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,10,15,.85),transparent 42%);pointer-events:none}
.drone-portrait picture{display:block}.drone-portrait img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:center 45%}
.portrait-label{position:absolute;z-index:2;inset:auto 20px 18px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid rgba(255,255,255,.3);padding-top:12px;text-transform:uppercase;font-size:.72rem;font-weight:900;letter-spacing:.24em}
.portrait-label b{color:var(--flight);font-size:1.2rem}
.drone-intro-copy h2{max-width:12ch}
.drone-intro-copy>p{color:var(--muted);font-size:1.05rem;margin-top:22px;max-width:680px}
.gear-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:30px}
.gear-grid div{position:relative;border:1px solid var(--line);border-radius:14px;padding:17px 16px 15px 50px;background:rgba(255,255,255,.02)}
.gear-grid span{position:absolute;left:15px;top:16px;color:var(--flight);font-size:.7rem;font-weight:900}
.gear-grid b,.gear-grid small{display:block}
.gear-grid b{font-size:.9rem}.gear-grid small{color:var(--muted);font-size:.74rem;margin-top:2px}
.drone-intro-copy .safety-note{border-left:2px solid var(--flight);padding:11px 0 11px 16px;font-size:.88rem;margin-top:26px}
.safety-note b{color:var(--flight-soft)}

/* Tarifs */
.drone-pricing{background:#080d14}
.drone-price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.drone-price-card{position:relative;min-height:400px;padding:26px 22px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(160deg,rgba(255,255,255,.035),rgba(255,255,255,.012));display:flex;flex-direction:column;transition:.3s}
.drone-price-card:hover{transform:translateY(-6px);border-color:rgba(31,182,255,.5);box-shadow:0 24px 70px -38px rgba(31,182,255,.8)}
.drone-price-card.featured{border-color:rgba(31,182,255,.65);background:linear-gradient(160deg,rgba(31,182,255,.15),rgba(255,255,255,.02));box-shadow:inset 0 0 50px rgba(31,182,255,.04)}
.price-index{position:absolute;right:18px;top:18px;color:rgba(255,255,255,.17);font:800 1.2rem var(--sans)}
.price-type{color:var(--flight);font-size:.65rem;font-weight:900;letter-spacing:.2em;margin-bottom:9px}
.drone-price-card h3{font-family:var(--serif);font-size:1.55rem;padding-right:35px}
.price-amount{font-family:var(--serif);font-size:3.2rem;line-height:1;font-weight:700;margin:24px 0 18px;color:#fff}
.price-amount sup{font:700 1rem var(--sans);color:var(--flight);vertical-align:top;margin-left:3px}
.price-amount small{font:600 .72rem var(--sans);color:var(--muted);margin-left:3px}
.price-amount.compact{font-size:2.2rem;letter-spacing:-.05em;margin-top:30px}
.price-from{position:absolute;top:98px;color:var(--muted);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em}
.price-from+.price-amount{margin-top:35px}
.drone-price-card ul{display:flex;flex-direction:column;gap:8px;margin-bottom:24px;flex:1}
.drone-price-card li{position:relative;padding-left:16px;color:var(--muted);font-size:.82rem}
.drone-price-card li::before{content:"";position:absolute;left:0;top:.65em;width:5px;height:5px;border-radius:50%;background:var(--flight)}
.drone-price-card .btn{width:100%;padding-inline:14px;font-size:.86rem}
.price-badge{position:absolute;right:14px;top:-10px;background:var(--flight);color:#03121a;border-radius:100px;padding:5px 10px;font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.custom-card{grid-column:span 4;min-height:auto;display:grid;grid-template-columns:auto 1fr minmax(250px,auto);gap:28px;align-items:center;padding:30px;border-color:rgba(98,243,179,.35);background:linear-gradient(110deg,rgba(98,243,179,.08),rgba(31,182,255,.06))}
.custom-card .price-index{position:static;width:52px;height:52px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(98,243,179,.5);color:var(--flight-green);font-size:1.7rem}
.custom-card .price-type{grid-column:2;margin:0 0 -22px}.custom-card h3{grid-column:2;font-size:2rem;padding:0}.custom-copy{grid-column:2;color:var(--muted);max-width:650px}.custom-card .btn{grid-column:3;grid-row:1/4;width:auto}
.pricing-note{text-align:center;color:var(--muted);font-size:.8rem;margin-top:28px}

/* Processus */
.drone-process{background:linear-gradient(180deg,#080d14,#070a0f)}
.drone-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden}
.drone-process-grid li{background:#090e15;padding:30px 25px;min-height:230px}
.drone-process-grid li>span{display:inline-flex;color:var(--flight);font-size:.7rem;font-weight:900;letter-spacing:.16em;margin-bottom:58px}
.drone-process-grid h3{font-family:var(--serif);font-size:1.45rem}.drone-process-grid p{color:var(--muted);font-size:.86rem;margin-top:8px}

/* Réservation */
.drone-booking{background:linear-gradient(180deg,#070a0f,#0a121c)}
.booking-heading{display:grid;grid-template-columns:1fr .8fr;gap:50px;align-items:end;margin-bottom:40px}
.booking-heading>p{color:var(--muted);font-size:.95rem}
.booking-shell{display:grid;grid-template-columns:1.1fr .9fr;border:1px solid rgba(31,182,255,.24);border-radius:24px;overflow:hidden;background:#080e16;box-shadow:0 40px 110px -60px rgba(31,182,255,.65)}
.calendar-panel{padding:30px;border-right:1px solid var(--line)}
.calendar-toolbar{display:grid;grid-template-columns:42px 1fr 42px;gap:16px;align-items:center;text-align:center;margin-bottom:24px}
.calendar-toolbar span,.calendar-toolbar strong{display:block}.calendar-toolbar span{color:var(--muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.14em}.calendar-toolbar strong{font-size:1rem;margin-top:3px}
.week-nav{width:42px;height:42px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.025);font-size:1.1rem;transition:.2s}
.week-nav:hover:not(:disabled){border-color:var(--flight);color:var(--flight)}.week-nav:disabled{opacity:.25;cursor:not-allowed}
.week-days{display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-bottom:26px}
.day-button{border:1px solid var(--line);border-radius:12px;padding:10px 3px;background:rgba(255,255,255,.02);min-width:0;transition:.2s;text-align:center}
.day-button span,.day-button b,.day-button small{display:block}.day-button span{color:var(--muted);font-size:.6rem;text-transform:uppercase;letter-spacing:.08em}.day-button b{font:700 1.45rem var(--serif);line-height:1.1;margin:3px 0}.day-button small{font-size:.58rem;color:#718096;text-transform:uppercase}.day-button:hover:not(:disabled),.day-button[aria-selected="true"]{border-color:var(--flight);background:rgba(31,182,255,.12);box-shadow:inset 0 0 20px rgba(31,182,255,.05)}.day-button[aria-selected="true"] b{color:var(--flight)}.day-button:disabled{opacity:.3;cursor:not-allowed}
.slot-heading{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:13px}.slot-heading span{font-size:.78rem;font-weight:800}.slot-heading small{font-size:.65rem;color:var(--muted)}
.time-slots{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.time-slot{min-height:42px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.02);font-size:.78rem;font-weight:750;transition:.2s}
.time-slot:hover,.time-slot[aria-pressed="true"]{color:#03121a;background:var(--flight);border-color:var(--flight);box-shadow:0 10px 24px -10px rgba(31,182,255,.8)}
.calendar-help{display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:.67rem;margin-top:18px;line-height:1.45}.calendar-help span{flex:none;width:7px;height:7px;border-radius:50%;background:var(--flight-green);margin-top:4px;box-shadow:0 0 10px rgba(98,243,179,.8)}
.booking-form{padding:30px;background:linear-gradient(145deg,rgba(31,182,255,.045),transparent 45%)}
.form-head{border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:2px}.form-step{font-size:.65rem;color:var(--flight);font-weight:900;letter-spacing:.16em}.form-head p{font-size:.82rem;color:var(--muted);margin-top:6px}.form-head p.has-slot{color:var(--flight-soft);font-weight:700}
.booking-consent{display:flex;align-items:flex-start;gap:10px;color:var(--muted);font-size:.76rem;line-height:1.45;cursor:pointer}.booking-consent input{width:18px;height:18px;flex:none;margin-top:2px;accent-color:var(--flight)}
.form-alert{border:1px solid rgba(255,115,115,.4);background:rgba(255,115,115,.08);color:#ffc4c4;border-radius:10px;padding:10px 13px;font-size:.78rem}.booking-form a{color:var(--flight)}

/* FAQ et CTA */
.drone-faq{background:#0a121c}
.drone-final-cta{padding-top:0;background:#0a121c}
.final-flight{position:relative;text-align:center;border:1px solid rgba(31,182,255,.34);border-radius:24px;padding:62px 28px;overflow:hidden;background:radial-gradient(circle at 50% -10%,rgba(31,182,255,.17),transparent 48%),#080d14}
.final-flight::before,.final-flight::after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(31,182,255,.14);border-radius:50%;top:50%;transform:translateY(-50%)}.final-flight::before{left:-90px}.final-flight::after{right:-90px}
.final-flight h2{font-size:clamp(2.2rem,5vw,3.6rem)}.final-flight>p:not(.eyebrow){color:var(--muted);max-width:650px;margin:16px auto 26px}

@media(max-width:1080px){
  .drone-hero-layout{gap:40px}.local-use-grid{grid-template-columns:repeat(2,1fr)}.drone-price-grid{grid-template-columns:repeat(2,1fr)}.custom-card{grid-column:span 2}.nav-links{gap:1.15rem}.nav-links a{font-size:.86rem}
}
@media(max-width:900px){
  .drone-hero{min-height:auto}.drone-hero-layout{grid-template-columns:1fr}.drone-hero-copy{text-align:center}.drone-hero h1{margin-inline:auto}.drone-wordmark{margin-inline:auto}.drone-lead{margin-inline:auto}.drone-actions,.drone-trust{justify-content:center}.flight-card{max-width:500px;margin-inline:auto;width:100%}
  .local-head{grid-template-columns:1fr;gap:24px;text-align:center}.local-head h2{margin-inline:auto}.local-copy{max-width:760px;margin-inline:auto}.local-coverage{grid-template-columns:1fr}
  .proof-layout{grid-template-columns:1fr;gap:42px}.proof-copy{text-align:center}.proof-copy h2,.proof-copy>p{margin-inline:auto}.proof-tags{justify-content:center}.proof-video{width:min(100%,430px)}
  .drone-intro-grid{grid-template-columns:1fr;gap:42px}.drone-intro-copy{text-align:center}.drone-intro-copy h2,.drone-intro-copy>p{margin-inline:auto}.drone-intro-copy .safety-note{text-align:left}
  .booking-heading{grid-template-columns:1fr;gap:18px;text-align:center}.booking-shell{grid-template-columns:1fr}.calendar-panel{border-right:0;border-bottom:1px solid var(--line)}
  .drone-process-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .drone-hero{padding:122px 0 72px}.drone-hero-media{background-position:62% center}.drone-hero-shade{background:linear-gradient(0deg,#070a0f 0%,rgba(7,10,15,.62) 55%,rgba(7,10,15,.88) 100%)}.drone-hero h1{font-size:clamp(3.15rem,17vw,4.8rem)}.drone-kicker{justify-content:center;font-size:.65rem;letter-spacing:.1em}.drone-wordmark{width:min(430px,96%)}
  .flight-card{padding:18px}.drone-trust{gap:10px 16px}.drone-strip{transform:none;margin:0}
  .local-use-grid{grid-template-columns:1fr}.local-use{min-height:auto}.local-use>span{margin-bottom:24px}.local-cta{align-items:stretch;flex-direction:column;text-align:center}.local-cta .btn{width:100%}.gear-grid{grid-template-columns:1fr}.drone-price-grid{grid-template-columns:1fr}.custom-card{grid-column:auto;display:flex;align-items:stretch;gap:14px}.custom-card .price-type,.custom-card h3,.custom-copy,.custom-card .btn{grid-column:auto;grid-row:auto}.custom-card .price-index{position:absolute;right:18px;top:18px;width:42px;height:42px}
  .proof-copy .btn{width:100%}.proof-video figcaption{bottom:14px}
  .drone-process-grid{grid-template-columns:1fr}.drone-process-grid li{min-height:auto}.drone-process-grid li>span{margin-bottom:24px}
  .calendar-panel,.booking-form{padding:21px 16px}.week-days{gap:4px;overflow-x:auto;padding-bottom:5px}.day-button{min-width:54px}.time-slots{grid-template-columns:repeat(3,1fr)}.calendar-toolbar{grid-template-columns:38px 1fr 38px}.week-nav{width:38px;height:38px}
  .booking-form .cform-actions .btn{width:100%}.final-flight{padding:46px 20px}.flight-data{grid-template-columns:1fr 1fr}
}
@media(prefers-reduced-motion:reduce){.drone-strip-track,.radar::before,.live-dot{animation:none}}
