:root{--ink:#302d26;--muted:#665f53;--paper:#f7f2e8;--white:#fffdf8;--line:#ded6c7;--green:#31533f;--green-dark:#263f31;--olive:#7b855b;--olive-soft:#eaeddf;--brown:#60472f;--sand:#eee7da;--focus:#76532f;--max:1160px;--radius:14px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-size:1rem;line-height:1.65;background:var(--paper)}a{color:var(--green);text-underline-offset:4px}a:hover{color:var(--olive)}button,input,textarea,select{font:inherit}button,a,input,textarea{touch-action:manipulation}.container{width:min(var(--max),calc(100% - 2.8rem));margin-inline:auto}.skip-link{position:absolute;top:-5rem;left:1rem;z-index:99;background:var(--white);padding:.8rem 1rem}.skip-link:focus{top:1rem}
.site-header{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}.header-inner{max-width:var(--max);margin:auto;padding:.55rem 1.4rem;display:flex;align-items:center;justify-content:space-between;gap:1.3rem}.brand{display:inline-flex;align-items:baseline;gap:0;line-height:1;text-decoration:none;font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3vw,2.8rem);font-weight:500;letter-spacing:-.055em;white-space:nowrap}.brand-agri{color:var(--green)}.brand-soutien{color:var(--brown)}.nav-toggle{display:none;border:1px solid var(--line);border-radius:10px;padding:.6rem .8rem;background:var(--white);color:var(--ink)}.main-nav{display:flex;align-items:center;gap:clamp(.75rem,1.4vw,1.35rem)}.main-nav a{font-size:.95rem;font-weight:650;text-decoration:none;color:var(--ink)}.main-nav a[aria-current=page]{color:var(--green);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}.main-nav .nav-cta{background:var(--green);color:white;border-radius:8px;padding:.6rem .95rem}.main-nav .nav-cta:hover{background:var(--green-dark);color:white}
.hero{padding:clamp(3.2rem,7vw,6.4rem) 0 4rem}.hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(270px,.8fr);gap:clamp(2rem,6vw,6rem);align-items:center}.hero-copy h1,.section h2,.page-intro h1{font-family:Georgia,"Times New Roman",serif;font-weight:600;letter-spacing:-.04em}.hero-copy h1{font-size:clamp(2.8rem,5.4vw,5.2rem);line-height:1.03;max-width:15ch;margin:0 0 1.25rem}.hero-copy h1 span{color:var(--brown)}.eyebrow{font-size:.875rem;line-height:1.35;letter-spacing:.1em;text-transform:uppercase;font-weight:800;color:var(--green);margin:0 0 .8rem}.lead{font-size:clamp(1.1rem,1.8vw,1.25rem);color:var(--muted);max-width:60ch;margin:0 0 1.2rem}.area-line{display:flex;align-items:center;gap:.65rem;color:var(--green);font-weight:750;margin:0 0 1.5rem}.area-mark{width:9px;height:9px;background:var(--olive);border-radius:50%;flex:none}.actions{display:flex;flex-wrap:wrap;gap:.8rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.72rem 1.15rem;border:1px solid var(--green);border-radius:8px;text-decoration:none;font-weight:750;transition:background .15s,color .15s,border-color .15s}.button-primary{background:var(--green);color:white}.button-primary:hover{background:var(--green-dark);color:white}.button-secondary{background:transparent;color:var(--green)}.button-secondary:hover{background:var(--olive-soft)}.button-light{background:var(--white);color:var(--green);border-color:var(--white)}.button-light:hover{background:var(--paper);color:var(--green-dark)}.button-light-outline{background:transparent;color:white;border-color:#ffffff9c}.button-light-outline:hover{background:#ffffff16;color:white}
.profile-card{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:390px;margin:auto;padding:1.5rem;background:var(--white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 16px 40px #29281f0e}.profile-photo{display:block;width:min(100%,245px);height:270px;object-fit:cover;object-position:center 35%;border-radius:13px;margin-bottom:1.15rem}.profile-card .eyebrow{margin:.1rem 0 .35rem}.profile-card h2{font-family:Georgia,"Times New Roman",serif;font-size:2rem;line-height:1.1;color:var(--green);margin:0 0 .45rem}.profile-card>p:not(.eyebrow){color:var(--muted);margin:.3rem 0}.profile-links{display:flex;flex-direction:column;gap:.25rem;margin:.75rem 0 0}.profile-links a{font-weight:750}
.section{padding:clamp(3.3rem,6vw,5rem) 0}.section-white{background:var(--white)}.section-sand{background:var(--sand)}.section-heading{max-width:720px;margin:0 0 2rem}.section-heading h2,.section h2,.page-intro h1{font-size:clamp(2rem,3.8vw,3.35rem);line-height:1.1;margin:0 0 .85rem}.section-heading>p:not(.eyebrow){color:var(--muted);font-size:1.05rem;margin:.35rem 0}.activity-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}.activity-card{padding:clamp(1.4rem,3vw,2.2rem);background:#fffaf0;border:1px solid var(--line);border-top:4px solid var(--green);border-radius:var(--radius)}.activity-card-technical{border-top-color:var(--brown)}.card-kicker{font-size:.83rem;font-weight:850;letter-spacing:.09em;text-transform:uppercase;color:var(--green);margin:0 0 .7rem}.activity-card-technical .card-kicker{color:var(--brown)}.activity-card h3{font-family:Georgia,"Times New Roman",serif;font-size:1.7rem;line-height:1.15;margin:0 0 .75rem}.activity-card>p:not(.card-kicker){color:var(--muted);margin:.4rem 0}.short-list{list-style:none;padding:0;margin:1rem 0 1.2rem}.short-list li{padding:.42rem 0 .42rem 1.3rem;position:relative;border-bottom:1px solid #d6cbb375}.short-list li:before{content:"";position:absolute;left:.1rem;top:.98rem;width:.5rem;height:.5rem;border-radius:50%;background:var(--olive)}.activity-card-technical .short-list li:before{background:#8a6541}.text-link{display:inline-block;font-weight:800}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(2rem,7vw,7rem);align-items:start}.two-col h2{margin:0}.body-copy{max-width:68ch}.body-copy p{color:var(--muted);margin:.25rem 0 1rem}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:.85rem;counter-reset:step}.step{counter-increment:step;padding:1.25rem;background:var(--white);border:1px solid var(--line);border-radius:14px}.step:before{content:"0" counter(step);font-size:.9rem;letter-spacing:.12em;font-weight:850;color:var(--olive)}.step h3{font-family:Georgia,"Times New Roman",serif;font-size:1.22rem;margin:.5rem 0 .3rem}.step p{font-size:.98rem;color:var(--muted);margin:0}.contact-strip{padding:clamp(1.5rem,4vw,2.4rem);background:var(--green);color:white;border-radius:var(--radius);display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.contact-strip .eyebrow{color:#e4e9d8}.contact-strip h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.65rem,3vw,2.3rem);margin:0 0 .4rem}.contact-strip p:not(.eyebrow){color:#e1e8df;margin:.2rem 0}.contact-strip .actions{flex:none}
.page-intro{padding:clamp(3rem,6vw,5rem) 0 1rem}.page-intro h1{max-width:19ch}.page-intro .lead{max-width:68ch}.page-content{padding:1rem 0 clamp(3rem,6vw,5rem)}.compact-heading{max-width:70ch;margin-bottom:1.3rem}.compact-heading>p{color:var(--muted);font-size:1.05rem}.service-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.service-item{position:relative;padding:1.5rem 1.5rem 1.55rem 4rem;background:var(--white);border:1px solid var(--line);border-radius:var(--radius)}.service-number{position:absolute;left:1.35rem;top:1.55rem;font-size:.83rem;font-weight:850;letter-spacing:.1em;color:var(--olive)}.service-item h2{font-family:Georgia,"Times New Roman",serif;font-size:1.45rem;line-height:1.2;margin:0 0 .6rem}.service-item p{color:var(--muted);margin:0}.audience-note{display:flex;align-items:baseline;gap:1rem;margin-top:1.2rem;padding:1.15rem 1.35rem;border-radius:12px;background:var(--olive-soft)}.audience-note .eyebrow{margin:0}.audience-note p:last-child{margin:0;font-weight:700;color:var(--green)}.price-card{margin:1.4rem 0 0;padding:1.5rem;background:var(--sand);border-left:5px solid var(--olive);border-radius:10px;max-width:850px}.price-card .eyebrow{margin:0 0 .45rem}.price-card .price-large{display:block;font-family:Georgia,"Times New Roman",serif;font-size:2.25rem;line-height:1.15;letter-spacing:-.03em;color:var(--green);margin-bottom:.65rem}.price-card p{color:var(--muted);margin:.45rem 0}.content-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);gap:1.1rem;align-items:start}.content-panel,.aside-panel{border:1px solid var(--line);background:var(--white);border-radius:var(--radius);padding:clamp(1.35rem,3vw,2.2rem)}.aside-panel{background:var(--olive-soft)}.aside-panel h2{font-family:Georgia,"Times New Roman",serif;font-size:1.6rem;margin:.1rem 0 .8rem}.aside-panel p{color:var(--muted)}.contact-big{font-weight:800;font-size:1.05rem;overflow-wrap:anywhere}.contact-aside .contact-big{font-size:1rem}.legal-panel{max-width:850px}.legal-panel h2{font-family:Georgia,"Times New Roman",serif;font-size:1.55rem;margin:1.8rem 0 .55rem}.legal-panel h2:first-child{margin-top:0}.legal-panel p{color:var(--muted)}.empty-value{font-weight:750;color:#775927;background:#fbf6ec;border:1px dashed #c7a86f;border-radius:8px;padding:.15rem .4rem}.legal-note{font-size:.95rem;color:var(--muted);margin:.65rem 0 0}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.field{display:flex;flex-direction:column;gap:.38rem}.field-full{grid-column:1/-1}.field label{font-size:.98rem;font-weight:700}.field input,.field textarea,.field select{width:100%;border:1px solid #9b9a84;border-radius:10px;background:white;padding:.75rem .85rem;min-height:48px;color:var(--ink)}.field textarea{min-height:140px;resize:vertical}.field input:focus,.field textarea:focus,.field select:focus{outline:3px solid #a2652b60;border-color:var(--focus)}.consent{display:flex;flex-direction:row;align-items:flex-start;gap:.65rem}.consent input{margin:.3rem 0 0;min-width:18px;min-height:18px}.consent label{font-size:.95rem;font-weight:500}.form-status{padding:.7rem .9rem;background:var(--olive-soft);border-radius:10px;color:var(--green);font-weight:700}.request-form button{width:max-content}.appointment-layout{grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr)}
.contact-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.contact-card{padding:1.45rem;background:var(--white);border:1px solid var(--line);border-radius:var(--radius)}.contact-card h2{font-family:Georgia,"Times New Roman",serif;font-size:1.55rem;line-height:1.2;margin:.3rem 0 .7rem}.contact-card p{color:var(--muted)}.contact-card .button{margin-top:.35rem}.contact-card-area{background:var(--olive-soft)}
.site-footer{background:var(--green-dark);color:#e7eee7;padding:2.8rem 0 1.25rem}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:2rem}.site-footer h2{font-family:Georgia,"Times New Roman",serif;font-size:1.18rem;margin:0 0 .7rem;color:white}.site-footer p,.site-footer a{color:#dbe5d9}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer li{margin:.4rem 0}.footer-brand{max-width:34ch}.footer-brand .brand{font-size:2rem;margin-bottom:.6rem}.footer-brand p{margin:.5rem 0;color:#dbe5d9}.contact-details li{margin:.45rem 0}.contact-details a{font-weight:700}.social-links{display:flex;flex-direction:column;gap:.25rem;margin-top:.8rem;font-size:.92rem;color:#c8d6c8}.footer-links{margin:0}.footer-area{font-weight:700}.footer-bottom{border-top:1px solid #ffffff35;margin-top:1.7rem;padding-top:.8rem;display:flex;justify-content:space-between;gap:1rem;color:#cbd8cc;font-size:.9rem}.site-footer a:focus-visible,.main-nav a:focus-visible,.button:focus-visible,.nav-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
@media(max-width:980px){.hero-grid,.two-col,.appointment-layout{grid-template-columns:1fr}.profile-card{max-width:460px}.steps{grid-template-columns:repeat(2,1fr)}.contact-cards{grid-template-columns:1fr 1fr}.contact-card-area{grid-column:1/-1}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}
@media(max-width:680px){.container{width:min(var(--max),calc(100% - 1.5rem))}.header-inner{padding:.55rem .75rem}.brand{font-size:clamp(1.85rem,8vw,2.3rem)}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:.75rem;background:var(--paper);border-bottom:1px solid var(--line);box-shadow:0 14px 24px #18252c12;flex-direction:column;align-items:stretch;gap:.15rem}.main-nav.is-open{display:flex}.main-nav a{padding:.75rem .65rem}.main-nav .nav-cta{text-align:center;margin-top:.3rem}.hero{padding:2.8rem 0 2.4rem}.hero-copy h1{font-size:clamp(2.55rem,12vw,3.75rem)}.profile-photo{height:250px}.section{padding:3.15rem 0}.activity-grid,.service-groups,.contact-cards{grid-template-columns:1fr}.contact-card-area{grid-column:auto}.steps{grid-template-columns:1fr 1fr}.contact-strip{align-items:flex-start;flex-direction:column}.contact-strip .actions{width:100%}.contact-strip .button{flex:1}.service-item{padding:1.25rem 1.2rem 1.3rem 3.35rem}.service-number{left:1.1rem;top:1.35rem}.audience-note{display:block}.audience-note .eyebrow{margin-bottom:.35rem}.footer-grid{grid-template-columns:1fr;gap:1.35rem}.footer-brand{grid-column:auto}.footer-bottom{flex-direction:column;gap:.2rem}.form-grid{grid-template-columns:1fr}.field-full{grid-column:auto}.request-form button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}


/* Reprise plus calme de la palette crème, vert profond et brun de la plaquette. */
.header-inner{padding-block:.75rem}
.brand{font-size:clamp(2rem,3vw,2.65rem);letter-spacing:-.045em}
.main-nav{gap:clamp(.7rem,1.15vw,1.15rem)}
.main-nav a{font-size:.93rem}
.hero{padding:clamp(3rem,6vw,5.4rem) 0 clamp(3rem,5vw,4.7rem)}
.hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(300px,.82fr);gap:clamp(2.5rem,7vw,6rem)}
.hero-copy h1,.section h2,.page-intro h1{font-weight:500;letter-spacing:-.028em}
.hero-copy h1{font-size:clamp(2.8rem,5.1vw,4.7rem);max-width:13ch;line-height:1.05}
.hero-copy h1 span{color:var(--brown)}
.eyebrow{letter-spacing:.075em;font-size:.82rem}
.lead{font-size:clamp(1.1rem,1.7vw,1.22rem);line-height:1.7;max-width:56ch}
.hero-portrait{width:100%;max-width:420px;justify-self:end;margin:0}
.profile-photo{display:block;width:100%;max-width:none;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 35%;border:6px solid var(--white);border-radius:12px;box-shadow:0 18px 48px rgba(48,45,38,.13);margin:0}
.hero-portrait figcaption{display:flex;align-items:baseline;gap:.75rem;margin:1rem 0 0;padding:.1rem 0 .1rem .9rem;border-left:2px solid var(--olive)}
.portrait-name{font:500 1.45rem/1.2 Georgia,"Times New Roman",serif;color:var(--green)}
.portrait-role{font-size:.95rem;color:var(--muted)}
.area-line{font-weight:700}
.button{border-radius:8px;font-weight:700;transition:background .15s,color .15s,border-color .15s}
.button-primary{background:var(--green);border-color:var(--green)}
.button-primary:hover{background:var(--green-dark);border-color:var(--green-dark)}
.button-secondary{border-color:#a6ad91;color:var(--green)}
.button-secondary:hover{background:var(--olive-soft)}
.section{padding:clamp(3.2rem,5.5vw,4.6rem) 0}
.section-white{background:#fffdf8}
.section-sand{background:#eee7da}
.section-heading{max-width:760px;margin-bottom:2.2rem}
.section-heading h2,.section h2,.page-intro h1{line-height:1.14}
.activity-grid{gap:1.2rem}
.activity-card{background:var(--white);border:1px solid var(--line);border-top:2px solid var(--green);border-radius:12px;box-shadow:0 9px 24px rgba(48,45,38,.045)}
.activity-card-technical{border-top-color:var(--brown)}
.activity-card h3,.service-item h2,.step h3{font-weight:500}
.short-list li{border-bottom-color:#ded6c7}
.step{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:1.1rem .3rem 0}
.step:before{color:var(--olive)}
.contact-strip{border-radius:12px;background:var(--green-dark);padding:clamp(1.5rem,3.5vw,2.3rem)}
.page-intro{padding:clamp(2.8rem,5vw,4.5rem) 0 .8rem}
.service-groups{gap:1rem}
.service-item,.content-panel,.aside-panel,.contact-card{border-radius:12px}
.service-item{background:var(--white);box-shadow:0 8px 22px rgba(48,45,38,.035)}
.service-number{color:var(--brown)}
.audience-note{background:var(--olive-soft);border-radius:8px}
.modalites-card{max-width:850px;margin:1.4rem 0 0;padding:1.55rem 1.7rem;background:#f1ecdf;border-left:3px solid var(--olive);border-radius:4px 10px 10px 4px}
.modalites-card .eyebrow{margin:0 0 .55rem}
.modalites-card h2{font:500 1.65rem/1.2 Georgia,"Times New Roman",serif;color:var(--green);margin:0 0 .55rem}
.modalites-card p:not(.eyebrow){color:var(--muted);margin:.35rem 0 .8rem;max-width:70ch}
.content-panel,.contact-card{box-shadow:0 8px 22px rgba(48,45,38,.035)}
.field input,.field textarea,.field select{border-color:#b9b19f;border-radius:8px}
.field input:focus,.field textarea:focus,.field select:focus{outline-color:#76532f55;border-color:var(--focus)}
.site-footer{background:#263f31}
.site-footer .brand-agri{color:#dce8d9}
.site-footer .brand-soutien{color:#e6d2b8}
.site-footer a:hover{color:white}
@media(max-width:980px){.hero-grid{grid-template-columns:1fr}.hero-portrait{justify-self:center;max-width:460px}.profile-photo{aspect-ratio:4/5}}
@media(max-width:680px){.hero{padding:2.7rem 0 2.8rem}.hero-copy h1{font-size:clamp(2.55rem,11vw,3.55rem)}.hero-portrait{max-width:420px}.hero-portrait figcaption{align-items:flex-start;flex-direction:column;gap:.2rem}.section{padding:3rem 0}.contact-strip{border-radius:10px}}

/* Deux scènes sobres, intégrées aux activités et aux pages de détail. */
.activity-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:8px;margin:0 0 1.3rem}
.illustrated-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,4rem);align-items:center;padding-bottom:2rem}
.illustrated-intro h1{font-size:clamp(2.3rem,3.6vw,3.25rem)}
.service-visual{margin:0;min-width:0}
.service-photo{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:10px}
.service-visual figcaption{font-size:.875rem;color:var(--muted);margin-top:.4rem}
@media(max-width:980px){.illustrated-intro{grid-template-columns:1fr;gap:1.3rem}.service-visual{max-width:600px}.activity-photo{aspect-ratio:3/2}}
@media(max-width:680px){.illustrated-intro{padding-bottom:1rem}.activity-photo{margin-bottom:1.1rem}}

/* Présentation du parcours, avec un rythme visuel léger entre l’accueil et les services. */
.story-section{background:var(--sand)}
.hero-grid{grid-template-columns:1fr}
.hero-copy{max-width:900px;margin-inline:auto}
.hero-copy h1{max-width:20ch}
.story-grid{display:grid;grid-template-columns:minmax(220px,.62fr) minmax(0,1.38fr);gap:clamp(2rem,5vw,4rem);align-items:start}
.story-portrait{margin:0;max-width:330px}
.story-portrait img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 35%;border:6px solid var(--white);border-radius:12px;box-shadow:0 14px 36px rgba(48,45,38,.1)}
.story-portrait figcaption{margin:.65rem .15rem 0;color:var(--muted);font-size:.92rem}
.story-copy h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2rem,3.5vw,3rem);line-height:1.14;font-weight:500;letter-spacing:-.028em;margin:0 0 1rem}
.story-copy>p:not(.eyebrow){max-width:72ch;color:var(--muted);margin:.55rem 0 .9rem}
@media(max-width:980px){.story-grid{grid-template-columns:1fr}.story-portrait{width:min(100%,310px);margin-inline:auto}.story-copy{max-width:760px;margin-inline:auto}}
