/* ============================================================
   Landing Native V2 - "Votre cour arriere" redesign
   Mobile-first conversion redesign. Ported from the approved
   standalone. Paths are relative to /css/ (img -> ../img/landing).
   Tracking + header come from the template/header.php, not here.
   ============================================================ */

/* 'Feature Display' is already loaded by landing-native.css (weight 300); no duplicate @font-face here so the type matches the live page exactly. */

.ln2{
  --ink:#2c2b29;--ink-2:#404142;--terra:#946955;--terra-deep:#7a5843;--gold:#d4b896;
  --cream:#f5f0eb;--cream-2:#ece2d6;--border:#ddd5ca;--muted:#9a8e82;--white:#fff;
  --font-body:'Montserrat',-apple-system,BlinkMacSystemFont,sans-serif;
  --font-head:'futura-pt','Futura','Century Gothic',var(--font-body);
  --font-serif:'Feature Display','Cormorant Garamond',Georgia,serif;
  --maxw:1200px;--pad:24px;--radius:14px;--ease:cubic-bezier(.22,.61,.36,1);
  --shadow-soft:0 10px 30px -12px rgba(44,43,41,.18);
  font-family:var(--font-body);color:var(--ink);line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased;
}
.ln2 *,.ln2 *::before,.ln2 *::after{box-sizing:border-box;margin:0;padding:0}
.ln2 img{display:block;max-width:100%}
.ln2 a{color:inherit;text-decoration:none}
.ln2 button,.ln2 input,.ln2 select,.ln2 textarea{font:inherit;color:inherit}
body.ln2-lock{overflow:hidden}

.ln2 .eyebrow{font-family:var(--font-head);text-transform:uppercase;letter-spacing:.28em;font-size:11px;font-weight:600;color:var(--terra)}
.ln2 .display{font-family:var(--font-serif);font-weight:400;line-height:1.06;letter-spacing:0}
.ln2 .wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--pad)}
.ln2 p{max-width:64ch}

