/* Future Design Lab — editorial redesign (2026-08) */
.lab-root { background:#f5f2eb; color:#17211d; }
.lab-editorial { --ink:#17211d; --paper:#f5f2eb; --lime:#d7ef49; --orange:#f2811d; --line:rgba(23,33,29,.16); font-size:17px; line-height:1.75; overflow:hidden; }
.lab-ed-shell { width:min(1240px,calc(100% - 64px)); margin-inline:auto; }
.lab-editorial a { text-underline-offset:4px; }
.lab-ed-kicker { display:flex; align-items:center; gap:12px; margin:0 0 22px; color:#53615b; font-size:14px; font-weight:900; letter-spacing:.14em; line-height:1.3; }
.lab-ed-kicker span { width:34px; height:2px; background:currentColor; }
.lab-ed-kicker--light { color:var(--lime); }

.lab-ed-hero { padding:42px 0 58px; background:var(--paper); }
.lab-ed-hero__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(560px,1fr); gap:56px; align-items:center; }
.lab-ed-hero__copy h1 { max-width:700px; margin:0; color:var(--ink); font-size:clamp(42px,4vw,58px); font-weight:800; letter-spacing:-.055em; line-height:1.16; }
.lab-ed-hero__line { display:block; }
.lab-ed-hero__line--support { margin-top:.24em; font-size:.69em; letter-spacing:-.045em; line-height:1.28; }
.lab-ed-hero__copy h1 em { position:relative; color:inherit; font-style:normal; white-space:nowrap; z-index:0; }
.lab-ed-hero__copy h1 em::after { position:absolute; right:-.02em; bottom:.07em; left:-.02em; height:.22em; background:var(--lime); content:""; transform:rotate(-1deg); z-index:-1; }
.lab-ed-hero__break { display:none; }
.lab-ed-hero__lead { max-width:610px; margin:34px 0 0; color:#48534e; font-size:18px; font-weight:600; line-height:2; }
.lab-ed-hero__actions { display:flex; align-items:center; gap:30px; margin-top:38px; }
.lab-ed-button { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; min-height:54px; padding:13px 22px; border:1px solid transparent; border-radius:2px; font-size:15px; font-weight:900; line-height:1.4; text-decoration:none; transition:transform .2s,background .2s,color .2s,box-shadow .2s; }
.lab-ed-button:hover { transform:translateY(-2px); }
.lab-ed-button--primary { min-width:218px; background:var(--ink); color:#fff; box-shadow:7px 7px 0 var(--lime); }
.lab-ed-button--primary:hover { background:#26332d; color:#fff; box-shadow:9px 9px 0 var(--lime); }
.lab-ed-button--light { border-color:rgba(255,255,255,.65); color:#fff; }
.lab-ed-button--light:hover { background:#fff; color:#15201c; }
.lab-ed-text-link { color:var(--ink); font-size:15px; font-weight:900; text-decoration:none; }
.lab-ed-text-link:hover { text-decoration:underline; }
.lab-ed-hero__visual { position:relative; min-height:560px; }
.lab-ed-hero__visual::before { position:absolute; top:-22px; right:-28px; width:58%; height:62%; border:1px solid var(--orange); content:""; }
.lab-ed-hero__visual::after { position:absolute; bottom:-18px; left:-22px; width:98px; height:98px; background:var(--lime); content:""; }
.lab-ed-hero__visual img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; border-radius:0 80px 0 0; box-shadow:0 24px 60px rgba(40,50,45,.15); }
.lab-ed-hero__caption { position:absolute; right:-18px; bottom:34px; display:flex; align-items:center; gap:14px; min-width:214px; margin:0; padding:14px 18px; background:#fff; box-shadow:0 14px 36px rgba(10,20,15,.16); color:var(--ink); line-height:1.15; }
.lab-ed-hero__caption b { color:var(--orange); font-size:30px; }
.lab-ed-hero__caption span { font-size:12px; font-weight:900; letter-spacing:.1em; }

.lab-ed-nav-wrap { position:relative; z-index:2; border-block:1px solid var(--line); background:#fff; }
.lab-ed-nav-wrap .lab-cat-nav--editorial { display:grid; grid-template-columns:220px 1fr; align-items:center; gap:26px; width:min(1240px,calc(100% - 64px)); margin:0 auto; padding:20px 0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.lab-ed-nav-wrap .lab-cat-nav__head { margin:0; gap:0; }
.lab-ed-nav-wrap .lab-cat-nav__eyebrow { color:var(--orange); font-size:12px; }
.lab-ed-nav-wrap .lab-cat-nav__title { color:var(--ink); font-size:16px; }
.lab-ed-nav-wrap .lab-cat-nav__list { display:flex; justify-content:flex-end; gap:7px; }
.lab-ed-nav-wrap .lab-cat-nav__item { min-height:46px; padding:10px 17px; border:1px solid #dfe4df; border-radius:999px; color:var(--ink); }
.lab-ed-nav-wrap .lab-cat-nav__item:hover,.lab-ed-nav-wrap .lab-cat-nav__item:focus-visible { background:#f3f6ed; border-color:#aab4ad; transform:none; }
.lab-ed-nav-wrap .lab-cat-nav__item.is-active { background:var(--ink); border-color:var(--ink); box-shadow:none; }
.lab-ed-nav-wrap .lab-cat-nav__label { color:inherit; font-size:14px; }
.lab-ed-nav-wrap .lab-cat-nav__desc { display:none; }

.lab-ed-paths { padding:94px 0 106px; background:#eef0ea; }
.lab-ed-section-head--paths { margin-bottom:38px; }
.lab-ed-path-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.lab-ed-path { position:relative; display:flex; flex-direction:column; min-height:390px; padding:30px 30px 28px; overflow:hidden; border:1px solid rgba(23,33,29,.13); background:#fff; }
.lab-ed-path::before { position:absolute; top:0; right:0; width:70px; height:7px; background:var(--orange); content:""; }
.lab-ed-path--life::before { background:#4d9b87; }
.lab-ed-path--song { background:var(--ink); color:#fff; }
.lab-ed-path--song::before { background:var(--lime); }
.lab-ed-path__number { color:#7a847f; font-size:12px; font-weight:900; letter-spacing:.13em; }
.lab-ed-path--song .lab-ed-path__number { color:var(--lime); }
.lab-ed-path h3 { margin:58px 0 18px; color:var(--ink); font-size:clamp(25px,2.25vw,32px); font-weight:800; letter-spacing:-.035em; line-height:1.5; }
.lab-ed-path--song h3 { color:#fff; }
.lab-ed-path>p { margin:0 0 25px; color:#5c6761; font-size:15px; font-weight:550; line-height:1.85; }
.lab-ed-path--song>p { color:#c2cdc7; }
.lab-ed-path>a,.lab-ed-path__links { margin-top:auto; }
.lab-ed-path>a,.lab-ed-path__links a { display:flex; justify-content:space-between; gap:16px; padding-top:16px; border-top:1px solid rgba(23,33,29,.17); color:var(--ink); font-size:14px; font-weight:900; text-decoration:none; }
.lab-ed-path>a:hover,.lab-ed-path__links a:hover { text-decoration:underline; }
.lab-ed-path__links { display:grid; gap:12px; }
.lab-ed-path__links a { border-color:rgba(255,255,255,.2); color:#fff; }

.lab-ed-journal { padding:106px 0 118px; background:#fff; }
.lab-ed-section-head { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-bottom:48px; }
.lab-ed-section-head .lab-ed-kicker { margin-bottom:10px; }
.lab-ed-section-head h2 { margin:0; color:var(--ink); font-size:clamp(36px,4vw,58px); font-weight:800; letter-spacing:-.045em; line-height:1.25; }
.lab-ed-section-head>p { margin:0 0 4px; color:#68736d; font-size:15px; font-weight:600; line-height:1.8; }
.lab-ed-journal__grid { display:grid; grid-template-columns:minmax(0,1.18fr) minmax(390px,.82fr); gap:52px; align-items:start; }
.lab-ed-feature { display:block; min-width:0; color:inherit; text-decoration:none; }
.lab-ed-feature__image { position:relative; aspect-ratio:16/9; overflow:hidden; background:#eef0ed; }
.lab-ed-feature__image::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 62%,rgba(10,20,16,.34)); content:""; pointer-events:none; }
.lab-ed-feature__image img { width:100%; height:100%; object-fit:contain; transition:transform .45s; }
.lab-ed-feature:hover .lab-ed-feature__image img { transform:scale(1.025); }
.lab-ed-feature__index { position:absolute; bottom:18px; left:20px; z-index:1; color:#fff; font-size:13px; font-weight:900; letter-spacing:.14em; }
.lab-ed-feature__body { padding-top:24px; }
.lab-ed-meta { display:flex; align-items:center; gap:12px; color:#78817d; font-size:13px; font-weight:800; line-height:1.4; }
.lab-ed-meta span { color:#b25300; }
.lab-ed-meta time { white-space:nowrap; }
.lab-ed-feature h3 { margin:13px 0 14px; color:var(--ink); font-size:clamp(26px,2.5vw,38px); font-weight:800; letter-spacing:-.025em; line-height:1.5; }
.lab-ed-feature__body>p { margin:0; color:#5d6863; font-size:16px; font-weight:500; line-height:1.9; }
.lab-ed-read { display:inline-flex; gap:20px; margin-top:22px; color:var(--ink); font-size:15px; }
.lab-ed-feature:hover .lab-ed-read { text-decoration:underline; }
.lab-ed-journal-list { min-width:0; border-top:1px solid var(--line); }
.lab-ed-story { position:relative; display:grid; grid-template-columns:142px minmax(0,1fr); gap:20px; min-height:156px; padding:20px 42px 20px 0; border-bottom:1px solid var(--line); color:inherit; text-decoration:none; }
.lab-ed-story::after { position:absolute; right:0; bottom:21px; width:28px; height:1px; background:var(--ink); content:""; transition:width .2s; }
.lab-ed-story:hover::after { width:38px; }
.lab-ed-story__image { aspect-ratio:16/9; overflow:hidden; background:#eef0ed; }
.lab-ed-story__image img { width:100%; height:100%; object-fit:contain; transition:transform .35s; }
.lab-ed-story:hover img { transform:scale(1.04); }
.lab-ed-story__body { position:relative; min-width:0; }
.lab-ed-story h3 { display:-webkit-box; margin:11px 0 0; overflow:hidden; color:var(--ink); font-size:17px; font-weight:800; letter-spacing:-.01em; line-height:1.6; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.lab-ed-story__number { position:absolute; top:-5px; right:-32px; color:#c9d0cb; font-size:12px; font-weight:900; letter-spacing:.08em; }
.lab-ed-empty { padding:50px; background:#f4f5f2; color:#66716b; font-size:17px; text-align:center; }

.lab-ed-onesong { position:relative; padding:108px 0; overflow:hidden; background:#131b18; color:#fff; }
.lab-ed-onesong::before { position:absolute; top:-280px; left:-220px; width:620px; height:620px; border:1px solid rgba(215,239,73,.28); border-radius:50%; content:""; }
.lab-ed-onesong::after { position:absolute; right:-120px; bottom:-240px; width:520px; height:520px; background:radial-gradient(circle,rgba(242,129,29,.2),transparent 68%); content:""; }
.lab-ed-onesong__grid { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,.88fr) minmax(520px,1.12fr); gap:90px; align-items:center; }
.lab-ed-onesong__intro h2 { margin:0; color:#fff; font-size:clamp(38px,3.7vw,52px); font-weight:800; letter-spacing:-.045em; line-height:1.34; }
.lab-ed-onesong__intro h2 em { color:var(--lime); font-style:normal; }
.lab-ed-onesong__intro>p:not(.lab-ed-kicker) { max-width:570px; margin:26px 0 34px; color:#c3cdc8; font-size:17px; font-weight:500; line-height:2; }
.lab-ed-note { padding:34px 38px 38px; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.055); backdrop-filter:blur(8px); }
.lab-ed-note__head { display:flex; align-items:center; gap:14px; padding-bottom:24px; border-bottom:1px solid rgba(255,255,255,.18); }
.lab-ed-note__head span { padding:5px 9px; background:#41c9b4; color:#10201b; font-size:12px; font-weight:900; line-height:1.3; }
.lab-ed-note__head b { color:#fff; font-size:18px; }
.lab-ed-note__list>a { display:grid; grid-template-columns:38px minmax(0,1fr) auto 22px; gap:14px; align-items:center; min-height:108px; padding:20px 0; border-bottom:1px solid rgba(255,255,255,.14); color:#fff; text-decoration:none; }
.lab-ed-note__number { color:var(--lime); font-size:13px; font-weight:900; }
.lab-ed-note__title { font-size:17px; font-weight:800; line-height:1.6; }
.lab-ed-note__list time { color:#96a49d; font-size:13px; font-weight:700; white-space:nowrap; }
.lab-ed-note__arrow { font-size:20px; transition:transform .2s; }
.lab-ed-note__list>a:hover .lab-ed-note__title { text-decoration:underline; }
.lab-ed-note__list>a:hover .lab-ed-note__arrow { transform:translate(3px,-3px); }
.lab-ed-note__all { display:inline-flex; gap:24px; margin-top:26px; color:#fff; font-size:15px; font-weight:900; text-decoration:none; }
.lab-ed-note__all:hover { color:var(--lime); }
.lab-ed-song-brands { position:relative; z-index:1; margin-top:76px; padding-top:42px; border-top:1px solid rgba(255,255,255,.18); }
.lab-ed-song-brands__head { display:grid; grid-template-columns:minmax(0,1fr) minmax(500px,1.1fr); gap:60px; align-items:end; margin-bottom:30px; }
.lab-ed-song-brands__head>p { margin:0 0 5px; color:var(--lime); font-size:12px; font-weight:900; letter-spacing:.14em; }
.lab-ed-song-brands__head h3 { margin:0; color:#fff; font-size:clamp(27px,2.6vw,38px); font-weight:800; letter-spacing:-.035em; line-height:1.5; }
.lab-ed-song-brands__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.lab-ed-song-brand { display:flex; flex-direction:column; overflow:hidden; border:1px solid rgba(255,255,255,.2); background:#fff; color:var(--ink); text-decoration:none; transition:transform .25s,box-shadow .25s; }
.lab-ed-song-brand:hover { transform:translateY(-4px); box-shadow:0 22px 46px rgba(0,0,0,.25); }
.lab-ed-song-brand__logo { display:flex; align-items:center; justify-content:center; height:180px; padding:34px 62px; background:#fff; border-bottom:1px solid rgba(23,33,29,.12); }
.lab-ed-song-brand--personal .lab-ed-song-brand__logo { background:#fff7fb; }
.lab-ed-song-brand--company .lab-ed-song-brand__logo { background:#f5f8fb; }
.lab-ed-song-brand__logo img { display:block; width:auto; max-width:100%; max-height:105px; object-fit:contain; }
.lab-ed-song-brand--personal .lab-ed-song-brand__logo img { max-height:82px; }
.lab-ed-song-brand__body { display:flex; flex:1; flex-direction:column; padding:28px 30px 30px; }
.lab-ed-song-brand__body>span { color:#c32770; font-size:11px; font-weight:900; letter-spacing:.12em; }
.lab-ed-song-brand--company .lab-ed-song-brand__body>span { color:#087da9; }
.lab-ed-song-brand__body h4 { margin:12px 0 14px; color:var(--ink); font-size:clamp(24px,2.2vw,31px); font-weight:800; letter-spacing:-.03em; line-height:1.5; }
.lab-ed-song-brand__body p { margin:0 0 26px; color:#5b6761; font-size:15px; font-weight:550; line-height:1.9; }
.lab-ed-song-brand__body strong { display:flex; justify-content:space-between; gap:20px; margin-top:auto; padding-top:18px; border-top:1px solid rgba(23,33,29,.15); color:var(--ink); font-size:14px; font-weight:900; }
.lab-ed-onesong-gallery { position:relative; z-index:1; margin-top:76px; padding-top:42px; border-top:1px solid rgba(255,255,255,.18); }
.lab-ed-onesong-gallery__head { display:grid; grid-template-columns:minmax(0,1fr) minmax(360px,.72fr); gap:64px; align-items:end; margin-bottom:30px; }
.lab-ed-onesong-gallery__head>div>p { margin:0 0 9px; color:var(--lime); font-size:12px; font-weight:900; letter-spacing:.14em; }
.lab-ed-onesong-gallery__head h3 { margin:0; color:#fff; font-size:clamp(30px,3vw,42px); font-weight:800; letter-spacing:-.04em; line-height:1.45; }
.lab-ed-onesong-gallery__head>p { margin:0 0 4px; color:#b9c5bf; font-size:15px; font-weight:600; line-height:1.9; }
.lab-ed-onesong-gallery__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.lab-ed-onesong-scene { position:relative; display:block; aspect-ratio:1/1; overflow:hidden; background:#27342f; color:#fff; text-decoration:none; }
.lab-ed-onesong-scene::after { position:absolute; inset:0; background:linear-gradient(180deg,rgba(10,18,15,.06) 36%,rgba(10,18,15,.9) 100%); content:""; }
.lab-ed-onesong-scene img { width:100%; height:100%; object-fit:cover; transition:transform .5s,filter .4s; }
.lab-ed-onesong-scene:hover img { transform:scale(1.035); filter:saturate(1.08); }
.lab-ed-onesong-scene__step { position:absolute; top:20px; left:20px; z-index:1; padding:5px 8px; background:rgba(16,28,23,.78); color:var(--lime); font-size:11px; font-weight:900; letter-spacing:.12em; backdrop-filter:blur(6px); }
.lab-ed-onesong-scene strong { position:absolute; right:52px; bottom:22px; left:20px; z-index:1; color:#fff; font-size:clamp(19px,1.8vw,25px); font-weight:800; line-height:1.55; }
.lab-ed-onesong-scene>b { position:absolute; right:20px; bottom:22px; z-index:1; color:#fff; font-size:22px; }
.lab-ed-onesong-gallery__footer { display:flex; justify-content:space-between; align-items:center; gap:24px; padding:22px 24px; border:1px solid rgba(255,255,255,.17); border-top:0; background:rgba(255,255,255,.055); }
.lab-ed-instagram-id { display:flex; align-items:center; gap:12px; }
.lab-ed-instagram-id span { color:#ff7ac6; font-size:14px; font-weight:900; }
.lab-ed-instagram-id strong { color:#fff; font-size:16px; }
.lab-ed-instagram-id small { padding:3px 8px; border:1px solid rgba(255,255,255,.22); color:#aebbb4; font-size:10px; font-weight:800; }
.lab-ed-onesong-gallery__footer>a { display:inline-flex; gap:18px; color:#fff; font-size:14px; font-weight:900; text-decoration:none; }
.lab-ed-onesong-gallery__footer>a:hover { color:#ff7ac6; }
.lab-ed-onesong-social { position:relative; z-index:1; display:grid; grid-template-columns:270px minmax(0,1fr); gap:48px; align-items:end; margin-top:64px; padding-top:32px; border-top:1px solid rgba(255,255,255,.18); }
.lab-ed-onesong-social__copy p { margin:0 0 8px; color:var(--lime); font-size:12px; font-weight:900; letter-spacing:.14em; }
.lab-ed-onesong-social__copy h3 { margin:0; color:#fff; font-size:21px; font-weight:800; line-height:1.6; }
.lab-ed-onesong-social__links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.lab-ed-social-link { --social:#fff; position:relative; display:flex; flex-direction:column; justify-content:center; min-height:112px; padding:18px 42px 18px 18px; border:1px solid rgba(255,255,255,.15); background:rgba(255,255,255,.055); color:#fff; text-decoration:none; transition:transform .2s,border-color .2s,background .2s; }
.lab-ed-social-link::before { position:absolute; top:-1px; left:-1px; width:calc(100% + 2px); height:3px; background:var(--social); content:""; }
.lab-ed-social-link:hover { transform:translateY(-3px); border-color:var(--social); background:rgba(255,255,255,.09); }
.lab-ed-social-link>span { color:var(--social); font-size:17px; font-weight:900; }
.lab-ed-social-link small { margin-top:5px; color:#b8c3bd; font-size:13px; font-weight:700; line-height:1.5; }
.lab-ed-social-link b { position:absolute; top:18px; right:17px; font-size:18px; }
.lab-ed-social-link--instagram { --social:#ff7ac6; }
.lab-ed-social-link--youtube { --social:#ff6464; }
.lab-ed-social-link--note { --social:#58d7c3; }
.lab-ed-social-link--site { --social:var(--lime); }

.lab-ed-channels { padding:112px 0 124px; background:var(--paper); }
.lab-ed-section-head--channels { margin-bottom:42px; }
.lab-ed-channel-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.lab-ed-channel { position:relative; display:flex; flex-direction:column; min-height:520px; overflow:hidden; border:1px solid var(--line); background:#fff; color:var(--ink); text-decoration:none; transition:transform .25s,box-shadow .25s; }
.lab-ed-channel:hover { transform:translateY(-5px); box-shadow:0 22px 45px rgba(33,43,38,.14); }
.lab-ed-channel__image { position:relative; aspect-ratio:16/10; overflow:hidden; background:#dce2dd; }
.lab-ed-channel__image::after { position:absolute; inset:0; background:linear-gradient(180deg,transparent 48%,rgba(10,20,16,.56)); content:""; }
.lab-ed-channel__image img { width:100%; height:100%; object-fit:cover; transition:transform .45s; }
.lab-ed-channel--voice .lab-ed-channel__image img { object-position:center 27%; }
.lab-ed-channel--thought .lab-ed-channel__image img { object-position:center 33%; }
.lab-ed-channel:hover .lab-ed-channel__image img { transform:scale(1.035); }
.lab-ed-channel__image>span { position:absolute; bottom:15px; left:17px; z-index:1; color:#fff; font-size:11px; font-weight:900; letter-spacing:.12em; }
.lab-ed-channel__body { display:flex; flex:1; flex-direction:column; padding:24px 25px 25px; }
.lab-ed-channel__type { color:#b25300; font-size:12px; font-weight:900; letter-spacing:.12em; }
.lab-ed-channel--video .lab-ed-channel__type { color:#a11e1e; }
.lab-ed-channel--thought .lab-ed-channel__type { color:#405b83; }
.lab-ed-channel h3 { margin:10px 0 11px; font-size:clamp(25px,2.1vw,31px); font-weight:800; letter-spacing:-.03em; line-height:1.4; overflow-wrap:anywhere; }
.lab-ed-channel__body>p { margin:0; color:#5d6863; font-size:14px; font-weight:600; line-height:1.75; }
.lab-ed-channel__body>strong { display:flex; justify-content:space-between; gap:18px; margin-top:auto; padding-top:24px; color:var(--ink); font-size:14px; font-weight:900; }
.lab-ed-channel__body>strong b { font-size:19px; }

.lab-ed-cta { padding:104px 0 112px; background:#fff; text-align:center; }
.lab-ed-cta__inner { display:flex; flex-direction:column; align-items:center; }
.lab-ed-cta .lab-ed-kicker { margin-bottom:18px; }
.lab-ed-cta h2 { margin:0; color:var(--ink); font-size:clamp(40px,5.2vw,70px); font-weight:800; letter-spacing:-.055em; line-height:1.25; }
.lab-ed-cta__inner>p:not(.lab-ed-kicker) { margin:27px 0 34px; color:#5f6a65; font-size:17px; font-weight:600; line-height:1.9; }

.lab-ed-button:focus-visible,.lab-ed-text-link:focus-visible,.lab-ed-story:focus-visible,.lab-ed-feature:focus-visible,.lab-ed-note a:focus-visible,.lab-ed-channel:focus-visible,.lab-ed-path a:focus-visible { outline:3px solid var(--orange); outline-offset:5px; }

@media (max-width:1120px) {
  .lab-ed-hero__grid { grid-template-columns:1fr 1fr; gap:42px; }
  .lab-ed-hero__visual { min-height:500px; }
  .lab-ed-nav-wrap .lab-cat-nav--editorial { grid-template-columns:180px 1fr; }
  .lab-ed-nav-wrap .lab-cat-nav__list { flex-wrap:wrap; }
  .lab-ed-path { padding-inline:24px; }
  .lab-ed-journal__grid { grid-template-columns:minmax(0,1fr); gap:48px; }
  .lab-ed-journal-list { display:grid; grid-template-columns:1fr 1fr; }
  .lab-ed-story:nth-child(odd) { border-right:1px solid var(--line); padding-right:54px; }
  .lab-ed-story:nth-child(even) { padding-left:24px; }
  .lab-ed-onesong__grid { grid-template-columns:1fr; gap:54px; }
}

@media (max-width:760px) {
  .lab-editorial { font-size:16px; }
  .lab-ed-shell { width:min(100% - 40px,1240px); }
  .lab-ed-hero { padding:96px 0 40px; }
  .lab-ed-hero__grid { display:flex; flex-direction:column; align-items:stretch; gap:46px; }
  .lab-ed-hero__copy { width:100%; min-width:0; }
  .lab-ed-hero__copy h1 { font-size:clamp(38px,11.4vw,56px); line-height:1.22; }
  .lab-ed-hero__line--support { font-size:.65em; line-height:1.4; }
  .lab-ed-hero__break { display:block; }
  .lab-ed-hero__lead { margin-top:26px; font-size:16px; line-height:1.9; }
  .lab-ed-hero__actions { align-items:flex-start; flex-direction:column; gap:24px; margin-top:30px; }
  .lab-ed-button--primary { min-width:210px; }
  .lab-ed-hero__visual { width:100%; min-height:0; aspect-ratio:4/5; }
  .lab-ed-hero__visual::before { top:-13px; right:-13px; }
  .lab-ed-hero__visual::after { bottom:-10px; left:-10px; width:70px; height:70px; }
  .lab-ed-hero__visual img { border-radius:0 44px 0 0; }
  .lab-ed-hero__caption { right:-5px; bottom:22px; min-width:185px; }
  .lab-ed-nav-wrap .lab-cat-nav--editorial { display:block; width:calc(100% - 40px); padding:20px 0; }
  .lab-ed-nav-wrap .lab-cat-nav__head { margin-bottom:14px; }
  .lab-ed-nav-wrap .lab-cat-nav__list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .lab-ed-nav-wrap .lab-cat-nav__item { min-height:44px; padding:9px 12px; border-radius:12px; }
  .lab-ed-nav-wrap .lab-cat-nav__item:first-child { grid-column:1 / -1; }
  .lab-ed-paths { padding:72px 0 82px; }
  .lab-ed-path-grid { grid-template-columns:1fr; gap:10px; }
  .lab-ed-path { min-height:350px; padding:26px 24px; }
  .lab-ed-path h3 { margin-top:44px; font-size:29px; }
  .lab-ed-journal,.lab-ed-channels { padding:76px 0 84px; }
  .lab-ed-section-head { display:block; margin-bottom:34px; }
  .lab-ed-section-head h2 { font-size:38px; }
  .lab-ed-section-head>p { margin-top:18px; font-size:15px; }
  .lab-ed-section-head>p br { display:none; }
  .lab-ed-feature__image { aspect-ratio:16/9; }
  .lab-ed-feature h3 { font-size:26px; }
  .lab-ed-feature__body>p { font-size:15px; }
  .lab-ed-journal-list { display:block; }
  .lab-ed-story,.lab-ed-story:nth-child(odd),.lab-ed-story:nth-child(even) { grid-template-columns:112px minmax(0,1fr); gap:16px; min-height:142px; padding:18px 32px 18px 0; border-right:0; }
  .lab-ed-story h3 { margin-top:8px; font-size:16px; line-height:1.55; -webkit-line-clamp:3; }
  .lab-ed-story__number { right:-23px; }
  .lab-ed-meta { align-items:flex-start; flex-direction:column; gap:4px; font-size:13px; }
  .lab-ed-feature .lab-ed-meta { flex-direction:row; }
  .lab-ed-onesong { padding:78px 0 84px; }
  .lab-ed-onesong__intro h2 { font-size:39px; }
  .lab-ed-onesong__intro>p:not(.lab-ed-kicker) { font-size:16px; }
  .lab-ed-note { padding:26px 20px 28px; }
  .lab-ed-note__head { align-items:flex-start; flex-direction:column; }
  .lab-ed-note__list>a { grid-template-columns:28px minmax(0,1fr) 20px; min-height:0; }
  .lab-ed-note__title { font-size:16px; }
  .lab-ed-note__list time { grid-column:2; }
  .lab-ed-note__arrow { grid-column:3; grid-row:1 / span 2; }
  .lab-ed-song-brands { margin-top:54px; padding-top:32px; }
  .lab-ed-song-brands__head { grid-template-columns:1fr; gap:9px; margin-bottom:24px; }
  .lab-ed-song-brands__head h3 { font-size:30px; }
  .lab-ed-song-brands__grid { grid-template-columns:1fr; gap:10px; }
  .lab-ed-song-brand__logo { height:145px; padding:30px 38px; }
  .lab-ed-song-brand__body { padding:24px 22px 26px; }
  .lab-ed-song-brand__body h4 { font-size:25px; }
  .lab-ed-onesong-gallery { margin-top:54px; padding-top:32px; }
  .lab-ed-onesong-gallery__head { grid-template-columns:1fr; gap:18px; margin-bottom:24px; }
  .lab-ed-onesong-gallery__head h3 { font-size:32px; }
  .lab-ed-onesong-gallery__head>p { font-size:14px; }
  .lab-ed-onesong-gallery__grid { grid-template-columns:1fr; gap:10px; }
  .lab-ed-onesong-gallery__footer { align-items:flex-start; flex-direction:column; padding:20px; }
  .lab-ed-instagram-id { flex-wrap:wrap; }
  .lab-ed-onesong-gallery__footer>a { line-height:1.65; }
  .lab-ed-onesong-social { grid-template-columns:1fr; gap:24px; margin-top:46px; padding-top:28px; }
  .lab-ed-onesong-social__links { grid-template-columns:1fr; }
  .lab-ed-social-link { min-height:82px; }
  .lab-ed-channel-grid { grid-template-columns:1fr; }
  .lab-ed-channel { min-height:0; }
  .lab-ed-channel h3 { font-size:28px; }
  .lab-ed-cta { padding:78px 0 88px; }
  .lab-ed-cta h2 { font-size:34px; letter-spacing:-.075em; }
  .lab-ed-cta__inner>p:not(.lab-ed-kicker) { font-size:16px; }
}

@media (max-width:390px) {
  .lab-ed-story,.lab-ed-story:nth-child(odd),.lab-ed-story:nth-child(even) { grid-template-columns:92px minmax(0,1fr); padding-right:24px; }
  .lab-ed-story__number { display:none; }
}

@media (prefers-reduced-motion:reduce) {
  .lab-editorial *,.lab-editorial *::before,.lab-editorial *::after { scroll-behavior:auto!important; transition-duration:.001ms!important; }
}
