/*
Theme Name: Les Voice
Theme URI: https://lesvoice.com/
Author: Les Voice
Description: Magazine-style news theme for Les Voice. Black ink on light grey and white, the pink-to-violet soundwave from the logo as the only divider and accent; lowercase section titles; photos in colour; sections menu and trending tags bar; no comments; SEO/GEO ready; FIFU and CyberSEO friendly; built for speed.
Version: 1.0.2
Requires at least: 6.6
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: lesvoice
Tags: news, blog, block-patterns, full-site-editing, editor-style
*/

:root{--pearl:#F5F5F7;--desk:#E6E6E6;--carbon:#0F0F10;--carbon2:#1E1E21;--pink:#FF3887;--violet:#A044FF;--grad:linear-gradient(135deg,#FF3887 0%,#A044FF 100%);--gradv:linear-gradient(180deg,#FF3887 0%,#A044FF 100%);--accent:#C7177A;--muted:#4B4B52;--muted-d:#C4C4CC;--paper:#FFFFFF;--tile:#F3F3F5;--chip:#E9E9EE;--sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--serif:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--display:"Outfit","Inter",system-ui,sans-serif;--pad:48px}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--desk);color:var(--carbon);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto}
a{color:var(--carbon);text-decoration:none}
a:hover{color:var(--accent)}
:focus-visible{outline:3px solid var(--violet);outline-offset:2px}
.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}
.skip-link:focus{position:fixed!important;top:8px;left:8px;width:auto;height:auto;clip:auto;z-index:1000;background:var(--grad);color:#000;padding:10px 16px;font-weight:700}
.lv-wrap{max-width:1320px;margin:0 auto;padding:0 24px}

/* ---------- Dark site background (Tools › Les Voice › Settings) ---------- */
body.lv-bg-dark{--desk:#0B0B0B;background:#0B0B0B}
.lv-bg-dark .lv-sheet{box-shadow:0 2px 4px rgba(0,0,0,.5),0 20px 44px rgba(0,0,0,.55)}
.lv-bg-dark .lv-head{box-shadow:0 6px 18px rgba(0,0,0,.35)}

/* ---------- Header ---------- */
.lv-sticky{position:relative;z-index:50}
.lv-head{background:var(--paper);box-shadow:0 6px 18px rgba(15,15,16,.06)}
.lv-bar{background:var(--carbon);position:relative}
.lv-bar-in{display:flex;align-items:center;flex-wrap:wrap;gap:4px;min-height:40px}
.lv-bar-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted-d);margin-right:4px}
.lv-bar a.lv-bar-link,.lv-dd>summary{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 12px;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--pearl);cursor:pointer;list-style:none}
.lv-dd>summary::-webkit-details-marker,.lv-search>summary::-webkit-details-marker{display:none}
.lv-dd>summary::after{content:"";width:6px;height:6px;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:translateY(-2px) rotate(45deg)}
.lv-dd[open]>summary{background:var(--pearl);color:var(--carbon)}
.lv-dd[open]>summary::after{transform:translateY(1px) rotate(225deg)}
.lv-bar a.lv-bar-link:hover,.lv-dd>summary:hover{color:#FF7AAE}
.lv-dd[open]>summary:hover{color:var(--accent)}
.lv-bar [aria-current],.lv-dd>summary.is-current{color:#fff}
.lv-dd-panel{position:absolute;left:0;right:0;top:100%;background:var(--carbon);padding:18px 0 22px;box-shadow:0 12px 24px rgba(0,0,0,.18);z-index:5}
.lv-dd-panel .lv-k{color:var(--muted-d)}
.lv-dd-links{display:flex;flex-wrap:wrap;gap:8px}
.lv-dd-links a{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;background:#2E2E2E;color:#fff;font-size:13px;font-weight:700}
.lv-dd-links a.is-all{background:var(--grad);color:#000}
.lv-dd-links a:hover,.lv-dd-links a[aria-current]{background:var(--pearl);color:var(--carbon)}
.lv-date{margin-left:auto;margin-right:16px;font-size:12px;font-weight:500;color:var(--muted-d)}
.lv-search>summary{display:inline-flex;align-items:center;min-height:40px;padding:0 18px;background:var(--grad);color:#000;font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;list-style:none}
.lv-search>summary:hover,.lv-search[open]>summary{background:var(--pearl);color:var(--carbon)}
.lv-search-form{display:flex;gap:8px}
.lv-search-form input{flex:1;min-width:0;height:48px;border:0;padding:0 16px;font:16px var(--sans);background:var(--pearl);color:var(--carbon)}
.lv-search-form button{height:48px;padding:0 24px;border:0;background:var(--grad);color:#000;font:700 13px var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.lv-search-form.is-inline{max-width:640px;margin-top:20px;padding:0}
.lv-search-form.is-inline input{background:var(--pearl)}
.lv-mast{display:flex;align-items:flex-end;gap:32px;padding-top:22px;padding-bottom:26px}
.lv-logo,.custom-logo-link{display:block;flex-shrink:0}
.lv-logo img,.custom-logo{display:block;height:56px;width:auto}
.lv-navline{position:relative;flex:1 1 auto;min-width:0;height:64px;display:flex;align-items:flex-end}
.lv-navline .lv-frule{position:absolute;inset:0;margin:0;height:auto}
.lv-topics{position:relative;z-index:1;display:flex;gap:26px;overflow-x:auto;white-space:nowrap;scrollbar-width:none;margin-right:48px;padding:0 12px 12px 0}
.lv-topics::-webkit-scrollbar{display:none}
.lv-topics a{font-size:15px;font-weight:800;letter-spacing:-.015em;color:var(--carbon)}
.lv-topics a:hover,.lv-topics a[aria-current]{color:var(--accent)}

/* ---------- The brand line (thick ink line broken by the logo soundwave) ---------- */
.lv-frule{display:flex;align-items:flex-end;gap:2px;height:64px;margin-bottom:48px;color:var(--carbon);pointer-events:none}
.lv-frule i{display:block;height:3px;background:currentColor;flex:1 1 auto}
.lv-frule i.e{flex:0 0 20px}
.lv-sky{display:inline-block;width:40px;height:40px;margin:0 6px -18.5px;flex:0 0 auto;background:url(assets/img/wave.svg) center/contain no-repeat}
.is-dark .lv-frule,.lv-foot .lv-frule{color:var(--pearl)}


/* ---------- Sheets & running heads ---------- */
.lv-desk{padding:40px 24px 24px}
.lv-sheet{position:relative;max-width:1320px;margin:0 auto 40px;background:var(--paper);padding:28px var(--pad) 64px;box-shadow:0 1px 2px rgba(15,15,16,.06),0 16px 36px rgba(15,15,16,.06)}
.lv-sheet.is-dark{background:var(--carbon);color:var(--pearl)}
.is-dark a{color:var(--pearl)}
.is-dark a:hover{color:#FF7AAE}
.lv-rh{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;font-size:11px;line-height:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;position:relative;z-index:1;margin:24px 0 -53px;padding-right:86px}
.lv-rh a{color:var(--muted)}
.lv-rh a.sl{color:var(--carbon);font-weight:700}
.is-dark .lv-rh a{color:var(--muted-d)}
.is-dark .lv-rh a.sl{color:var(--pearl)}
.lv-rh-mid{overflow:hidden;text-overflow:ellipsis}
.lv-crumbs{font-size:12px;color:var(--muted);margin:-20px 0 28px}
.lv-crumbs a{color:var(--muted)}
.is-dark .lv-crumbs,.is-dark .lv-crumbs a{color:var(--muted-d)}

/* ---------- Type ---------- */
.lv-ttl{position:relative;z-index:0;display:inline-block;max-width:100%;overflow-wrap:break-word;margin:18px 0 40px;font-size:72px;line-height:.88;font-weight:800;letter-spacing:-.05em;color:inherit}
.lv-ttl::before{content:"";position:absolute;z-index:-1;left:-22px;top:-18px;width:1.25em;height:1.05em;background:var(--grad)}
.lv-ttl.is-r::before{left:auto;right:-22px}
.lv-ttl.is-plain::before{display:none}
.lv-ttl.is-sm{font-size:52px;margin-bottom:28px}
.lv-ttl.is-md{font-size:60px;margin-bottom:36px}
.lv-ttl.is-xl{font-size:104px;margin-top:24px}
.lv-ttl.is-page{font-size:80px;margin:28px 0 44px}
.lv-ttl.is-vertical{writing-mode:vertical-rl;transform:rotate(180deg);font-size:88px;margin:0}
.lv-ttl.is-vertical::before{left:auto;right:-18px;top:auto;bottom:-22px;width:1.05em;height:1.25em}
.lv-phrase{margin:0;font-family:var(--serif);font-style:italic;font-size:40px;line-height:1.15;color:var(--accent);text-wrap:balance}
.is-dark .lv-phrase{color:#D4D4DA}
.lv-phrase.is-right{text-align:right;max-width:760px}
.lv-k{display:block;margin:0 0 8px;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
.lv-k.is-ink{color:var(--carbon)}
.is-dark .lv-k,.lv-k.is-light{color:#FF7AAE}
.lv-red .lv-k{color:#000}
.lv-hl,.lv-hm,.lv-hs{margin:0;text-wrap:balance}
.lv-hl{font-size:46px;line-height:1.03;font-weight:800;letter-spacing:-.035em}
.lv-hl.is-md{font-size:38px}
.lv-hm{font-size:22px;line-height:1.18;font-weight:700;letter-spacing:-.02em}
.lv-hm.is-lg{font-size:28px}
.lv-hs{font-size:17px;line-height:1.3;font-weight:700;letter-spacing:-.01em}
.lv-dek,.lv-intro{margin:14px 0 0;font-family:var(--serif);font-size:18px;line-height:1.5;color:#3A3A40}
.is-dark .lv-dek,.is-dark .lv-intro{color:#D4D4DA}
.lv-intro{font-size:19px;margin:0 0 20px}
.lv-meta{display:block;margin:8px 0 0;font-size:12px;color:var(--muted)}
.is-dark .lv-meta{color:var(--muted-d)}
.lv-h2{margin:0 0 8px;font-size:44px;font-weight:600;letter-spacing:-.03em}
.lv-empty{margin:0;padding:22px;background:var(--tile);font-size:14px;color:var(--muted)}
.is-dark .lv-empty{background:#262626;color:var(--muted-d)}

/* ---------- Photos (colour) ---------- */
.lv-ph{display:block;overflow:hidden;background:#D9D9DE;position:relative}
.is-dark .lv-ph{background:#38383D}
.lv-ph img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
/* Small photos: shown whole, sitting on the bottom of their box; the box takes the section's own colour. */
.lv-ph.is-low,.is-dark .lv-ph.is-low,.lv-red .lv-ph.is-low{background:transparent}
.lv-ph.is-low img{width:100%;height:100%;object-fit:contain;object-position:50% 100%;margin:0}
/* Photos in full colour; on hover the photo eases in slightly (small photos shown whole stay still). */
.lv-card:hover .lv-ph:not(.is-low) img,a.lv-ph:not(.is-low):hover img,.lv-row:hover .lv-ph:not(.is-low) img{transform:scale(1.05)}
@media (prefers-reduced-motion:reduce){.lv-ph img{transition:none}.lv-card:hover .lv-ph img,a.lv-ph:hover img,.lv-row:hover .lv-ph img{transform:none}}
.lv-card .lv-ph{margin-bottom:14px}
.lv-rb{position:relative;display:block}
.lv-rb::before{content:"";position:absolute;z-index:0;left:-24px;bottom:-24px;width:46%;height:58%;background:var(--grad)}
.lv-rb.is-rt::before{left:auto;right:-24px;bottom:auto;top:-24px}
.lv-rb>.lv-ph{position:relative;z-index:1}

/* ---------- Grids & lists ---------- */
.lv-g{display:grid;gap:32px}
.lv-g.c2{grid-template-columns:repeat(2,minmax(0,1fr))}
.lv-g.c3{grid-template-columns:repeat(3,minmax(0,1fr))}
.lv-g.c4{grid-template-columns:repeat(4,minmax(0,1fr))}
.lv-g.c57{grid-template-columns:minmax(0,5fr) minmax(0,7fr)}
.lv-g.c75{grid-template-columns:minmax(0,7fr) minmax(0,5fr)}
.lv-g.is-tight{gap:12px}
.lv-list{display:flex;flex-direction:column;gap:22px}
.lv-list.is-tight{gap:12px}
.lv-link{font-size:14px;line-height:1.35;font-weight:500}
.is-dark .lv-link{color:#D4D4DA}
.lv-item>*:last-child{margin-bottom:0}
.lv-chips{display:flex;flex-wrap:wrap;gap:8px}
.lv-chip{display:inline-flex;align-items:center;min-height:38px;padding:0 16px;background:var(--chip);font-size:13px;font-weight:700;color:var(--carbon)}
.lv-chip:hover{background:var(--carbon);color:var(--pearl)}
.is-dark .lv-chip{background:#2E2E2E;color:var(--pearl)}
.is-dark .lv-chip:hover{background:var(--grad);color:#000}
.lv-btn{display:inline-flex;align-items:center;min-height:52px;padding:0 32px;border:0;border-radius:999px;background:var(--grad);color:#000;font:700 15px var(--sans);cursor:pointer}
.lv-btn:hover{background:var(--carbon);color:var(--pearl)}
.lv-center{text-align:center;margin:56px 0 0}
.lv-more{display:inline-block;margin-top:18px;font-size:13px;font-weight:700;color:var(--accent)}
.is-dark .lv-more{color:var(--pearl)}
.lv-red{background:var(--gradv);color:#000}
.lv-red a{color:#000}
.lv-red a:hover{color:#000;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.lv-red .lv-ttl{color:var(--carbon)}
.lv-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;align-items:center}
.lv-row .lv-k{margin-bottom:4px}
.lv-rows{gap:12px 24px}
.lv-rows .lv-row{background:var(--tile);padding:14px}

/* ---------- Home sections ---------- */
.lv-front{gap:64px;align-items:start}
.lv-front-text{padding-top:18px}
.lv-front .lv-list{margin-top:36px}
.lv-front-media .lv-rb{margin-left:24px}
.lv-front-pair{gap:16px;margin-top:40px}
.lv-front-pair .lv-card .lv-ph{margin-bottom:0}
.lv-front-pair .lv-card .lv-hs,.lv-front-pair .lv-card .lv-k{display:none}
.lv-front-phrase{display:flex;flex-direction:column;justify-content:flex-end}
.lv-front-phrase .lv-phrase{font-size:34px}
.lv-toc{display:flex;flex-wrap:wrap;align-items:center;gap:16px;margin-top:56px}
.lv-toc .lv-k{margin:0}
.lv-toc nav{display:flex;flex-wrap:wrap;gap:8px}
.lv-toc nav a{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;background:var(--carbon);color:var(--pearl);font-size:13px;font-weight:700}
.lv-toc nav a:hover{background:var(--grad);color:#000}
.lv-sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:48px}
.lv-sec-head .lv-ttl{margin-bottom:0}
.lv-col{min-width:0}
.lv-col-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:14px}
.lv-col-head span{font-size:24px;font-weight:800;letter-spacing:-.03em}
.lv-col-head small{font-size:12px;color:var(--muted-d);text-align:right}
.lv-col .lv-list{margin-top:16px}
.lv-feature{display:flex;gap:48px}
.lv-vt-wrap{flex:none;display:flex;align-items:flex-start;padding-top:20px}
.lv-feature-main{flex:1;min-width:0}
.lv-feature .lv-chips{margin-bottom:32px}
.lv-feature .lv-g.c75{gap:48px}
.lv-feature .lv-rb{margin-bottom:22px}
.lv-feature .lv-phrase{font-size:34px;margin-top:12px}
.lv-sheet.is-split{padding-bottom:0}
.lv-split{gap:0;margin:0 calc(-1 * var(--pad))}
.lv-split>div{min-width:0;padding:18px var(--pad) 64px}
.lv-split-lead{display:grid;grid-template-columns:minmax(0,1fr) 170px;gap:24px;align-items:end;margin-bottom:32px}
.lv-split-b .lv-g{margin-bottom:22px}
.lv-split-b .lv-item{margin-bottom:22px}
.lv-wide{gap:56px;align-items:end}
.lv-wide .lv-ttl{margin-bottom:32px}
.lv-wide-row{margin-top:56px}
.lv-trio{gap:48px}
.lv-trio .lv-ttl{margin-top:18px}
.lv-pair{gap:64px}
.lv-pair .lv-ttl{margin-top:18px}
.lv-list a.lv-tile{border-radius:12px;display:grid;grid-template-columns:130px minmax(0,1fr);gap:16px;align-items:baseline;padding:16px 18px;background:var(--carbon);color:var(--pearl)}
.lv-list a.lv-tile:hover{background:var(--grad);color:#000}
.lv-tile-name{font-size:18px;font-weight:800;letter-spacing:-.02em}
.lv-tile-text{font-size:15px;line-height:1.35;font-weight:500}
.lv-tile-text.is-muted{color:var(--muted-d)}
.is-tiles{gap:8px}

/* ---------- Archives ---------- */
.lv-arch-title{align-items:end}
.lv-arch-title .lv-ttl{margin-bottom:0}
.lv-arch-lead{margin-top:56px;gap:48px}
.lv-arch-lead-main{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
.lv-arch-sec+.lv-arch-sec{margin-top:56px}
.lv-arch-sec-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 16px;margin-bottom:24px}
.lv-arch-sec-head .lv-ttl{margin:18px 0 0}
.lv-arch-sec-head .lv-more{margin:0}
.lv-pages{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:40px}
.lv-pages a,.lv-pages span{display:inline-flex;align-items:center;min-height:44px;min-width:44px;justify-content:center;padding:0 14px;background:var(--chip);font-weight:700;font-size:14px}
.lv-pages .current{background:var(--carbon);color:var(--pearl)}
.lv-pages a:hover{background:var(--grad);color:#000}

/* ---------- Story ---------- */
.lv-story-grid{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:56px}
.lv-story-title{margin:0;font-size:54px;line-height:1.03;font-weight:800;letter-spacing:-.035em;text-wrap:balance}
.lv-standfirst{margin:18px 0 0;font-family:var(--serif);font-size:21px;line-height:1.5;color:#3A3A40}
.lv-story-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:26px 0 32px;padding:14px 18px;background:var(--tile)}
.lv-byline{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}
.lv-byline strong{color:var(--carbon)}
.lv-share{display:flex;flex-wrap:wrap;gap:6px;margin:0}
.lv-share a{display:inline-flex;align-items:center;min-height:36px;padding:0 12px;background:var(--chip);font-size:12px;font-weight:700}
.lv-share a:hover{background:var(--carbon);color:var(--pearl)}
.lv-story-aside{min-width:0;display:flex;flex-direction:column;gap:36px}
.lv-story-aside .lv-side{position:sticky;top:24px}
.admin-bar .lv-story-aside .lv-side{top:56px}
.lv-story-fig{margin:0}
.lv-story-fig img{display:block;width:auto;max-width:100%;height:auto;margin:0 auto}
.lv-story-fig figcaption{margin-top:10px;font-size:12px;line-height:1.45;color:var(--muted)}
.lv-filed{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:36px}
.lv-filed .lv-k{margin:0}
.lv-body{font-family:var(--serif);font-size:19px;line-height:1.65;color:#26262B;max-width:700px}
.lv-body>*{margin:0 0 1.1em}
.lv-body h2,.lv-body h3,.lv-body h4{font-family:var(--sans);color:var(--carbon);letter-spacing:-.015em;margin:1.6em 0 .55em;line-height:1.25}
.lv-body h2{font-size:24px;font-weight:700}
.lv-body h3{font-size:20px;font-weight:700}
.lv-body ul,.lv-body ol{padding-left:1.2em}
.lv-body li{margin:.35em 0}
.lv-body a{color:var(--accent);font-weight:600}
.lv-body a:hover{color:var(--carbon)}
.lv-body blockquote{margin:1.4em 0;padding:0;font-style:italic;font-size:24px;line-height:1.4;color:var(--carbon)}
.lv-body figure{margin:1.4em 0}
.lv-body img{display:block;width:auto;max-width:100%;height:auto;max-height:640px;object-fit:contain;margin:0 auto}
.lv-body figure,.lv-body .wp-block-image,.lv-body .alignwide,.lv-body .alignfull{max-width:100%;width:auto;margin-left:0;margin-right:0}
.lv-body .wp-block-image img,.lv-body figure img{height:auto!important}
.lv-body iframe,.lv-body video,.lv-body embed{display:block;max-width:100%}
.lv-body .wp-block-embed__wrapper iframe{width:100%;aspect-ratio:16/9;height:auto}
.lv-body figcaption{font-family:var(--sans);font-size:12px;color:var(--muted);margin-top:8px}
.lv-body table{width:100%;border-collapse:collapse;font-family:var(--sans);font-size:15px}
.lv-body th,.lv-body td{padding:10px 12px;background:var(--tile);text-align:left}
.lv-body tr:nth-child(even) td{background:var(--paper)}
.lv-facts{background:var(--carbon);color:var(--pearl);padding:22px 26px 12px;margin:0 0 32px;font-family:var(--sans)}
.lv-facts h2,.lv-facts h3{margin:0 0 12px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--pearl)}
.lv-facts ul{margin:0;padding-left:1.1em}
.lv-facts li{font-size:16px;line-height:1.45;margin:0 0 10px}
.lv-facts a{color:#fff}

/* ---------- Pages ---------- */
.lv-page-body{max-width:760px}
.lv-page.is-wide .lv-page-body{max-width:none}
.lv-page-body>p:first-child strong{display:block;font-family:var(--sans);font-size:40px;line-height:1.05;font-weight:800;letter-spacing:-.035em;color:var(--carbon);margin-bottom:.2em}
.lv-legal{display:flex;flex-wrap:wrap;gap:56px;align-items:flex-start}
.lv-legal-nav{flex:1 1 240px;max-width:300px;display:flex;flex-direction:column;gap:8px;position:sticky;top:calc(var(--wp-admin--admin-bar--height,0px) + 24px)}
.lv-legal-nav a{display:block;min-height:48px;padding:13px 16px;background:#ECECF0;font-weight:600;font-size:15px}
.lv-legal-nav a[aria-current]{background:var(--carbon);color:var(--pearl)}
.lv-legal-main{flex:999 1 560px;min-width:0;max-width:760px}
.lv-legal-main .lv-ttl{margin-top:18px;font-size:64px}

/* ---------- Forms ---------- */
.lv-form{display:flex;flex-direction:column;gap:20px;max-width:760px;font-family:var(--sans)}
.lv-form p{margin:0}
.lv-form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.lv-fld{display:flex;flex-direction:column;gap:6px}
.lv-fld label{font-size:13px;font-weight:700}
.lv-fld input,.lv-fld select,.lv-fld textarea{font:16px var(--sans);color:var(--carbon);background:#ECECF0;border:0;padding:12px 14px;min-height:48px;width:100%}
.lv-fld textarea{min-height:200px;resize:vertical}
.lv-fld input:focus,.lv-fld select:focus,.lv-fld textarea:focus{outline:3px solid var(--violet);outline-offset:0}
.lv-check{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45}
.lv-check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--violet);flex:none}
.lv-check a{color:var(--accent);font-weight:600}
.lv-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.lv-form-done{padding:32px;background:var(--carbon);color:var(--pearl);font-family:var(--sans)}
.lv-form-done h2{margin:0 0 10px;font-size:32px;font-weight:600}
.lv-form-err{padding:14px 18px;background:var(--grad);color:#000;font-weight:600}

/* ---------- Footer ---------- */
.lv-foot{background:var(--carbon);color:var(--pearl);padding:48px 0 32px}
.lv-foot .lv-frule{margin-bottom:44px}
.lv-foot-cols{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px}
.lv-foot-col{display:flex;flex-direction:column;gap:10px;font-size:14px}
.lv-foot-col a{color:#D4D4DA}
.lv-foot-col a:hover{color:#FF7AAE}
.lv-foot-col p{margin:0;font-family:var(--serif);font-size:15px;line-height:1.55;color:#D4D4DA}
.lv-foot-logo{width:160px;height:auto;margin-bottom:8px}
.lv-foot-col p.lv-foot-h{margin:0 0 6px;font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.lv-foot-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin:52px 0 0;padding:16px 20px;background:var(--carbon2);font-size:12px;color:var(--muted-d)}

/* ---------- Responsive ---------- */
@media (max-width:1000px){
	.lv-g.c4,.lv-g.c3{grid-template-columns:repeat(2,minmax(0,1fr))}
	.lv-hl{font-size:36px}.lv-ttl{font-size:56px}.lv-ttl.is-xl{font-size:80px}.lv-ttl.is-page{font-size:60px}
	.lv-phrase{font-size:32px}
	.lv-story-grid{grid-template-columns:minmax(0,1fr);gap:36px}
	.lv-story-aside .lv-side{position:static}
	.lv-foot-cols{grid-template-columns:repeat(2,minmax(0,1fr))}
	.lv-date{display:none}
	.lv-search{margin-left:auto}
}
@media (max-width:760px){
	:root{--pad:20px}
	.lv-desk{padding:20px 12px 12px}
	.lv-sheet{padding:20px var(--pad) 40px}
	.lv-g.c2,.lv-g.c57,.lv-g.c75,.lv-arch-lead-main,.lv-form-row{grid-template-columns:minmax(0,1fr)}
	.lv-vt-wrap{display:none}
	.lv-feature{display:block}
	.lv-rb::before{left:-12px;bottom:-12px}.lv-rb.is-rt::before{right:-12px;top:-12px}
	.lv-front-media .lv-rb{margin-left:12px}
	.lv-split>div{padding:18px var(--pad) 40px}
	.lv-split-lead{grid-template-columns:minmax(0,1fr) 120px}
	.lv-mast{gap:16px;padding-top:14px;padding-bottom:12px}
	.lv-logo img,.custom-logo{height:40px}
	.lv-navline{height:48px}
	.lv-story-title{font-size:34px}
	.lv-body{font-size:18px}
	.lv-list a.lv-tile{grid-template-columns:100px minmax(0,1fr)}
	.lv-legal-nav{position:static;max-width:none}
}
@media (max-width:560px){
	.lv-g.c3,.lv-g.c4,.lv-foot-cols{grid-template-columns:minmax(0,1fr)}
	.lv-hl{font-size:30px}.lv-ttl{font-size:44px}.lv-ttl.is-xl,.lv-ttl.is-page,.lv-ttl.is-md{font-size:48px}.lv-ttl.is-sm{font-size:34px}.lv-ttl::before{left:-12px;top:-10px}.lv-legal-main .lv-ttl{font-size:44px}
	.lv-phrase,.lv-front-phrase .lv-phrase{font-size:26px}
	.lv-rh>.lv-rh-mid{display:none}
	.lv-bar-label{display:none}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
html{scroll-padding-top:16px}

/* About us + Contact (design: About.dc / Contact.dc) */
.lv-pg-h1{margin:0;font-size:76px;line-height:.98;font-weight:500;letter-spacing:-.035em;text-wrap:balance}
.lv-pg-h1.is-xl{font-size:80px}
.lv-pg-h2{margin:0 0 18px;font-size:32px;line-height:1;font-weight:500;letter-spacing:-.02em}
.lv-pg-h2.is-lg{font-size:44px;letter-spacing:-.025em;margin-bottom:28px}
.lv-pg-ser{font-family:var(--serif);font-size:19px;line-height:1.65;color:#26262B}
.lv-pg-ser p{margin:0 0 1em}
.lv-pg-ser.is-sm{margin:0;font-size:17px}
.is-dark .lv-pg-ser{color:#D4D4DA}
.lv-about-lead .lv-pg-ser{margin-top:28px}
.lv-about-lead{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:start}
.lv-about-fig{margin:0;aspect-ratio:4/5;overflow:hidden;background:#D9D9DE}
.lv-about-fig img{display:block;width:100%;height:100%;object-fit:cover}
.lv-about-c2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px}
.lv-about-c3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.lv-pg-list{display:flex;flex-direction:column;gap:8px}
.lv-pg-list a{display:block;padding:12px 16px;background:var(--tile);font-size:15px;font-weight:500;color:var(--carbon)}
.lv-pg-list a:hover{background:var(--carbon);color:var(--pearl)}
.lv-pg-card{background:#262626;padding:22px 24px}
.lv-pg-card .lv-k,.lv-pg-way .lv-k{color:var(--pearl);margin-bottom:10px}
.lv-about-cta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-top:44px}
.lv-about-cta p{margin:0;font-size:17px;line-height:1.5}
.lv-pg-btns{display:flex;gap:10px;flex-wrap:wrap}
.lv-pg-btns .lv-btn{min-height:46px;padding:0 22px;font-weight:600;font-size:14px}
.is-dark a.lv-btn{color:#000}
.is-dark a.lv-btn.is-light,a.lv-btn.is-light{background:var(--pearl);color:var(--carbon)}
.is-dark a.lv-btn:hover{background:#fff;color:var(--carbon)}
.lv-contact-wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start}
.lv-contact-wrap>div:first-child>.lv-pg-ser{margin:24px 0 32px;font-size:18px;line-height:1.6}
.lv-pg-ways{display:flex;flex-direction:column;gap:10px}
.lv-pg-way{padding:18px 20px;background:var(--carbon);color:var(--pearl)}
.lv-pg-way p:last-child{margin:0;font-size:15px;line-height:1.5}
.lv-contact .lv-form{max-width:none}
.lv-contact .lv-fld input,.lv-contact .lv-fld select,.lv-contact .lv-fld textarea{background:var(--chip)}
@media (max-width:900px){.lv-about-lead,.lv-about-c2,.lv-contact-wrap{grid-template-columns:minmax(0,1fr);gap:32px}.lv-about-c3{grid-template-columns:minmax(0,1fr)}.lv-about-fig{aspect-ratio:16/10}}
@media (max-width:760px){.lv-pg-h1{font-size:48px}.lv-pg-h1.is-xl{font-size:52px}.lv-pg-h2.is-lg{font-size:34px}}

.lv-pr-note{margin-top:32px;padding:14px 18px;background:var(--tile);font-family:var(--sans);font-size:14px;line-height:1.5;color:var(--muted)}
.lv-pr-note a{color:var(--accent);font-weight:600}



/* ---------- Les Voice: display face + gradient touches ---------- */
.lv-ttl,.lv-hl,.lv-hm,.lv-hs,.lv-story-title,.lv-topics a,.lv-col-head span,.lv-tile-name,.lv-pg-h1,.lv-pg-h2,.lv-h2,.lv-body h2,.lv-body h3,.lv-body h4,.lv-page-body>p:first-child strong,.lv-rm .rm-group h2,.lv-form-done h2{font-family:var(--display)}
.lv-ttl{font-weight:700;letter-spacing:-.035em}
.lv-hl,.lv-story-title{font-weight:700;letter-spacing:-.025em}
.lv-hm,.lv-hs{font-weight:600;letter-spacing:-.01em}
.lv-topics a{font-weight:600;font-size:16px;letter-spacing:0}
.lv-phrase{font-family:var(--display);font-style:normal;font-weight:300;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.08em}
.is-dark .lv-phrase{background:linear-gradient(135deg,#FF7AAE,#C79BFF);-webkit-background-clip:text;background-clip:text;color:transparent}
.lv-ttl::before{border-radius:0 0 18px 0}
.lv-ttl.is-r::before{border-radius:0 0 0 18px}
.lv-search>summary,.lv-toc nav a,.lv-chip,.lv-share a,.lv-pages a,.lv-pages span,.lv-dd-links a{border-radius:999px}
.lv-search>summary{margin-left:6px;min-height:32px}
.lv-bar-in>.lv-search{display:flex;align-items:center}
.lv-ph,.lv-about-fig{border-radius:14px}
.lv-row .lv-ph{border-radius:10px}
.lv-rb::before{border-radius:18px}
.lv-sheet{border-radius:22px}
.lv-split>.lv-split-b{border-radius:0 0 22px 0}
.lv-foot-bottom{border-radius:12px}
.lv-bar-tag{display:inline-flex;align-items:center;min-height:40px;padding:0 10px;font-size:12px;font-weight:600;color:var(--pearl)}
.lv-bar-tag::before{content:"#";color:#FF7AAE;margin-right:1px}
.lv-bar-tag:hover{color:#FF7AAE}
.lv-bar-tags{display:flex;align-items:center;min-width:0;overflow-x:auto;white-space:nowrap;scrollbar-width:none;flex:1 1 auto}
.lv-bar-tags::-webkit-scrollbar{display:none}
.lv-head::after{content:"";display:block;height:4px;background:var(--grad)}
@media (max-width:1000px){.lv-bar-tags{flex:1 1 0}}
@media (max-width:560px){.lv-split>.lv-split-b{border-radius:0 0 22px 22px}}
@media (max-width:760px){.lv-navline .lv-sky,.lv-navline .lv-frule i.e{display:none}.lv-topics{margin-right:0}}
@media (max-width:560px){.lv-mast{flex-wrap:wrap;gap:6px}.lv-navline{flex-basis:100%;height:44px}.lv-topics{gap:22px}}
