/* Landing Sections — shared layout + interaction rules. Tokens only; dark theme
   values come from :root, light from [data-theme="light"]. */
.ldg-row{display:flex;gap:23px;align-items:stretch;flex-wrap:wrap}
.ldg-row>*{flex:1 1 320px;min-width:0}
/* variant grids: N equal columns per variant, collapsing 4->2->1 and 3->2->1 */
.ldg-grid2,.ldg-grid3,.ldg-grid4{display:grid;gap:23px;align-items:stretch}
.ldg-grid2{grid-template-columns:repeat(2,1fr)}
.ldg-grid3{grid-template-columns:repeat(3,1fr)}
.ldg-grid4{grid-template-columns:repeat(4,1fr)}
.ldg-grid2>*,.ldg-grid3>*,.ldg-grid4>*{min-width:0}
@media (max-width:1023px){.ldg-grid3,.ldg-grid4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:639px){.ldg-grid2,.ldg-grid3,.ldg-grid4{grid-template-columns:1fr}}
.ldg-carousel{display:flex;gap:23px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px;scrollbar-width:thin;scrollbar-color:var(--surface-tag) transparent}
.ldg-carousel>*{flex:0 0 auto;scroll-snap-align:start}
.ldg-card{position:relative;border-radius:var(--r-30);background:var(--surface-card);box-shadow:var(--card-stroke);padding:var(--card-pad);box-sizing:border-box;transition:background var(--transition),box-shadow var(--transition)}
a.ldg-card{display:block;text-decoration:none;color:inherit;cursor:pointer}
.ldg-card-hover:hover{background:var(--surface-hover,#131617)}
[data-theme="light"] .ldg-card-hover:hover{background:var(--surface-hover)}
.ldg-copybtn{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 16px;border:none;border-radius:var(--r-16);cursor:pointer;background:var(--surface-tag);color:var(--text-ui);font-family:var(--font-core);font-size:var(--fs-ui);font-weight:var(--fw-medium);line-height:var(--lh-flat);transition:opacity var(--transition),background var(--transition)}
.ldg-copybtn:hover{opacity:.85}
.ldg-copybtn:active{opacity:.7}
.ldg-usebtn{display:inline-flex;align-items:center;height:34px;padding:0 16px;border:none;border-radius:var(--r-16);cursor:pointer;background:var(--action-primary);color:var(--text-on-action);font-family:var(--font-core);font-size:var(--fs-ui);font-weight:var(--fw-medium);line-height:var(--lh-flat);transition:opacity var(--transition)}
.ldg-usebtn:hover{opacity:.88}
.ldg-thumb:hover{opacity:1!important}
.ldg-tab{height:44px;padding:0 24px;border:none;border-radius:var(--r-30);cursor:pointer;background:var(--surface-card);box-shadow:var(--card-stroke);color:var(--text-secondary);font-family:var(--font-core);font-size:var(--fs-label);font-weight:var(--fw-medium);line-height:var(--lh-flat);white-space:nowrap;transition:background var(--transition),color var(--transition)}
.ldg-tab:hover{color:var(--text-primary)}
.ldg-tab[aria-selected="true"]{background:var(--action-primary);color:var(--text-on-action)}
.ldg-split{display:flex;gap:60px;align-items:flex-start;flex-wrap:wrap}
.ldg-split>*{flex:1 1 380px;min-width:0}
@media (max-width:767px){.ldg-row,.ldg-split,.ldg-grid2,.ldg-grid3,.ldg-grid4{gap:20px}.ldg-carousel{gap:20px}}
