/* Finitions dans la charte historique : menu latéral, Oswald, Rambla et violet Le Night. */
:root{--ln-accent:#7c5870;--ln-ink:#322d33;--ln-muted:#746c73;--ln-line:#e9e2e7;--ln-soft:#f8f5f7}
.ln-catalogue,.ln-location,.ln-wedding,.ln-gallery{color:var(--ln-ink);font-family:'Rambla',sans-serif;line-height:1.7}
.ln-location *,.ln-wedding *,.ln-gallery *,.ln-catalogue *{box-sizing:border-box}
.ln-location h1,.ln-wedding h1{font:400 clamp(38px,4.5vw,66px)/1.12 'Oswald',sans-serif;letter-spacing:-1px;margin:15px 0 25px;color:#302830}
.ln-location h2,.ln-wedding h2,.ln-gallery h1,.ln-gallery h2{font:400 clamp(28px,3vw,42px)/1.2 'Oswald',sans-serif;color:#362b34;margin:10px 0 24px}
.ln-location h3,.ln-wedding h3,.ln-gallery h3{font:400 23px/1.35 'Oswald',sans-serif;color:#3b3039;margin:0 0 15px}
.ln-location p,.ln-wedding p{font-size:16px;color:#6e646c;margin:0 0 20px}
.ln-location .ln-eyebrow,.ln-wedding .ln-eyebrow,.ln-gallery .ln-eyebrow{font-size:11px;font-weight:600;color:var(--ln-accent);letter-spacing:2px;text-transform:uppercase;margin-bottom:14px}
.ln-button{border-radius:4px;padding:14px 23px;min-height:47px;transition:background .2s,box-shadow .2s;display:inline-flex;align-items:center;justify-content:center;gap:12px;line-height:1.4;text-align:center}
.ln-button:hover{background:#65445b;color:#fff;transform:none;box-shadow:0 5px 15px #4e34441a}
.ln-button-light{background:#fff;border:1px solid #d9cbd5;color:#684b60}
.ln-button-light:hover{background:#f1e9ee;color:#503a48}
.ln-text-link{font-size:14px;line-height:1.6;color:var(--ln-accent);text-decoration:none}
.ln-text-link:hover{text-decoration:underline;color:#503a48}
.ln-catalogue a:focus-visible,.ln-location a:focus-visible,.ln-wedding a:focus-visible,.ln-gallery a:focus-visible,summary:focus-visible{outline:3px solid #a17b95;outline-offset:5px}
.ln-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin:28px 0}
.ln-editorial-hero,.ln-wedding-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5%;padding:70px 5% 55px;background:linear-gradient(125deg,#faf7f9,#fff)}
.ln-editorial-hero>div,.ln-wedding-intro{min-width:0}
.ln-editorial-hero figure,.ln-wedding-cover{margin:0;position:relative;overflow:hidden;border-radius:5px}
.ln-editorial-hero figure img{width:100%;height:440px;object-fit:cover;display:block}
.ln-editorial-hero figcaption,.ln-wedding-cover figcaption{position:absolute;bottom:0;left:0;width:100%;padding:40px 23px 20px;color:#fff;background:linear-gradient(transparent,#1d1425bd);font-size:13px;letter-spacing:1px}
.ln-location .ln-hero-footnote,.ln-wedding .ln-hero-footnote{font-size:12px;margin:16px 0 0;color:#8b7c86}
.ln-hero-footnote a{color:var(--ln-accent)}
.ln-benefit-strip{display:flex;flex-wrap:wrap;justify-content:space-between;gap:18px;padding:23px 5%;border-block:1px solid var(--ln-line);font-size:13px;color:#65535f}
.ln-benefit-strip span:before{content:'✓';margin-right:10px;color:var(--ln-accent)}
.ln-content-section{padding:70px 5%;scroll-margin-top:24px}
.ln-soft-section{background:var(--ln-soft)}
.ln-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:30px}
.ln-section-heading h2{margin-bottom:0}
.ln-section-heading>p{max-width:360px;margin-bottom:0;font-size:15px}
.ln-category-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ln-category-tile{position:relative;display:block;min-height:220px;overflow:hidden;border-radius:5px;background:#302730}
.ln-category-tile img{width:100%;height:240px;object-fit:cover;opacity:.75;transition:transform .3s}
.ln-category-tile>div{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(transparent 20%,#251a26dc);padding:24px}
.ln-category-tile h3{color:white;margin:6px 25px 0 0;font-size:25px}.ln-category-tile span{color:#eee1eb;font-size:12px}.ln-category-tile .ln-tile-arrow{position:absolute;right:20px;bottom:25px;font-size:24px}.ln-category-tile:hover img{transform:scale(1.035)}
.ln-pack-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ln-pack-card{display:flex;flex-direction:column;background:white;border:1px solid var(--ln-line);border-radius:6px;overflow:hidden;box-shadow:0 4px 18px #472c3e04}
.ln-pack-visual{position:relative;display:block;background:#fff;padding:18px;border-bottom:1px solid #f0eaf0}
.ln-pack-visual img{width:100%;height:200px;object-fit:contain;display:block}
.ln-pack-visual>span{display:block;font-size:11px;color:#72586c;background:#f6f0f4;text-align:center;padding:7px;margin:12px -18px -18px;letter-spacing:.3px}
.ln-pack-body{padding:25px;display:flex;flex-direction:column;flex:1;min-width:0}
.ln-pack-body h3{font:400 30px 'Oswald',sans-serif;margin:0 0 16px;color:#3b3039}
.ln-pack-body>p{font-size:14px;color:#756874;line-height:1.65;margin:0 0 18px}
.ln-pack-body .ln-eyebrow{font-size:10px;margin-bottom:10px}
.ln-pack-body .ln-pack-duration{font-size:12px;color:#876c80;margin-top:auto;padding-top:10px}
.ln-pack-bottom{border-top:1px solid #eee6ec;padding-top:18px}.ln-pack-bottom p{margin:0 0 18px;color:#76536b}.ln-pack-bottom strong{font:400 32px 'Oswald',sans-serif}.ln-pack-bottom small{font-size:12px}.ln-pack-bottom .ln-button{width:100%;font-size:13px}
.ln-pack-section{scroll-margin-top:30px;padding-top:15px}.ln-pack-section+.ln-pack-section{margin-top:65px}.ln-pack-section>h3{font-size:26px}.ln-pack-section>p{font-size:15px;margin-bottom:27px}
.ln-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;padding:0;margin:35px 0}.ln-steps>li{border-top:1px solid #d6c6d1;padding-top:22px}.ln-steps>li>span{display:block;font:400 32px 'Oswald',sans-serif;color:#bba4b4;margin-bottom:20px}.ln-steps h3{font-size:22px}.ln-steps p{font-size:15px}
.ln-split{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:7%}.ln-panel{background:var(--ln-soft);border:1px solid var(--ln-line);padding:30px;border-radius:5px}.ln-panel h3{font:400 25px 'Oswald',sans-serif}
.ln-included{display:grid;grid-template-columns:1fr 1fr;gap:12px 30px;padding:0;list-style:none}.ln-included li{padding:14px 15px 14px 38px;background:#faf7f9;position:relative;font-size:15px}.ln-included li:before{content:'✓';position:absolute;left:14px;color:var(--ln-accent)}
.ln-capacity{display:inline-block;padding:7px 12px;background:#f5eef3;color:#77526c;font-size:13px;border-radius:3px}
.ln-catalogue-heading{display:grid;grid-template-columns:minmax(0,1fr) 245px;gap:35px;align-items:center}.ln-catalogue-heading .ln-page-heading{margin:0}.ln-catalogue-heading h1{font-size:clamp(32px,3.2vw,48px)}.ln-catalogue-help{border-left:2px solid #c7afbf;padding:5px 0 5px 23px}.ln-catalogue-help p{font-size:14px;color:#796b76;margin:10px 0}.ln-catalogue-help>a{font:400 23px 'Oswald',sans-serif;color:var(--ln-accent)}
.ln-category-nav{gap:8px;scroll-margin-top:20px}.ln-category-nav a{border:1px solid transparent;border-radius:4px;padding:9px 13px;font-size:13px}.ln-category-nav a:hover{border-color:#c7afbf}.ln-search{padding:22px;background:#faf7f9;border:1px solid var(--ln-line);border-radius:5px}.ln-search label{font-size:13px}.ln-search input{background:#fff}
.ln-product-card{border-radius:6px;box-shadow:0 3px 15px #422a3a03}.ln-product-card:hover{transform:translateY(-3px);box-shadow:0 12px 24px #422a3a0b;border-color:#d6c4d1}.ln-product-image{height:235px;padding:25px;border-bottom:1px solid #f6f1f4}.ln-product-content{padding:22px}.ln-product-content .ln-eyebrow{font-size:10px;letter-spacing:1.2px}.ln-product-content h3{font-size:21px;line-height:1.35}.ln-product-bottom{gap:14px}.ln-product-bottom strong{font:400 24px 'Oswald',sans-serif;color:#77546d}.ln-product-detail{align-items:start}.ln-product-detail>div:last-child{padding-top:20px}
.ln-wedding-hero{padding-top:55px;padding-bottom:55px;gap:5%;grid-template-columns:1fr 1.05fr}.ln-wedding-intro h1 em{font-style:normal;color:var(--ln-accent)}.ln-wedding-intro>p:not(.ln-eyebrow):not(.ln-hero-footnote){font-size:17px;line-height:1.8}.ln-wedding-cover img{height:565px;width:100%;object-fit:cover;object-position:center;display:block}
.ln-page-nav{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 30px;padding:22px 5%;border-block:1px solid var(--ln-line);background:#fff}.ln-page-nav a{font-size:13px;color:#735c6c;text-decoration:none}.ln-page-nav a:hover{text-decoration:underline}
.ln-moments article{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid var(--ln-line)}.ln-moments article:first-child{padding-top:0}.ln-moments article>span{font:400 28px 'Oswald',sans-serif;color:#b89daf}.ln-moments h3{font-size:22px}.ln-moments p{font-size:15px;margin:0}
.ln-story-photo{margin:0}.ln-story-photo img{display:block;width:100%;height:390px;object-fit:cover;border-radius:5px}
.ln-wedding-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.ln-wedding-photos a{overflow:hidden;border-radius:4px;display:block}.ln-wedding-photos img{width:100%;height:250px;object-fit:cover;display:block;transition:transform .3s}.ln-wedding-photos a:hover img{transform:scale(1.025)}
.ln-faq details{border-bottom:1px solid #e4dbe2;padding:18px 0}.ln-faq details:first-child{padding-top:0}.ln-faq summary{font-size:17px;color:#493846;cursor:pointer;padding-right:8px}.ln-faq details p{font-size:15px;margin:16px 0 0;line-height:1.7}
.ln-wedding-inquiry{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding:65px 6%;background:#f3edf1;border-top:1px solid #dfd2db;scroll-margin-top:20px}.ln-wedding-inquiry>div{align-self:center}.ln-wedding-inquiry .ln-call{font-size:16px}
.ln-inquiry-form{background:white;border:1px solid #e5dce3;border-radius:6px;padding:30px;display:flex;flex-direction:column;box-shadow:0 9px 28px #57334806}.ln-inquiry-form label{font-size:13px;color:#6e5768;margin-bottom:6px}.ln-inquiry-form input{min-width:0;width:100%;border:1px solid #ded3dc;border-radius:3px;padding:12px 13px;background:#fdfcfd;font:16px 'Rambla',sans-serif;color:#392c35;margin-bottom:18px}.ln-inquiry-form input:focus{outline:2px solid #ab8c9f;outline-offset:2px}.ln-inquiry-form p{font-size:12px;margin:15px 0 0;line-height:1.6}
.ln-gallery{padding:55px 5% 65px}.ln-gallery-intro{max-width:760px;margin-bottom:30px}.ln-gallery-intro>p{font-size:16px;color:#776872}.ln-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ln-gallery-grid a{display:block;position:relative;overflow:hidden;border-radius:4px;background:#f5f1f4}.ln-gallery-grid img{width:100%;height:265px;object-fit:cover;display:block;transition:transform .3s}.ln-gallery-grid a:hover img{transform:scale(1.035)}.ln-gallery-grid a:after{content:'↗';position:absolute;bottom:12px;right:12px;width:33px;height:33px;border-radius:50%;background:#fffdfbdf;display:grid;place-items:center;color:#684c60}.ln-gallery .ln-equipment-album summary{font-size:23px}.ln-equipment-album>.ln-photo-gallery{max-width:600px}.ln-gallery .ln-project-cta{margin-top:50px}
@media(min-width:1600px){.ln-editorial-hero,.ln-wedding-hero{padding-inline:7%}.ln-content-section{padding-inline:7%}.ln-category-tiles{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1150px){.ln-pack-grid{gap:14px}.ln-pack-body{padding:20px 17px}.ln-pack-visual img{height:160px}.ln-category-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.ln-catalogue-heading{grid-template-columns:1fr}.ln-catalogue-help{display:none}.ln-wedding-cover img{height:530px}.ln-wedding-hero{gap:4%}.ln-wedding-intro h1{font-size:45px}.ln-wedding-intro .ln-actions{gap:13px}.ln-wedding-photos img,.ln-gallery-grid img{height:210px}}
@media(max-width:900px){.ln-editorial-hero,.ln-wedding-hero{grid-template-columns:1fr;padding-top:55px;gap:30px}.ln-editorial-hero figure img{height:310px}.ln-wedding-cover img{height:430px;object-position:center 40%}.ln-wedding-intro{max-width:640px}.ln-wedding-intro h1{font-size:52px}.ln-split{gap:30px}.ln-section-heading{align-items:flex-start;flex-direction:column;gap:15px}.ln-section-heading>p{max-width:620px}.ln-pack-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ln-wedding-inquiry{gap:30px}.ln-steps{gap:20px}.ln-wedding-photos,.ln-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ln-editorial-hero,.ln-wedding-hero{padding:75px 22px 35px}.ln-wedding-intro h1{font-size:43px}.ln-wedding-cover img{height:380px}.ln-location h1{font-size:40px}.ln-content-section{padding:45px 22px}.ln-benefit-strip{padding:20px 22px;display:grid;gap:10px}.ln-split,.ln-wedding-inquiry{grid-template-columns:1fr}.ln-steps{grid-template-columns:1fr;gap:15px}.ln-steps>li{padding-top:18px}.ln-steps>li>span{margin-bottom:10px}.ln-steps p{margin-bottom:8px}.ln-pack-grid{grid-template-columns:1fr}.ln-pack-visual img{height:220px}.ln-pack-body{padding:25px}.ln-pack-body h3{font-size:32px}.ln-category-tiles{gap:12px}.ln-category-tile{min-height:170px}.ln-category-tile img{height:180px}.ln-category-tile>div{padding:16px}.ln-category-tile h3{font-size:21px}.ln-category-tile .ln-tile-arrow{display:none}.ln-wedding-photos,.ln-gallery-grid{gap:10px}.ln-wedding-photos img,.ln-gallery-grid img{height:185px}.ln-wedding-inquiry{padding:40px 22px}.ln-inquiry-form{padding:23px}.ln-page-nav{gap:13px 20px;justify-content:flex-start;padding:18px 22px}.ln-included{grid-template-columns:1fr}.ln-gallery{padding:70px 22px 40px}.ln-story-photo img{height:280px}.ln-product-detail>div:last-child{padding-top:0}.ln-search{padding:16px}.ln-product-image{height:260px}.ln-detail-image{padding:20px}.ln-detail-image img{height:290px}.ln-gallery .ln-photo-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.ln-category-tile img,.ln-gallery-grid img,.ln-wedding-photos img,.ln-button,.ln-product-card{transition:none}.ln-category-tile:hover img,.ln-gallery-grid a:hover img,.ln-wedding-photos a:hover img,.ln-product-card:hover{transform:none}}