.ln2 .btn{display:inline-flex;align-items:center;justify-content:center;gap:.55em;font-family:var(--font-body);font-weight:600;letter-spacing:.01em;text-transform:none;font-size:15px;line-height:1;padding:15px 32px;border:none;border-radius:6px;cursor:pointer;transition:transform .25s var(--ease),background .25s,box-shadow .25s;white-space:nowrap}
.ln2 .btn--primary{background:var(--terra);color:#fff;box-shadow:0 10px 24px -10px rgba(122,88,67,.7)}
.ln2 .btn--primary:hover{background:var(--terra-deep);transform:translateY(-2px)}
.ln2 .btn--ghost{background:rgba(255,255,255,.06);color:#fff;border:1.5px solid rgba(255,255,255,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.ln2 .btn--ghost:hover{background:rgba(255,255,255,.16);border-color:#fff}
.ln2 .btn--block{width:100%}.ln2 .btn--lg{padding:16px 34px;font-size:15px}
/* kill the theme's global .btn:after chevron + any ::before arrow */
.ln2 .btn::after,.ln2 .btn::before,.ln2-sticky .btn::after,.ln2-sticky .btn::before{display:none!important;content:none!important;background:none!important}

.ln2 .vh{min-height:100svh;display:flex;align-items:center;padding-block:80px}

/* page wrapper sits ABOVE the fixed closing (curtain reveal) */
.ln2-page{position:relative;z-index:1;background:var(--cream);margin-bottom:100svh}

/* ===== HERO ===== */
.ln2 .hero{position:relative;min-height:100svh;display:flex;align-items:flex-start;text-align:center;
  background:#1c1b1a url('../img/landing/hero-vertical.jpg') center/cover no-repeat;color:#fff;padding-top:280px;isolation:isolate}
.ln2 .hero::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(20,19,18,.78) 0%,rgba(20,19,18,.55) 20%,rgba(20,19,18,.12) 44%,rgba(20,19,18,0) 62%,rgba(20,19,18,0) 100%)}
.ln2 .hero__inner{width:100%;max-width:760px;margin-inline:auto;padding:0 var(--pad);display:flex;flex-direction:column;align-items:center;gap:18px}
.ln2 .hero .eyebrow{color:var(--gold)}
.ln2 .hero h1{font-size:36px;font-weight:300;letter-spacing:-0.02em;line-height:1.1;margin:6px 0 4px;text-shadow:0 2px 24px rgba(0,0,0,.4)}
.ln2 .hero__sub{font-size:16px;color:rgba(255,255,255,.7);font-weight:400;line-height:1.6;text-shadow:0 1px 14px rgba(0,0,0,.5)}
.ln2 .hero__trust{font-size:11px;color:rgba(255,255,255,.78);letter-spacing:.12em;text-transform:uppercase;font-family:var(--font-head);font-weight:500;margin-top:2px}

/* ===== STORY (video bg) ===== */
.ln2 .story{position:relative;color:#fff;overflow:hidden;isolation:isolate}
.ln2 .story__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% center;z-index:-2}
.ln2 .story::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(24,23,22,.52),rgba(24,23,22,.66) 50%,rgba(24,23,22,.8))}
.ln2 .story__grid{display:grid;gap:30px}
.ln2 .story__lead{font-family:var(--font-serif);font-weight:400;font-size:clamp(27.2px,4.6vw,43.2px);line-height:1.14}
.ln2 .story__lead em{font-style:italic;color:var(--gold)}
.ln2 .story__body{color:rgba(255,255,255,.82);font-size:16.96px;display:grid;gap:15px;max-width:56ch}
.ln2 .story__body strong{color:#fff;font-weight:600}
.ln2 .notlist{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}
.ln2 .notlist span{font-family:var(--font-head);font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-size:12px;color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:999px;padding:9px 16px}
.ln2 .notlist span s{text-decoration-color:var(--gold);text-decoration-thickness:1.5px}

/* ===== TRUST (bento over warm image) ===== */
.ln2 .trust{position:relative;color:#fff;background:#1c1b1a url('../img/landing/bg-trust.jpg') center/cover no-repeat;isolation:isolate}
.ln2 .trust::after{content:"";position:absolute;inset:0;z-index:-1;background:rgba(51,50,48,.30)}
.ln2 .trust__bento{display:grid;gap:16px;width:100%}
.ln2 .tcard{background:rgba(255,255,255,.08);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:32px 28px;box-shadow:0 0 0 1px rgba(255,255,255,.04) inset,0 8px 32px rgba(0,0,0,.12);display:flex;flex-direction:column;justify-content:center}
.ln2 .tcard h3{font-family:var(--font-serif);font-weight:300;font-size:26px;line-height:1.25;margin-bottom:12px;color:#fff}
.ln2 .tcard .num{font-family:var(--font-serif);font-weight:300;font-size:clamp(52px,7vw,72px);line-height:1;color:#fff}
.ln2 .tcard .sub{font-family:var(--font-serif);font-weight:300;font-size:24px;color:#fff;margin:4px 0 12px}
.ln2 .tcard p{font-size:14px;color:rgba(255,255,255,.75);line-height:1.65}

/* ===== EXPERIENCE ===== */
.ln2 .exp{position:relative;color:var(--ink);background:var(--cream);padding-block:clamp(56px,9vw,96px)}
.ln2 .exp__grid{display:grid;gap:40px;align-items:center}
.ln2 .exp .eyebrow{color:var(--terra)}
.ln2 .exp h2{font-size:clamp(29px,3.6vw,42px);font-weight:300;letter-spacing:-0.01em;line-height:1.18;margin:14px 0 20px;color:var(--ink)}
.ln2 .exp p{color:var(--ink-2);font-size:16.96px;margin-bottom:14px;line-height:1.8}
.ln2 .exp .accent{font-family:var(--font-serif);font-style:italic;font-size:24px;color:var(--terra);display:block;margin-top:8px}
.ln2 .exp__media img{border-radius:8px;width:100%;aspect-ratio:4/3;object-fit:cover;box-shadow:0 24px 60px -30px rgba(44,43,41,.5)}
@media(min-width:900px){.ln2 .exp__grid{grid-template-columns:1fr 1fr}}

/* ===== REVIEWS ===== */
.ln2 .reviews{background:var(--cream);padding-block:clamp(56px,9vw,96px)}
.ln2 .reviews__head{text-align:center;max-width:640px;margin:0 auto clamp(34px,5vw,48px)}
.ln2 .reviews h2{font-size:clamp(30.4px,5vw,44.8px)}
.ln2 .reviews__grid{display:grid;gap:18px}
.ln2 .review{background:#fff;border-radius:var(--radius);padding:26px 24px;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:14px}
.ln2 .review__who{display:flex;align-items:center;gap:12px}
.ln2 .review__av{width:42px;height:42px;border-radius:50%;background:var(--terra);color:#fff;display:grid;place-items:center;font-family:var(--font-head);font-weight:700;font-size:17px;flex:none}
.ln2 .review__name{font-weight:600;font-size:14.5px}
.ln2 .review__stars{color:var(--gold);letter-spacing:2px;font-size:14px;margin-top:2px}
.ln2 .review__text{font-size:14.5px;color:var(--ink-2);line-height:1.62;flex:1}
.ln2 .review__src{font-size:11px;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-family:var(--font-head);border-top:1px solid var(--border);padding-top:14px}
.ln2 .reviews__cta{display:flex;justify-content:center;margin-top:30px}
.ln2 .btn--google{background:#fff;color:var(--ink);box-shadow:var(--shadow-soft);border:1px solid var(--border);border-radius:100px}
.ln2 .btn--google:hover{background:#fff;transform:translateY(-2px)}
.ln2 .btn--google svg{width:17px;height:17px}

/* ===== FORM ===== */
.ln2 .devis{background:var(--cream);padding-block:clamp(50px,8vw,90px)}
.ln2 .devis__inner{max-width:720px;margin:0 auto;padding:clamp(34px,5vw,60px) clamp(22px,4vw,56px);text-align:center;background:var(--cream-2);border-radius:16px}
.ln2 .devis__inner .eyebrow{color:var(--terra)}
.ln2 .devis__inner h2{font-family:var(--font-serif);font-weight:300;letter-spacing:-0.01em;font-size:clamp(28px,3.4vw,38px);margin:10px 0 14px;line-height:1.2;color:var(--ink)}
.ln2 .devis__sub{color:var(--ink-2);font-size:14px;line-height:1.7;max-width:480px;margin:0 auto 30px}
.ln2 .devis__inner .ln2-cf7{text-align:left}
.ln2 .formnote{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:13px;font-size:11.5px;color:var(--muted);font-weight:500}
.ln2 .formnote span{display:inline-flex;align-items:center;gap:5px}
.ln2 .formnote span::before{content:"";width:14px;height:14px;border-radius:50%;background:var(--terra) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9' height='9' viewBox='0 0 10 10'%3E%3Cpath d='M1.5 5l2.2 2.4L8.5 2.4' stroke='%23fff' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/9px no-repeat}

/* ---- CF7 output styled to match the redesign fields ---- */
.ln2 .ln2-cf7 .wpcf7-form{display:grid;gap:11px}
.ln2 .ln2-cf7 .quote-form__row{display:grid;gap:11px}
.ln2 .ln2-cf7 .wpcf7-form-control-wrap{display:block}
.ln2 .ln2-cf7 .wpcf7-form-control:not(.wpcf7-submit){width:100%;background:#fff;border:1px solid rgba(0,0,0,.10);border-radius:10px;padding:14px 16px;font-size:15px;color:var(--ink);transition:border-color .2s,box-shadow .2s,background .2s}
.ln2 .ln2-cf7 .wpcf7-form-control::placeholder{color:#a89c8f}
.ln2 .ln2-cf7 .wpcf7-form-control:not(.wpcf7-submit):focus{outline:none;border-color:var(--terra);box-shadow:0 0 0 3px rgba(148,105,85,.15);background:#fff}
.ln2 .ln2-cf7 select.wpcf7-form-control{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23946955' stroke-width='1.6' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center;padding-right:38px}
.ln2 .ln2-cf7 .wpcf7-submit{width:100%;background:var(--terra);color:#fff;font-family:var(--font-body);font-weight:600;letter-spacing:.01em;font-size:15px;border:none;border-radius:6px;padding:16px 34px;cursor:pointer;box-shadow:0 10px 24px -10px rgba(122,88,67,.7);transition:transform .25s var(--ease),background .25s;margin-top:4px}
.ln2 .ln2-cf7 .wpcf7-submit:hover{background:var(--terra-deep);transform:translateY(-2px)}
.ln2 .ln2-cf7 .wpcf7-spinner{margin:8px auto 0;display:block}
.ln2 .ln2-cf7 .wpcf7-not-valid-tip{color:#c0392b;font-size:12px;margin-top:4px}
.ln2 .ln2-cf7 .wpcf7-response-output{font-size:13px;margin:14px 0 0;border-radius:8px;padding:10px 14px}
@media(min-width:480px){.ln2 .ln2-cf7 .quote-form__row{grid-template-columns:1fr 1fr}}

/* ===== GALLERY (infinite auto-scroll marquee) ===== */
.ln2 .gallery{background:var(--cream);padding-block:clamp(50px,8vw,86px)}
.ln2 .gallery__head{margin:0 auto clamp(26px,4vw,40px);max-width:var(--maxw);padding-inline:var(--pad)}
.ln2 .gallery__head h2{font-size:clamp(30.4px,5vw,44.8px);margin-top:8px}
.ln2 .gallery__viewport{overflow:hidden}
.ln2 .gallery__track{display:flex;width:max-content;padding-block:6px 20px;will-change:transform;animation:ln2-marquee 30s linear infinite}
.ln2 .gallery__viewport:hover .gallery__track,.ln2 .gallery__track:active{animation-play-state:paused}
.ln2 .gallery__track figure{flex:0 0 auto;width:78vw;max-width:520px;margin-right:18px;border-radius:14px;overflow:hidden;aspect-ratio:3/2;background:#ddd}
.ln2 .gallery__track img{width:100%;height:100%;object-fit:cover;display:block}
@keyframes ln2-marquee{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(prefers-reduced-motion:reduce){.ln2 .gallery__track{animation:none}.ln2 .gallery__viewport{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}}

/* ===== CLOSING (fixed; revealed by the gallery scrolling up) ===== */
.ln2-closing{position:fixed;left:0;right:0;bottom:0;height:100svh;z-index:0;color:#fff;text-align:center;
  display:flex;align-items:center;justify-content:center;
  background:#1c1b1a url('../img/landing/bg-closing.jpg') 76% 34%/cover no-repeat;isolation:isolate;
  font-family:var(--font-body)}
.ln2-closing::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(24,23,22,.4),rgba(24,23,22,.66))}
@media(min-aspect-ratio:5/4){.ln2-closing{background-position:center}}
.ln2-closing__inner{display:grid;gap:24px;justify-items:center;max-width:680px;padding:40px var(--pad)}
.ln2-closing .logo{height:62px}
.ln2-closing h2{font-family:var(--font-serif);font-weight:400;line-height:1.06;font-size:clamp(30.4px,5vw,48px)}
.ln2-closing h2 em{font-style:italic;color:var(--gold)}
.ln2-closing .btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-head);font-weight:600;letter-spacing:.04em;font-size:14px;padding:18px 34px;border-radius:999px;cursor:pointer;background:rgba(255,255,255,.06);color:#fff;border:1.5px solid rgba(255,255,255,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);transition:background .25s,border-color .25s}
.ln2-closing .btn:hover{background:rgba(255,255,255,.16);border-color:#fff}
.ln2-closing .foot{margin-top:14px;font-size:12px;color:rgba(255,255,255,.6);letter-spacing:.04em}
.ln2-closing .foot a{color:rgba(255,255,255,.85)}

/* ===== STICKY CTA (mobile/tablet) ===== */
.ln2-sticky{position:fixed;left:0;right:0;bottom:0;z-index:60;display:flex;justify-content:center;padding:0 16px calc(18px + env(safe-area-inset-bottom));transform:translateY(185%);transition:transform .45s var(--ease);pointer-events:none}
.ln2-sticky.show{transform:translateY(0);pointer-events:auto}
.ln2-sticky .btn{min-width:min(440px,88vw);padding:16px 34px;font-size:15px;font-family:var(--font-body);font-weight:600;letter-spacing:.01em;border:none;border-radius:6px;background:var(--terra,#946955);color:#fff;cursor:pointer;box-shadow:0 12px 30px -8px rgba(122,88,67,.7),0 3px 12px rgba(0,0,0,.24)}
.ln2-sticky .btn:hover{background:var(--terra-deep,#7a5843)}
@media(min-width:1025px){.ln2-sticky{display:none !important}}

/* ===== SLIDE-IN FORM PANEL (bottom sheet, all sizes) ===== */
.ln2-sheet{position:fixed;inset:0;z-index:90;visibility:hidden;pointer-events:none;font-family:var(--font-body);transition:visibility 0s linear .5s}
.ln2-sheet.open{visibility:visible;pointer-events:auto;transition:visibility 0s}
.ln2-sheet__backdrop{position:absolute;inset:0;background:rgba(24,23,22,.55);opacity:0;transition:opacity .45s var(--ease)}
.ln2-sheet.open .ln2-sheet__backdrop{opacity:1}
/* mobile: bottom sheet (slides down on close) */
.ln2-sheet__panel{position:absolute;left:0;right:0;bottom:0;margin:0 auto;width:100%;max-width:540px;background:var(--cream);
  border-radius:22px 22px 0 0;padding:10px 22px calc(26px + env(safe-area-inset-bottom));box-shadow:0 -20px 60px -20px rgba(0,0,0,.5);
  transform:translateY(100%);transition:transform .5s var(--ease);max-height:94svh;overflow-y:auto}
.ln2-sheet.open .ln2-sheet__panel{transform:translateY(0)}
.ln2-sheet__grab{width:44px;height:4px;border-radius:99px;background:var(--border);margin:6px auto 14px}
.ln2-sheet__close{position:absolute;top:12px;right:16px;width:34px;height:34px;border-radius:50%;border:none;background:var(--cream-2);color:var(--ink);font-size:20px;cursor:pointer;z-index:2}
.ln2-sheet__head{margin-bottom:18px;text-align:center}.ln2-sheet__head .eyebrow{color:var(--terra);display:block;margin-bottom:4px}.ln2-sheet__head .leadcard__title{display:block}
/* desktop: right-side drawer (slides in/out from the right) */
@media(min-width:1025px){
  .ln2-sheet__panel{left:auto;right:0;top:0;bottom:0;margin:0;width:min(470px,92vw);max-width:470px;height:100%;max-height:none;
    border-radius:0;padding:66px 40px 40px;box-shadow:-24px 0 60px -24px rgba(0,0,0,.5);transform:translateX(100%)}
  .ln2-sheet.open .ln2-sheet__panel{transform:translateX(0)}
  .ln2-sheet__grab{display:none}
}

/* ===== MOTION ===== */
@media(prefers-reduced-motion:no-preference){
  .ln2 .hero__inner>*{opacity:0;transform:translateY(18px);animation:ln2-rise .9s var(--ease) forwards}
  .ln2 .hero .eyebrow{animation-delay:.05s}.ln2 .hero h1{animation-delay:.16s}.ln2 .hero__sub{animation-delay:.28s}.ln2 .hero__cta{animation-delay:.4s}.ln2 .hero__trust{animation-delay:.5s}
  @keyframes ln2-rise{to{opacity:1;transform:none}}
  .js .ln2 [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
  .js .ln2 [data-reveal="left"]{transform:translateX(-36px)}
  .js .ln2 [data-reveal="right"]{transform:translateX(36px)}
  .js .ln2 [data-reveal].in{opacity:1;transform:none}
  .js .ln2 [data-reveal][data-delay="1"]{transition-delay:.12s}.js .ln2 [data-reveal][data-delay="2"]{transition-delay:.24s}.js .ln2 [data-reveal][data-delay="3"]{transition-delay:.36s}
}

/* ===== RESPONSIVE ===== */
@media(min-width:680px){
  .ln2{--pad:40px}
  .ln2 .hero{text-align:left;align-items:center;padding-top:96px}
  .ln2 .hero h1{font-size:44px}
  .ln2 .hero__inner{align-items:flex-start;margin-inline:0;max-width:600px}
  .ln2 .reviews__grid{grid-template-columns:1fr 1fr}
  .ln2 .gallery__track figure{width:46vw;max-width:440px}
  .ln2 .gallery__track{animation-duration:38s}
  .ln2 .trust__bento{grid-template-columns:1.1fr 1fr;grid-auto-rows:1fr}
  .ln2 .tcard--big{grid-row:span 2;display:flex;flex-direction:column;justify-content:center}
  .ln2 .tcard--wide{grid-column:1 / -1}
}
@media(min-width:1025px){
  .ln2{--pad:48px}
  .ln2 .hero{background-image:url('../img/landing/hero-full.jpg');align-items:center;padding-top:96px}
  .ln2 .hero h1{font-size:56px}
  .ln2 .hero::after{background:none}
  .ln2 .hero__inner{max-width:600px;margin-left:max(60px,calc((100vw - 1440px) / 2 + 60px));margin-right:0;padding:0}
  .ln2 .story__grid{grid-template-columns:1fr 1fr;gap:64px;align-items:center}
  .ln2 .reviews__grid{grid-template-columns:repeat(3,1fr)}
  .ln2 .devis{background:var(--white)}
  .ln2 .devis__inner{background:var(--cream)}
  .ln2 .gallery__track figure{width:34vw;max-width:560px}
  .ln2 .gallery__track{animation-duration:46s}
  .ln2 .trust__bento{max-width:1000px;margin-inline:auto;grid-template-columns:1.1fr 1fr;grid-template-rows:1fr 1fr auto}
  .ln2 .tcard--big{grid-column:1;grid-row:1 / 3}
  .ln2 .tcard--wide{grid-column:1 / -1;grid-row:3}
}
