/*
Theme Name: Dronis Solutions V29
Theme URI: https://www.agridronis.fr/
Author: Dronis Solutions
Description: Thème WordPress professionnel Dronis Solutions.
Version: 2.3.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: dronis-solutions
*/

:root{--navy:#0d2436;--blue:#174f73;--green:#7b9638;--light:#f4f7f8;--ink:#17232d;--muted:#63717c;--line:#dfe6ea;--white:#fff;--radius:20px;--shadow:0 14px 40px rgba(13,36,54,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff}img{max-width:100%;height:auto}a{color:var(--blue);text-decoration:none}a:hover{color:var(--green)}
.container{width:min(1180px,calc(100% - 40px));margin:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(223,230,234,.85)}
.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:18px}.site-branding{min-width:190px;flex:0 0 auto}.site-branding img{display:block;max-height:66px;max-width:220px;width:auto}.site-title{font-size:1.25rem;font-weight:850;color:var(--navy)}
.main-navigation{flex:1}.main-navigation ul{display:flex;align-items:center;justify-content:center;gap:18px;list-style:none;margin:0;padding:0}.main-navigation a{font-size:.88rem;font-weight:700;color:var(--ink);white-space:nowrap}.main-navigation a:hover{color:var(--green)}
.header-cta{background:var(--navy);color:#fff!important;padding:11px 16px;border-radius:9px;font-weight:800;white-space:nowrap;flex:0 0 auto;font-size:.88rem}.header-cta:hover{background:var(--green)}
.menu-toggle{display:none;border:0;background:transparent;font-size:1.9rem;color:var(--navy)}
.hero{min-height:720px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(5,20,31,.93) 0%,rgba(5,20,31,.72) 48%,rgba(5,20,31,.18) 100%),url("assets/images/hero-placeholder.jpg") center/cover no-repeat}
.hero-content{padding:110px 0;max-width:820px}.eyebrow,.kicker{display:inline-block;text-transform:uppercase;letter-spacing:.13em;font-size:.76rem;font-weight:850}.eyebrow{padding:8px 13px;border-radius:99px;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.1);margin-bottom:20px}.hero h1{font-size:clamp(2.8rem,6vw,5.2rem);line-height:1.01;letter-spacing:-.045em;margin:0 0 24px}.hero p{max-width:680px;font-size:1.18rem;color:rgba(255,255,255,.88);margin:0 0 32px}.actions{display:flex;gap:13px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:12px 22px;border-radius:9px;font-weight:800;border:1px solid transparent;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{color:#fff}.btn-light{background:#fff;color:var(--navy)}.btn-light:hover{color:var(--navy)}
.section{padding:92px 0}.section-light{background:var(--light)}.section-head{text-align:center;max-width:790px;margin:0 auto 48px}.kicker{color:var(--green)}h2{font-size:clamp(2rem,4vw,3.15rem);line-height:1.1;letter-spacing:-.03em;margin:10px 0 16px}.section-head p{color:var(--muted);font-size:1.07rem}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);transition:.25s}.card:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(13,36,54,.15)}.card-image{height:220px;background:#dbe4e9;overflow:hidden}.card-image img{width:100%;height:100%;object-fit:cover;display:block;transition:.5s}.card:hover .card-image img{transform:scale(1.06)}.card-body{padding:25px}.card h3{margin:0 0 10px;font-size:1.24rem}.card p{margin:0;color:var(--muted)}
.feature{display:grid;grid-template-columns:1.05fr .95fr;gap:60px;align-items:center}.feature-image{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.feature-image img{display:block;width:100%}.check-list{list-style:none;margin:25px 0 0;padding:0}.check-list li{position:relative;padding-left:29px;margin:11px 0}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}
.band{padding:28px 0;background:#0b1f2e;color:#fff}.band-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center}.stat strong{display:block;font-size:1.7rem}.stat span{font-size:.9rem;color:rgba(255,255,255,.72)}
.cta{padding:72px 0;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{margin:0 0 8px}.cta p{margin:0;color:rgba(255,255,255,.75)}
.page-hero{padding:72px 0;background:var(--light)}.page-hero h1{margin:7px 0 0;font-size:clamp(2.4rem,5vw,4.1rem);line-height:1.04}.content-area{padding:78px 0}.content-area h2{margin-top:42px}.content-area p{max-width:900px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.contact-box{padding:30px;border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}
.site-footer{padding:62px 0 24px;background:#081823;color:rgba(255,255,255,.72)}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}.site-footer h3{color:#fff;margin-top:0}.site-footer a{color:rgba(255,255,255,.8)}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:42px;padding-top:18px;font-size:.84rem}
@media(max-width:1120px){.main-navigation{display:none;position:absolute;top:82px;left:0;right:0;background:#fff;padding:16px 20px;border-bottom:1px solid var(--line)}.main-navigation.is-open{display:block}.main-navigation ul{display:block}.main-navigation li{border-bottom:1px solid #eef1f3}.main-navigation a{display:block;padding:11px 0}.menu-toggle{display:block}.header-cta{display:none}.cards{grid-template-columns:repeat(2,1fr)}.feature,.contact-grid{grid-template-columns:1fr}}
@media(max-width:650px){.container{width:min(100% - 28px,1180px)}.hero{min-height:620px}.hero-content{padding:78px 0}.hero h1{font-size:2.8rem}.section{padding:64px 0}.cards{grid-template-columns:1fr}.band-grid{grid-template-columns:1fr}.cta-inner{display:block}.cta-inner .btn{margin-top:24px}.footer-grid{grid-template-columns:1fr;gap:28px}}

.hero h1{max-width:820px;text-shadow:0 3px 18px rgba(0,0,0,.18)}
.hero p{max-width:720px}

/* V4 — header / navigation refinement */
@media(min-width:1121px){
    .site-branding img{max-height:76px;max-width:195px}
    .main-navigation ul{gap:15px}
    .main-navigation a{font-size:.84rem}
    .header-cta{font-size:.84rem;padding:10px 14px}
}

/* V5 — photo-first services */
.section-services{padding-top:72px;padding-bottom:82px}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{display:block;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow);color:var(--ink);transition:transform .25s,box-shadow .25s}
.service-card:hover{transform:translateY(-6px);box-shadow:0 22px 55px rgba(13,36,54,.16);color:var(--ink)}
.service-image{height:225px;position:relative;overflow:hidden;background:#dbe4e9}
.service-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .55s ease,filter .35s ease}
.service-card:hover .service-image img{transform:scale(1.07);filter:saturate(1.05)}
.service-image:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(5,20,30,.56));pointer-events:none}
.service-arrow{position:absolute;z-index:2;right:17px;top:17px;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.93);color:var(--navy);font-size:1.25rem;font-weight:800;transition:.25s}
.service-card:hover .service-arrow{background:var(--green);color:#fff;transform:translateX(3px)}
.service-content{padding:22px 24px 24px}
.service-content h3{margin:0 0 9px;font-size:1.2rem;line-height:1.2}
.service-content p{margin:0 0 17px;color:var(--muted);font-size:.94rem;line-height:1.55}
.service-link{font-size:.9rem;font-weight:800;color:var(--blue)}
.service-link b{margin-left:5px}
@media(min-width:1121px){.hero h1{font-size:clamp(2.9rem,5vw,4.55rem)}.hero-content{max-width:780px}}
@media(max-width:950px){.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.service-grid{grid-template-columns:1fr}.service-image{height:220px}}

/* V7 — detailed service pages */
.detail-hero{position:relative;min-height:500px;display:flex;align-items:flex-end;overflow:hidden;background:var(--navy)}
.detail-hero-media{position:absolute;inset:0}
.detail-hero-media img{width:100%;height:100%;object-fit:cover;display:block}
.detail-hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,22,34,.88) 0%,rgba(4,22,34,.58) 46%,rgba(4,22,34,.18) 100%)}
.detail-hero-content{position:relative;z-index:2;padding:82px 0 72px;max-width:820px}
.detail-hero h1{color:#fff;font-size:clamp(2.8rem,5.2vw,4.7rem);line-height:1.03;margin:14px 0 22px;letter-spacing:-.035em}
.detail-hero p{color:rgba(255,255,255,.9);font-size:1.18rem;line-height:1.65;max-width:700px;margin:0}
.detail-intro{padding:88px 0;background:#fff}
.detail-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:start}
.detail-intro h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.1;margin:12px 0 0;letter-spacing:-.025em}
.detail-intro p{font-size:1.12rem;line-height:1.75;color:var(--muted);margin:0}
.detail-services{padding:82px 0 96px;background:#f5f8f9}
.detail-service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.detail-service{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px 28px 32px;min-height:245px;box-shadow:0 10px 30px rgba(13,36,54,.05)}
.detail-number{font-size:.78rem;font-weight:900;letter-spacing:.12em;color:var(--green);display:block;margin-bottom:25px}
.detail-service h3{font-size:1.3rem;margin:0 0 12px;line-height:1.2}
.detail-service p{margin:0;color:var(--muted);line-height:1.65}
@media(max-width:850px){.detail-intro-grid{grid-template-columns:1fr;gap:25px}.detail-service-grid{grid-template-columns:1fr 1fr}.detail-hero{min-height:460px}}
@media(max-width:600px){.detail-service-grid{grid-template-columns:1fr}.detail-hero-content{padding:65px 0 55px}.detail-hero h1{font-size:2.65rem}.detail-intro{padding:65px 0}.detail-services{padding:65px 0}}

/* V8 refinements — agriculture page */
.detail-hero-media img[alt*="Drone en mission"]{object-position:center 18%}
/* V9 — balanced 3 + 2 service cards */
@media(min-width:851px){
  .detail-service-grid{
    grid-template-columns:repeat(6, minmax(0,1fr));
  }
  .detail-service-grid .detail-service{
    grid-column:span 2;
  }
  .detail-service-grid .detail-service:nth-child(4){
    grid-column:2 / span 2;
  }
  .detail-service-grid .detail-service:nth-child(5){
    grid-column:4 / span 2;
  }
}

/* V10 — unified secondary pages */
.standard-page-hero{min-height:430px}
.standard-page-hero .detail-hero-content{padding-top:72px;padding-bottom:64px}
.page-hero p{max-width:760px;color:var(--muted);font-size:1.15rem;line-height:1.65;margin:18px 0 0}
.overview-section{padding:85px 0 100px;background:#f5f8f9}
.section-heading{max-width:900px;margin:0 auto 50px;text-align:center}
.section-heading h2{font-size:clamp(2.2rem,4vw,3.4rem);line-height:1.08;letter-spacing:-.03em;margin:10px 0 18px}
.section-heading p{color:var(--muted);font-size:1.08rem;line-height:1.7;margin:0}
.overview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.overview-card{display:block;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:inherit;box-shadow:0 12px 35px rgba(13,36,54,.06);transition:transform .2s ease,box-shadow .2s ease}
.overview-card:hover{transform:translateY(-4px);box-shadow:0 18px 42px rgba(13,36,54,.1)}
.overview-card img{width:100%;height:220px;object-fit:cover;display:block}
.overview-card>div{padding:25px 26px 28px}
.overview-card h3{font-size:1.35rem;line-height:1.2;margin:7px 0 12px}
.overview-card p{color:var(--muted);line-height:1.6;margin:0 0 18px}
.card-link{font-weight:800;color:var(--navy)}
.about-feature{padding:95px 0;background:#fff}
.about-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.about-feature-image{border-radius:var(--radius);overflow:hidden;background:var(--navy)}
.about-feature-image img{width:100%;height:430px;object-fit:cover;display:block}
.about-feature h2{font-size:clamp(2.2rem,3.5vw,3.2rem);line-height:1.08;margin:12px 0 20px}
.about-feature p{color:var(--muted);font-size:1.08rem;line-height:1.7}
.check-list{list-style:none;padding:0;margin:28px 0 0}
.check-list li{position:relative;padding:9px 0 9px 30px;color:var(--navy)}
.check-list li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:900}
.values-section{padding:85px 0 100px;background:#f5f8f9}
.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.values-grid article{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:30px}
.values-grid article span{color:var(--green);font-weight:900;letter-spacing:.12em}
.values-grid h3{margin:22px 0 10px;font-size:1.35rem}
.values-grid p{margin:0;color:var(--muted);line-height:1.65}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.gallery-item{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px rgba(13,36,54,.05)}
.gallery-item img{width:100%;height:250px;object-fit:cover;display:block}
.gallery-item>div{padding:20px 22px 24px}
.gallery-item span{font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:var(--green);font-weight:800}
.gallery-item h3{margin:8px 0 0;font-size:1.25rem}
.contact-section{padding:90px 0 105px;background:#f5f8f9}
.contact-modern-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:start}
.contact-modern-grid h2{font-size:clamp(2.4rem,4vw,3.5rem);line-height:1.05;margin:12px 0 22px}
.contact-modern-grid>div>p{color:var(--muted);font-size:1.1rem;line-height:1.75;max-width:700px}
.contact-points{margin-top:38px;display:grid;gap:22px}
.contact-points div{display:grid;gap:5px}
.contact-points strong{font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--green)}
.contact-points a,.contact-points span{color:var(--navy);font-size:1.05rem}
.contact-panel{background:var(--navy);color:#fff;border-radius:var(--radius);padding:38px}
.contact-panel h3{font-size:1.8rem;margin:0 0 14px}
.contact-panel p{color:rgba(255,255,255,.8);line-height:1.65;margin-bottom:28px}
.contact-panel .btn{display:inline-block}
.contact-panel-note{margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.15);font-size:.9rem;color:rgba(255,255,255,.65);line-height:1.5}
@media(max-width:850px){
 .overview-grid,.gallery-grid,.values-grid{grid-template-columns:1fr 1fr}
 .about-feature-grid,.contact-modern-grid{grid-template-columns:1fr;gap:40px}
 .about-feature-image img{height:350px}
}
@media(max-width:600px){
 .overview-grid,.gallery-grid,.values-grid{grid-template-columns:1fr}
 .overview-card img,.gallery-item img{height:220px}
 .about-feature{padding:65px 0}
 .contact-section{padding:65px 0 75px}
}


/* V25 — Agri Dronis bridge */
.agri-bridge{padding:54px 0;background:#eef3ef;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.agri-bridge-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:28px 34px;border-radius:var(--radius);background:#fff;border:1px solid #dfe7df;box-shadow:var(--shadow)}
.agri-bridge h2{font-size:clamp(1.7rem,3vw,2.45rem);margin:8px 0 10px}
.agri-bridge p{margin:0;max-width:760px;color:var(--muted)}
.agri-bridge .btn{flex:0 0 auto}
@media(max-width:650px){
    .agri-bridge{padding:42px 0}
    .agri-bridge-inner{display:block;padding:24px}
    .agri-bridge .btn{margin-top:22px}
}

/* V27 — contact form */
.contact-form-panel{padding:34px}
.dronis-contact-form{display:grid;gap:17px}
.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-field{display:grid;gap:7px}
.contact-field label{font-size:.86rem;font-weight:800;color:#fff}
.contact-field label span{color:#5bd3ff}
.contact-field input,.contact-field select,.contact-field textarea{width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.22);border-radius:10px;background:rgba(255,255,255,.08);color:#fff;padding:12px 13px;font:inherit;outline:none;transition:border-color .2s,background .2s}
.contact-field input::placeholder,.contact-field textarea::placeholder{color:rgba(255,255,255,.5)}
.contact-field select option{color:#102333;background:#fff}
.contact-field input:focus,.contact-field select:focus,.contact-field textarea:focus{border-color:#55c9f5;background:rgba(255,255,255,.12)}
.contact-field textarea{resize:vertical;min-height:150px}
.contact-form-privacy{font-size:.78rem;line-height:1.5;color:rgba(255,255,255,.58);margin:0}
.contact-submit{border:0;cursor:pointer;width:100%;justify-content:center}
.contact-form-message{padding:13px 15px;border-radius:10px;margin:0 0 8px;font-size:.9rem;line-height:1.5}
.contact-form-success{background:rgba(80,190,130,.16);border:1px solid rgba(100,220,150,.35);color:#dff9e9}
.contact-form-error{background:rgba(255,100,100,.13);border:1px solid rgba(255,130,130,.3);color:#ffe5e5}
.contact-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:650px){.contact-form-row{grid-template-columns:1fr}.contact-form-panel{padding:26px 20px}}


/* V28 — Illustrations de missions agricoles */
.agri-photo-section{padding:82px 0 92px;background:#f5f8f9}
.agri-photo-heading{max-width:760px;margin:0 auto 34px;text-align:center}
.agri-photo-heading h2{font-size:clamp(2rem,3.3vw,2.8rem);line-height:1.12;margin:10px 0 14px;color:var(--navy)}
.agri-photo-heading p{color:var(--muted);line-height:1.7;margin:0}
.agri-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.agri-photo-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px rgba(13,36,54,.06)}
.agri-photo-card img{width:100%;height:245px;object-fit:cover;display:block}
.agri-photo-card>div{padding:22px 23px 25px}
.agri-photo-card h3{font-size:1.2rem;line-height:1.25;margin:0 0 9px;color:var(--navy)}
.agri-photo-card p{color:var(--muted);line-height:1.6;margin:0}
@media(max-width:850px){.agri-photo-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.agri-photo-section{padding:62px 0}.agri-photo-grid{grid-template-columns:1fr}.agri-photo-card img{height:230px}}
