/* robertmtk.ro — sales letter: dark VSL hero, then a long cream "letter" column with CTA after every section */
@font-face{font-family:"Oswald";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/oswald-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Oswald";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/oswald-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/inter-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/inter-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/inter-latin-700-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/inter-latin-ext-700-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

:root{
  /* Minimal: alb + negru, mov închis doar pe butoane și detalii */
  --bg:#FFFFFF;
  --bg-soft:#F7F6F9;
  --ink:#111014;
  --ink-soft:#5E5A66;
  --line:#E7E4EC;
  --purple:#3B0F6E;        /* butoane, accente */
  --purple-hover:#4E1A8D;
  --purple-tint:#EEE7F7;   /* highlight, opțiuni bifate */
  --display:"Oswald","Arial Narrow","Helvetica Neue",Arial,sans-serif;
  --body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color-scheme:light;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-size:1.2rem;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img{max-width:100%;height:auto;display:block}
picture{display:block}
a{color:inherit}
:focus-visible{outline:3px solid var(--purple);outline-offset:3px}
[hidden]{display:none!important}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.wrap{max-width:720px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}

/* ---------- HEADER ---------- */
.topbar{border-bottom:1px solid var(--line)}
.topbar .wrap{display:flex;justify-content:center;padding-block:18px}
.logo{font-family:var(--display);font-weight:700;letter-spacing:.06em;line-height:.95;text-transform:uppercase;font-size:1.5rem;text-decoration:none;display:inline-flex;flex-direction:column;align-items:flex-start;color:var(--ink)}
.logo span:last-child{font-size:.6em;letter-spacing:.34em;color:var(--purple);margin-top:4px}

/* ---------- HERO ---------- */
.hero{background:var(--bg)}
.hero-inner{padding-block:48px 56px;text-align:center}
.eyebrow{font-family:var(--display);font-weight:700;color:var(--purple);font-size:1.1rem;letter-spacing:.16em;text-transform:uppercase;margin:0 0 16px}
.hero h1{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1.9rem,6.4vw,3rem);line-height:1.12;margin:0 auto;max-width:20ch;text-wrap:balance}
.hero h1 em{font-style:normal;color:var(--purple)}
.vsl{margin:40px auto 0;max-width:680px;position:relative;aspect-ratio:16/9;background:#111;border-radius:14px;overflow:hidden}
.vsl iframe,.vsl video{position:absolute;inset:0;width:100%;height:100%;border:0}
.vsl-facade{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;cursor:pointer;background:#111 center/cover no-repeat;display:flex;align-items:center;justify-content:center;color:#fff}
.vsl-facade::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 50%,rgba(0,0,0,.45))}
.vsl-play{position:relative;z-index:1;width:84px;height:84px;border-radius:50%;background:var(--purple);display:grid;place-items:center;transition:transform .15s ease,background .15s ease}
.vsl-facade:hover .vsl-play{transform:scale(1.06);background:var(--purple-hover)}
.vsl-play svg{width:30px;height:30px;fill:#fff;margin-left:4px}
.vsl-meta{position:absolute;left:16px;right:16px;bottom:14px;z-index:1;display:flex;align-items:center;gap:12px;font:600 .95rem/1 var(--body);font-variant-numeric:tabular-nums;color:#fff}
.vsl-meta svg{display:none}
.vsl-meta i{flex:1;height:3px;background:rgba(255,255,255,.4);border-radius:2px}

/* ---------- BUTOANE ---------- */
.cta-block{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:36px}
.cta{display:block;width:100%;max-width:520px;text-align:center;text-decoration:none;color:#fff;background:var(--purple);font:700 clamp(1rem,3.6vw,1.15rem)/1.25 var(--body);letter-spacing:.04em;text-transform:uppercase;padding:20px 24px;border:0;border-radius:12px;transition:background .15s ease,transform .1s ease}
.cta:hover{background:var(--purple-hover)}
.cta:active{transform:translateY(1px)}
.cta-note{font-size:.95rem;color:var(--ink-soft);margin:0;text-align:center}

/* ---------- DOVEZI ---------- */
.proof{border-top:1px solid var(--line)}
.proof .wrap{padding-block:64px 56px}
.proof-intro{text-align:center}
.proof-intro h2{font:700 clamp(2.1rem,7.4vw,3.4rem)/1.05 var(--display);text-transform:uppercase;margin:0;text-wrap:balance}
.proof-intro .punch{font-size:clamp(1.15rem,4vw,1.45rem);line-height:1.4;color:var(--purple);font-weight:700;margin:12px 0 40px}
.bignums{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.bignums div{padding:24px 18px;text-align:center;min-width:0}
.bignums div+div{border-left:1px solid var(--line)}
.bignums b{display:block;font:700 clamp(1.9rem,5vw,2.8rem)/1 var(--display);color:var(--purple);font-variant-numeric:tabular-nums}
.bignums span{display:block;margin-top:10px;font-size:.92rem;line-height:1.35;color:var(--ink-soft)}
@media (max-width:760px){.bignums b{font-size:1.75rem}.bignums{grid-template-columns:1fr 1fr}.bignums div:nth-child(3){border-left:0}.bignums div:nth-child(n+3){border-top:1px solid var(--line)}}

.proof-sec{border-top:1px solid var(--line);content-visibility:auto;contain-intrinsic-size:auto 1400px}
.proof-sec.alt{background:var(--bg-soft)}
.proof-sec .wrap{padding-block:72px}
.proof-sec h2{font:700 clamp(1.9rem,6.6vw,2.9rem)/1.08 var(--display);text-transform:uppercase;margin:0;text-align:center;text-wrap:balance}
.sec-sub{text-align:center;color:var(--ink-soft);margin:12px auto 40px;max-width:52ch}
.sec-text{max-width:620px;margin:20px auto 36px;text-align:center}
.sec-text p{margin:0 0 .8em}
.proof-sec .cta-block{margin-top:44px}

.cases{display:grid;gap:22px}
.case{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);grid-template-areas:"head imgs" "text imgs";gap:6px 32px;border:1px solid var(--line);border-radius:18px;padding:28px;background:var(--bg)}
.case-head{grid-area:head;min-width:0}
.case-imgs{grid-area:imgs;display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;align-items:flex-start;min-width:0}
.case-imgs::-webkit-scrollbar{display:none}
.case-imgs figure{margin:0;flex:none;width:clamp(120px,30%,190px);scroll-snap-align:start}
.case-imgs img{width:100%;height:auto;border-radius:10px;border:1px solid var(--line)}
.case-text{grid-area:text;min-width:0;font-size:1.02rem;color:var(--ink-soft)}
.case-text p{margin:0 0 .7em}
.case-tag{margin:0 0 6px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}
.case h3{font:700 1.8rem/1.05 var(--display);text-transform:uppercase;margin:0 0 14px}
.case-big{font:700 clamp(2rem,6vw,2.6rem)/1 var(--display);color:var(--purple);margin:0}
.case-bigsub{margin:6px 0 16px;font-size:.98rem;color:var(--ink)}
@media (max-width:760px){.case{grid-template-columns:1fr;grid-template-areas:"head" "imgs" "text";padding:22px 18px;gap:14px}.case-imgs figure{width:42%}}

.ads{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ad{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:20px;min-width:0}
.ad-cpa{margin:0;font:700 2rem/1 var(--display);color:var(--purple);font-variant-numeric:tabular-nums}
.ad-cpa span{display:block;margin-top:6px;font:600 .85rem/1.2 var(--body);color:var(--ink-soft)}
.ad-meta{margin:10px 0 0;font-size:.95rem;color:var(--ink-soft);font-variant-numeric:tabular-nums}
.ad-meta b{color:var(--ink)}
@media (max-width:760px){.ads{grid-template-columns:1fr 1fr}.ad{padding:16px}.ad-cpa{font-size:1.6rem}}
.ebook{margin:24px auto 0;max-width:380px;text-align:center}
.ebook img{border-radius:14px;border:1px solid var(--line);margin:0 auto}
.ebook figcaption{margin-top:10px;font-size:.95rem;color:var(--ink-soft)}

.msgs{columns:3 260px;column-gap:12px}
.msgs figure{margin:0 0 12px;break-inside:avoid}
.msgs img{width:100%;border-radius:12px}

.views{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.views figure{margin:0}
.views img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:10px}
@media (max-width:760px){.views{grid-template-columns:repeat(3,1fr);gap:8px}}

.inds{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.inds figure{margin:0;min-width:0}
.inds img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:top;border-radius:10px;border:1px solid var(--line);background:#111}
.inds figcaption{margin-top:6px;font-size:.82rem;line-height:1.25;font-weight:700;text-align:center}
@media (max-width:760px){.inds{grid-template-columns:repeat(3,1fr);gap:10px}}

.ig-band{border-top:1px solid var(--line);background:var(--purple-tint);text-align:center}
.ig-band .wrap{padding-block:56px}
.ig-band h2{font:700 clamp(1.9rem,6.6vw,2.6rem)/1.1 var(--display);text-transform:uppercase;margin:0 0 12px}
.ig-band p{margin:0 auto;max-width:44ch}
.cta.ghost{background:transparent;color:var(--purple);border:2px solid var(--purple)}
.cta.ghost:hover{background:var(--purple);color:#fff}

/* ---------- TEXT ---------- */
.letter{padding-block:64px 24px}
.letter p{margin:0 0 1.2em}
.letter strong{font-weight:700}
.hl{background:var(--purple-tint);padding:1px 3px;border-radius:3px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.letter h2{font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:clamp(1.8rem,6vw,2.5rem);line-height:1.12;margin:80px 0 26px;text-wrap:balance}
.letter ul{margin:0 0 1.4em;padding-left:1.3em}
.letter li{margin:0 0 .6em;padding-left:.3em}
.letter li::marker{color:var(--purple)}
.letter a:not(.cta){color:var(--purple);text-underline-offset:3px}
.section{scroll-margin-top:20px}
.facts{display:grid;grid-template-columns:repeat(3,1fr);margin:8px 0 36px;border-block:1px solid var(--line)}
.facts div{padding:20px 8px;text-align:center}
.facts div+div{border-left:1px solid var(--line)}
.facts b{display:block;font:700 clamp(1.7rem,6vw,2.3rem)/1 var(--display);color:var(--purple);font-variant-numeric:tabular-nums}
.facts span{display:block;margin-top:8px;font-size:.85rem;line-height:1.3;color:var(--ink-soft)}
.steps{list-style:none;padding:0!important;counter-reset:s;display:grid;gap:22px;margin:0 0 1.4em}
.steps li{counter-increment:s;display:grid;grid-template-columns:44px 1fr;gap:16px;padding:0!important;margin:0!important}
.steps li::before{content:counter(s);font:700 1.3rem/44px var(--body);text-align:center;color:#fff;background:var(--purple);height:44px;border-radius:50%}
.steps b{display:block;margin-bottom:2px}
.nolist{list-style:none;padding:0!important}
.nolist li{position:relative;padding-left:30px!important}
.nolist li::before{content:"✕";position:absolute;left:0;top:0;color:var(--purple);font-weight:700}
.faq details{border-bottom:1px solid var(--line);padding:18px 0}
.faq summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:400 1.6rem/1 var(--body);color:var(--purple);flex:none}
.faq details[open] summary::after{content:"–"}
.faq details p{margin:12px 0 0;color:var(--ink-soft)}

/* ---------- PACHETE ---------- */
.offers{background:var(--bg-soft);border-block:1px solid var(--line)}
.wrap.wide{max-width:1080px}
.offers .wrap{padding-block:72px}
.offers h2{font:700 clamp(2rem,7vw,3rem)/1.08 var(--display);text-transform:uppercase;margin:0;text-align:center}
.offers-sub{text-align:center;color:var(--ink-soft);margin:10px auto 40px;max-width:46ch}
.offer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;align-items:stretch}
.offer{position:relative;display:flex;flex-direction:column;background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:28px 24px 24px;min-width:0}
.offer.top{border:2px solid var(--purple)}
.offer-tag{position:absolute;top:-13px;left:24px;margin:0;background:var(--purple);color:#fff;font:700 .78rem/1 var(--body);letter-spacing:.06em;text-transform:uppercase;padding:7px 10px;border-radius:999px}
.offer h3{font:700 1.7rem/1 var(--display);text-transform:uppercase;margin:0 0 10px}
.offer-for{color:var(--ink-soft);font-size:1rem;line-height:1.45;margin:0 0 20px;min-height:2.9em}
.offer-price{font:700 2.8rem/1 var(--display);color:var(--purple);margin:0;font-variant-numeric:tabular-nums}
.offer-price span{font-size:1.1rem;color:var(--ink-soft);margin-left:2px}
.offer-count{font-size:1rem;margin:12px 0 18px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.offer ul{list-style:none;padding:0;margin:0 0 24px;display:grid;gap:10px;font-size:1rem;line-height:1.4}
.offer li{position:relative;padding-left:26px}
.offer li::before{content:"✓";position:absolute;left:0;top:0;color:var(--purple);font-weight:700}
.offer .cta{margin-top:auto;padding:16px 18px;font-size:1rem}
.explain{margin:28px auto 0;max-width:720px;background:var(--bg);border:1px solid var(--line);border-radius:16px;padding:22px 24px;font-size:1.02rem}
.explain p{margin:0 0 .7em}
.explain p:last-child{margin:0}
.explain-title{font-weight:700;color:var(--purple)}

/* ---------- FINAL + FOOTER ---------- */
.final-band{text-align:center;border-top:1px solid var(--line)}
.final-band .wrap{padding-block:72px 64px}
.final-band h2{font:700 clamp(2.2rem,8vw,3.4rem)/1 var(--display);text-transform:uppercase;margin:0 0 20px}
.final-band p{color:var(--ink-soft);margin:0 auto 1em;max-width:44ch}
.final-band .mail{margin-top:28px;font-size:1.05rem}
.final-band .mail a{color:var(--purple);font-weight:700}
.foot{border-top:1px solid var(--line);color:var(--ink-soft);font-size:.85rem;line-height:1.6;padding-block:32px calc(32px + env(safe-area-inset-bottom,0px))}
.foot .wrap{display:grid;gap:12px;text-align:center}
.foot nav{display:flex;gap:18px;justify-content:center;flex-wrap:wrap}
.foot p{margin:0}
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:40;padding:10px max(12px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:rgba(255,255,255,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid var(--line);transform:translateY(110%);transition:transform .25s ease}
.sticky.on{transform:none}
.sticky .cta{max-width:none;padding:15px 14px;font-size:1rem}
@media (min-width:900px){.sticky{display:none}}

/* ---------- FORMULAR ---------- */
.form-page{min-height:100vh;background:var(--bg-soft)}
.form-page .topbar{background:var(--bg)}
.form-head{text-align:center;padding-block:36px 4px}
.form-head .eyebrow{margin:0;color:var(--purple);font-size:1rem}
.form-head h1{font:700 clamp(1.7rem,6vw,2.4rem)/1.15 var(--display);text-transform:uppercase;margin:12px auto;max-width:20ch;text-wrap:balance}
.form-head p{color:var(--ink-soft);font-size:1.05rem;margin:0 auto;max-width:46ch}
.progress{display:flex;gap:6px;max-width:560px;margin:24px auto 0}
.progress i{flex:1;height:4px;background:var(--line);border-radius:2px;transition:background .2s}
.progress i.on{background:var(--purple)}
.card{max-width:560px;margin:20px auto 60px;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:28px clamp(18px,5vw,32px) 30px}
.field{display:grid;gap:8px;margin-bottom:20px}
.field label,.field legend{font-weight:700;font-size:1.02rem}
.field input,.field select,.field textarea{width:100%;font:400 1.06rem/1.3 var(--body);color:var(--ink);background:var(--bg);border:1.5px solid #D9D5E0;border-radius:10px;padding:14px;appearance:none;-webkit-appearance:none}
.field input:focus,.field textarea:focus{border-color:var(--purple);outline:none;box-shadow:0 0 0 3px var(--purple-tint)}
.field .err{display:none;color:#B42318;font-size:.9rem}
.field.invalid input,.field.invalid textarea{border-color:#B42318}
.field.invalid .err{display:block}
fieldset.field{border:0;padding:0;margin:0 0 20px}
.opts{display:grid;gap:10px}
.opt{position:relative}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt span{font-weight:400;display:block;border:1.5px solid #D9D5E0;border-radius:10px;background:var(--bg);padding:14px 16px;font-size:1.04rem;cursor:pointer;transition:border-color .12s,background .12s}
.opt span:hover{border-color:var(--purple)}
.opt input:checked+span{border-color:var(--purple);background:var(--purple-tint);font-weight:700}
.opt input:focus-visible+span{outline:3px solid var(--purple);outline-offset:2px}
.check{display:flex;gap:12px;align-items:flex-start;font-size:.92rem;color:var(--ink-soft);line-height:1.45;margin:4px 0 22px}
.check input{width:22px;height:22px;flex:none;margin-top:1px;accent-color:var(--purple)}
.check a{color:var(--purple)}
.row-btns{display:flex;gap:10px}
.back{flex:none;background:transparent;border:1.5px solid #D9D5E0;border-radius:12px;padding:12px 18px;font:700 1rem var(--body);color:var(--ink-soft);cursor:pointer}
button.cta{cursor:pointer}
button.cta[disabled]{opacity:.7;cursor:wait}
.form-msg{margin:14px 0 0;font-size:.95rem;color:#B42318;text-align:center}
.trust{color:var(--ink-soft);font-size:.85rem;margin-top:-36px;padding-bottom:40px;text-align:center}

/* mulțumire + legal */
.ty{text-align:center;padding-block:56px 70px}
.ty h1{font:700 clamp(2rem,7vw,2.8rem)/1.1 var(--display);text-transform:uppercase;margin:12px 0 18px}
.ty p{max-width:52ch;margin:0 auto 1.1em;color:var(--ink-soft)}
.ty .card{text-align:left}
.legal{padding-block:50px 70px;font-size:1.05rem}
.legal h1{font:700 2.2rem/1.15 var(--display);text-transform:uppercase}
.legal h2{font:700 1.35rem/1.2 var(--display);text-transform:uppercase;margin:34px 0 10px}

/* cookies */
.cookie{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:60;max-width:520px;margin:0 auto;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:14px;padding:16px 18px;font-size:.9rem;line-height:1.45;box-shadow:0 10px 30px rgba(17,16,20,.12)}
.cookie p{margin:0 0 12px}
.cookie a{color:var(--purple)}
.cookie div{display:flex;gap:10px}
.cookie button{flex:1;font:700 .92rem var(--body);padding:11px 10px;border-radius:10px;cursor:pointer;border:1.5px solid #D9D5E0;background:transparent;color:var(--ink)}
.cookie button.ok{background:var(--purple);border-color:var(--purple);color:#fff}

@media (max-width:560px){body{font-size:1.1rem}.facts span{font-size:.75rem}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
.nw{white-space:nowrap}

.facts.four{grid-template-columns:repeat(4,1fr)}
@media (max-width:560px){.facts.four{grid-template-columns:1fr 1fr}.facts.four div:nth-child(3){border-left:0}.facts.four div:nth-child(n+3){border-top:1px solid var(--line)}}

/* ---------- landing pages din admin ---------- */
.checklist{list-style:none;padding:0!important}
.checklist li{position:relative;padding-left:30px!important}
.checklist li::before{content:"✓";position:absolute;left:0;top:0;color:var(--purple);font-weight:700}
.lp-img{margin:8px 0 1.4em}
.lp-img img{width:100%;border-radius:14px;border:1px solid var(--line)}
.lp-img figcaption{margin-top:8px;font-size:.92rem;color:var(--ink-soft);text-align:center}
.lp-video{margin:8px 0 1.4em}
.letter .section:first-child h2{margin-top:0}

/* ---------- blog ---------- */
.blog .wrap{padding-block:56px 72px}
.blog-head{text-align:center;margin-bottom:40px}
.blog-head h1{font:700 clamp(2.2rem,7vw,3.4rem)/1.05 var(--display);text-transform:uppercase;margin:6px 0 12px}
.blog-head p:last-child{color:var(--ink-soft);margin:0 auto;max-width:48ch}
.post-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.post-card a{display:flex;flex-direction:column;height:100%;text-decoration:none;color:inherit;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--bg);transition:border-color .15s,transform .15s}
.post-card a:hover{border-color:var(--purple);transform:translateY(-2px)}
.post-card img,.post-ph{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--purple-tint)}
.post-ph{display:grid;place-items:center;font:700 1.4rem/1.1 var(--display);text-transform:uppercase;color:var(--purple);padding:20px;text-align:center}
.post-body{padding:18px 20px 20px;display:flex;flex-direction:column;gap:8px;flex:1}
.post-body h3{font:700 1.3rem/1.2 var(--body);margin:0}
.post-body p{margin:0;color:var(--ink-soft);font-size:1rem}
.post-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:.85rem;color:var(--ink-soft)}
.post-meta a{color:var(--purple)}
.post-meta .src{font-weight:700;color:var(--purple);background:var(--purple-tint);padding:4px 8px;border-radius:6px}
.post-body .more{margin-top:auto;font-weight:700;color:var(--purple);font-size:.95rem}
.empty-blog{text-align:center;color:var(--ink-soft)}
.article .wrap{padding-block:48px 72px}
.article h1{font:700 clamp(2rem,6.4vw,3rem)/1.1 var(--display);text-transform:uppercase;margin:14px 0 16px;text-wrap:balance}
.article .lead{font-size:1.3rem;color:var(--ink-soft);margin:0 0 24px}
.article .cover{width:100%;border-radius:16px;margin:0 0 32px}
.article-body p{margin:0 0 1.2em}
.article-body h2{font:700 1.8rem/1.15 var(--display);text-transform:uppercase;margin:44px 0 16px}
.article-body a{color:var(--purple)}
